dt-bindings: Add SMMU proxy bindings
Add the bindings for the SMMU proxy driver. Change-Id: I8686cdeb5a3066834c8f6b154190cf4956809852 Signed-off-by: songrui <quic_songrui@quicinc.com>
This commit is contained in:
54
bindings/arm/msm/smmu-proxy.yaml
Normal file
54
bindings/arm/msm/smmu-proxy.yaml
Normal file
@@ -0,0 +1,54 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/arm/msm/smmu-proxy.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: SMMU Proxy Driver
|
||||
|
||||
maintainers:
|
||||
- Chris Goldsworthy <cgoldswo@quicinc.com>
|
||||
|
||||
description: |+
|
||||
The SMMU proxy driver allows DMA-BUFs on HLOS to be lent to the TVM and mapped
|
||||
into an S1 context bank of the client's choosing on the TVM. The IOVA of the
|
||||
mapped DMA-BUF is sent back to HLOS, which the client then passes to their
|
||||
hardware as they did before.
|
||||
|
||||
The driver is split between HLOS and the TVM. Communication between the two
|
||||
sides is facilitated by a message queue, such that the TVM has a single
|
||||
message handling thread. The proxy driver directly manages the context banks
|
||||
of the client devices, as there is no client code to manage the mappings
|
||||
of the devices on the TVM.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
- enum:
|
||||
- smmu-proxy-sender
|
||||
- smmu-proxy-receiver
|
||||
- smmu-proxy-cb
|
||||
iommus:
|
||||
maxItems: 1
|
||||
description: iommus tag in form of <&apps_smmu [SID] [MASK]>, such that
|
||||
[SID] will be for one of the relevant client context banks.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
smmu-proxy {
|
||||
compatible = "smmu-proxy-sender";
|
||||
};
|
||||
- |
|
||||
smmu-proxy {
|
||||
compatible = "smmu-proxy-receiver";
|
||||
};
|
||||
smmu-proxy-camera-cb {
|
||||
compatible = "smmu-proxy-cb";
|
||||
iommus = <&apps_smmu 0x1000 0x0>;
|
||||
};
|
||||
|
Reference in New Issue
Block a user