~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/crypto/fsl-sec6.txt

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 SEC 6 is as Freescale's Cryptographic Accelerator and Assurance Module (CAAM).
  2 Currently Freescale powerpc chip C29X is embedded with SEC 6.
  3 SEC 6 device tree binding include:
  4    -SEC 6 Node
  5    -Job Ring Node
  6    -Full Example
  7 
  8 =====================================================================
  9 SEC 6 Node
 10 
 11 Description
 12 
 13     Node defines the base address of the SEC 6 block.
 14     This block specifies the address range of all global
 15     configuration registers for the SEC 6 block.
 16     For example, In C293, we could see three SEC 6 node.
 17 
 18 PROPERTIES
 19 
 20    - compatible
 21       Usage: required
 22       Value type: <string>
 23       Definition: Must include "fsl,sec-v6.0".
 24 
 25    - fsl,sec-era
 26       Usage: optional
 27       Value type: <u32>
 28       Definition: A standard property. Define the 'ERA' of the SEC
 29           device.
 30 
 31    - #address-cells
 32        Usage: required
 33        Value type: <u32>
 34        Definition: A standard property.  Defines the number of cells
 35            for representing physical addresses in child nodes.
 36 
 37    - #size-cells
 38        Usage: required
 39        Value type: <u32>
 40        Definition: A standard property.  Defines the number of cells
 41            for representing the size of physical addresses in
 42            child nodes.
 43 
 44    - reg
 45       Usage: required
 46       Value type: <prop-encoded-array>
 47       Definition: A standard property.  Specifies the physical
 48           address and length of the SEC 6 configuration registers.
 49 
 50    - ranges
 51        Usage: required
 52        Value type: <prop-encoded-array>
 53        Definition: A standard property.  Specifies the physical address
 54            range of the SEC 6.0 register space (-SNVS not included).  A
 55            triplet that includes the child address, parent address, &
 56            length.
 57 
 58    Note: All other standard properties (see the Devicetree Specification)
 59    are allowed but are optional.
 60 
 61 EXAMPLE
 62         crypto@a0000 {
 63                 compatible = "fsl,sec-v6.0";
 64                 fsl,sec-era = <6>;
 65                 #address-cells = <1>;
 66                 #size-cells = <1>;
 67                 reg = <0xa0000 0x20000>;
 68                 ranges = <0 0xa0000 0x20000>;
 69         };
 70 
 71 =====================================================================
 72 Job Ring (JR) Node
 73 
 74     Child of the crypto node defines data processing interface to SEC 6
 75     across the peripheral bus for purposes of processing
 76     cryptographic descriptors. The specified address
 77     range can be made visible to one (or more) cores.
 78     The interrupt defined for this node is controlled within
 79     the address range of this node.
 80 
 81   - compatible
 82       Usage: required
 83       Value type: <string>
 84       Definition: Must include "fsl,sec-v6.0-job-ring".
 85 
 86   - reg
 87       Usage: required
 88       Value type: <prop-encoded-array>
 89       Definition: Specifies a two JR parameters:  an offset from
 90            the parent physical address and the length the JR registers.
 91 
 92    - interrupts
 93       Usage: required
 94       Value type: <prop_encoded-array>
 95       Definition:  Specifies the interrupts generated by this
 96            device.  The value of the interrupts property
 97            consists of one interrupt specifier. The format
 98            of the specifier is defined by the binding document
 99            describing the node's interrupt parent.
100 
101 EXAMPLE
102         jr@1000 {
103                 compatible = "fsl,sec-v6.0-job-ring";
104                 reg = <0x1000 0x1000>;
105                 interrupts = <49 2 0 0>;
106         };
107 
108 ===================================================================
109 Full Example
110 
111 Since some chips may contain more than one SEC, the dtsi contains
112 only the node contents, not the node itself.  A chip using the SEC
113 should include the dtsi inside each SEC node.  Example:
114 
115 In qoriq-sec6.0.dtsi:
116 
117         compatible = "fsl,sec-v6.0";
118         fsl,sec-era = <6>;
119         #address-cells = <1>;
120         #size-cells = <1>;
121 
122         jr@1000 {
123                 compatible = "fsl,sec-v6.0-job-ring",
124                              "fsl,sec-v5.2-job-ring",
125                              "fsl,sec-v5.0-job-ring",
126                              "fsl,sec-v4.4-job-ring",
127                              "fsl,sec-v4.0-job-ring";
128                 reg        = <0x1000 0x1000>;
129         };
130 
131         jr@2000 {
132                 compatible = "fsl,sec-v6.0-job-ring",
133                              "fsl,sec-v5.2-job-ring",
134                              "fsl,sec-v5.0-job-ring",
135                              "fsl,sec-v4.4-job-ring",
136                              "fsl,sec-v4.0-job-ring";
137                 reg        = <0x2000 0x1000>;
138         };
139 
140 In the C293 device tree, we add the include of public property:
141 
142         crypto@a0000 {
143                 /include/ "qoriq-sec6.0.dtsi"
144         }
145 
146         crypto@a0000 {
147                 reg = <0xa0000 0x20000>;
148                 ranges = <0 0xa0000 0x20000>;
149 
150                 jr@1000 {
151                         interrupts = <49 2 0 0>;
152                 };
153 
154                 jr@2000 {
155                         interrupts = <50 2 0 0>;
156                 };
157         };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php