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