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

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/firmware/fsl,scu.yaml

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 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/firmware/fsl,scu.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: NXP i.MX System Controller Firmware (SCFW)
  8 
  9 maintainers:
 10   - Dong Aisheng <aisheng.dong@nxp.com>
 11 
 12 description:
 13   The System Controller Firmware (SCFW) is a low-level system function
 14   which runs on a dedicated Cortex-M core to provide power, clock, and
 15   resource management. It exists on some i.MX8 processors. e.g. i.MX8QM
 16   (QM, QP), and i.MX8QX (QXP, DX).
 17   The AP communicates with the SC using a multi-ported MU module found
 18   in the LSIO subsystem. The current definition of this MU module provides
 19   5 remote AP connections to the SC to support up to 5 execution environments
 20   (TZ, HV, standard Linux, etc.). The SC side of this MU module interfaces
 21   with the LSIO DSC IP bus. The SC firmware will communicate with this MU
 22   using the MSI bus.
 23 
 24 properties:
 25   compatible:
 26     const: fsl,imx-scu
 27 
 28   clock-controller:
 29     description:
 30       Clock controller node that provides the clocks controlled by the SCU
 31     $ref: /schemas/clock/fsl,scu-clk.yaml
 32 
 33   gpio:
 34     description:
 35       Control the GPIO PINs on SCU domain over the firmware APIs
 36     $ref: /schemas/gpio/fsl,imx8qxp-sc-gpio.yaml
 37 
 38   ocotp:
 39     description:
 40       OCOTP controller node provided by the SCU
 41     $ref: /schemas/nvmem/fsl,scu-ocotp.yaml
 42 
 43   keys:
 44     description:
 45       Keys provided by the SCU
 46     $ref: /schemas/input/fsl,scu-key.yaml
 47 
 48   mboxes:
 49     description:
 50       A list of phandles of TX MU channels followed by a list of phandles of
 51       RX MU channels. The list may include at the end one more optional MU
 52       channel for general interrupt. The number of expected tx and rx
 53       channels is 1 TX and 1 RX channels if MU instance is "fsl,imx8-mu-scu"
 54       compatible, 4 TX and 4 RX channels otherwise. All MU channels must be
 55       within the same MU instance. Cross instances are not allowed. The MU
 56       instance can only be one of LSIO MU0~M4 for imx8qxp and imx8qm. Users
 57       need to ensure that one is used that does not conflict with other
 58       execution environments such as ATF.
 59     oneOf:
 60       - items:
 61           - description: TX0 MU channel
 62           - description: RX0 MU channel
 63       - items:
 64           - description: TX0 MU channel
 65           - description: RX0 MU channel
 66           - description: optional MU channel for general interrupt
 67       - items:
 68           - description: TX0 MU channel
 69           - description: TX1 MU channel
 70           - description: TX2 MU channel
 71           - description: TX3 MU channel
 72           - description: RX0 MU channel
 73           - description: RX1 MU channel
 74           - description: RX2 MU channel
 75           - description: RX3 MU channel
 76       - items:
 77           - description: TX0 MU channel
 78           - description: TX1 MU channel
 79           - description: TX2 MU channel
 80           - description: TX3 MU channel
 81           - description: RX0 MU channel
 82           - description: RX1 MU channel
 83           - description: RX2 MU channel
 84           - description: RX3 MU channel
 85           - description: optional MU channel for general interrupt
 86 
 87   mbox-names:
 88     oneOf:
 89       - items:
 90           - const: tx0
 91           - const: rx0
 92       - items:
 93           - const: tx0
 94           - const: rx0
 95           - const: gip3
 96       - items:
 97           - const: tx0
 98           - const: tx1
 99           - const: tx2
100           - const: tx3
101           - const: rx0
102           - const: rx1
103           - const: rx2
104           - const: rx3
105       - items:
106           - const: tx0
107           - const: tx1
108           - const: tx2
109           - const: tx3
110           - const: rx0
111           - const: rx1
112           - const: rx2
113           - const: rx3
114           - const: gip3
115 
116   pinctrl:
117     description:
118       Pin controller provided by the SCU
119     $ref: /schemas/pinctrl/fsl,scu-pinctrl.yaml
120 
121   power-controller:
122     description:
123       Power domains controller node that provides the power domains
124       controlled by the SCU
125     $ref: /schemas/power/fsl,scu-pd.yaml
126 
127   rtc:
128     description:
129       RTC controller provided by the SCU
130     $ref: /schemas/rtc/fsl,scu-rtc.yaml
131 
132   thermal-sensor:
133     description:
134       Thermal sensor provided by the SCU
135     $ref: /schemas/thermal/fsl,scu-thermal.yaml
136 
137   watchdog:
138     description:
139       Watchdog controller provided by the SCU
140     $ref: /schemas/watchdog/fsl,scu-wdt.yaml
141 
142 required:
143   - compatible
144   - mbox-names
145   - mboxes
146 
147 additionalProperties: false
148 
149 examples:
150   - |
151     #include <dt-bindings/firmware/imx/rsrc.h>
152     #include <dt-bindings/input/input.h>
153     #include <dt-bindings/pinctrl/pads-imx8qxp.h>
154 
155     firmware {
156         system-controller {
157             compatible = "fsl,imx-scu";
158             mbox-names = "tx0", "tx1", "tx2", "tx3",
159                          "rx0", "rx1", "rx2", "rx3",
160                          "gip3";
161             mboxes = <&lsio_mu1 0 0 &lsio_mu1 0 1 &lsio_mu1 0 2 &lsio_mu1 0 3
162                       &lsio_mu1 1 0 &lsio_mu1 1 1 &lsio_mu1 1 2 &lsio_mu1 1 3
163                       &lsio_mu1 3 3>;
164 
165             clock-controller {
166                 compatible = "fsl,imx8qxp-clk", "fsl,scu-clk";
167                 #clock-cells = <2>;
168             };
169 
170             pinctrl {
171                 compatible = "fsl,imx8qxp-iomuxc";
172 
173                 pinctrl_lpuart0: lpuart0grp {
174                     fsl,pins = <
175                         IMX8QXP_UART0_RX_ADMA_UART0_RX   0x06000020
176                         IMX8QXP_UART0_TX_ADMA_UART0_TX   0x06000020
177                     >;
178                 };
179             };
180 
181             ocotp {
182                 compatible = "fsl,imx8qxp-scu-ocotp";
183                 #address-cells = <1>;
184                 #size-cells = <1>;
185 
186                 fec_mac0: mac@2c4 {
187                     reg = <0x2c4 6>;
188                 };
189             };
190 
191             power-controller {
192                 compatible = "fsl,imx8qxp-scu-pd", "fsl,scu-pd";
193                 #power-domain-cells = <1>;
194             };
195 
196             rtc {
197                 compatible = "fsl,imx8qxp-sc-rtc";
198             };
199 
200             keys {
201                 compatible = "fsl,imx8qxp-sc-key", "fsl,imx-sc-key";
202                 linux,keycodes = <KEY_POWER>;
203             };
204 
205             watchdog {
206                 compatible = "fsl,imx8qxp-sc-wdt", "fsl,imx-sc-wdt";
207                 timeout-sec = <60>;
208             };
209 
210             thermal-sensor {
211                 compatible = "fsl,imx8qxp-sc-thermal", "fsl,imx-sc-thermal";
212                 #thermal-sensor-cells = <1>;
213             };
214         };
215     };

~ [ 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