Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/bus/xlnx,versal-net-cdx.yaml
26308 views
1
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2
%YAML 1.2
3
---
4
$id: http://devicetree.org/schemas/bus/xlnx,versal-net-cdx.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: AMD CDX bus controller
8
9
description: |
10
CDX bus controller for AMD devices is implemented to dynamically
11
detect CDX bus and devices using the firmware.
12
The CDX bus manages multiple FPGA based hardware devices, which
13
can support network, crypto or any other specialized type of
14
devices. These FPGA based devices can be added/modified dynamically
15
on run-time.
16
17
All devices on the CDX bus will have a unique streamid (for IOMMU)
18
and a unique device ID (for MSI) corresponding to a requestor ID
19
(one to one associated with the device). The streamid and deviceid
20
are used to configure SMMU and GIC-ITS respectively.
21
22
iommu-map property is used to define the set of stream ids
23
corresponding to each device and the associated IOMMU.
24
25
The MSI writes are accompanied by sideband data (Device ID).
26
The msi-map property is used to associate the devices with the
27
device ID as well as the associated ITS controller.
28
29
rproc property (xlnx,rproc) is used to identify the remote processor
30
with which APU (Application Processor Unit) interacts to find out
31
the bus and device configuration.
32
33
maintainers:
34
- Nipun Gupta <nipun.gupta@amd.com>
35
- Nikhil Agarwal <nikhil.agarwal@amd.com>
36
37
properties:
38
compatible:
39
const: xlnx,versal-net-cdx
40
41
iommu-map: true
42
43
msi-map: true
44
45
xlnx,rproc:
46
$ref: /schemas/types.yaml#/definitions/phandle
47
description:
48
phandle to the remoteproc_r5 rproc node using which APU interacts
49
with remote processor.
50
51
ranges: true
52
53
"#address-cells":
54
enum: [1, 2]
55
56
"#size-cells":
57
enum: [1, 2]
58
59
required:
60
- compatible
61
- iommu-map
62
- msi-map
63
- xlnx,rproc
64
- ranges
65
- "#address-cells"
66
- "#size-cells"
67
68
additionalProperties: false
69
70
examples:
71
- |
72
cdx {
73
compatible = "xlnx,versal-net-cdx";
74
#address-cells = <1>;
75
#size-cells = <1>;
76
/* define map for RIDs 250-259 */
77
iommu-map = <250 &smmu 250 10>;
78
/* define msi map for RIDs 250-259 */
79
msi-map = <250 &its 250 10>;
80
xlnx,rproc = <&remoteproc_r5>;
81
ranges;
82
};
83
84