202 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/memory-controllers/fsl/fsl,imx-weim.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: i.MX Wireless External Interface Module (WEIM)8 9maintainers:10 - Shawn Guo <shawnguo@kernel.org>11 - Sascha Hauer <s.hauer@pengutronix.de>12 13description:14 The term "wireless" does not imply that the WEIM is literally an interface15 without wires. It simply means that this module was originally designed for16 wireless and mobile applications that use low-power technology. The actual17 devices are instantiated from the child nodes of a WEIM node.18 19properties:20 $nodename:21 pattern: "^memory-controller@[0-9a-f]+$"22 23 compatible:24 oneOf:25 - enum:26 - fsl,imx1-weim27 - fsl,imx27-weim28 - fsl,imx50-weim29 - fsl,imx51-weim30 - fsl,imx6q-weim31 - items:32 - enum:33 - fsl,imx31-weim34 - fsl,imx35-weim35 - const: fsl,imx27-weim36 - items:37 - enum:38 - fsl,imx6sx-weim39 - fsl,imx6ul-weim40 - const: fsl,imx6q-weim41 42 "#address-cells":43 const: 244 45 "#size-cells":46 const: 147 48 reg:49 maxItems: 150 51 clocks:52 maxItems: 153 54 interrupts:55 maxItems: 156 57 ranges: true58 59 fsl,weim-cs-gpr:60 $ref: /schemas/types.yaml#/definitions/phandle61 description: |62 Phandle to the system General Purpose Register controller that contains63 WEIM CS GPR register, e.g. IOMUXC_GPR1 on i.MX6Q. IOMUXC_GPR1[11:0]64 should be set up as one of the following 4 possible values depending on65 the CS space configuration.66 67 IOMUXC_GPR1[11:0] CS0 CS1 CS2 CS368 ---------------------------------------------69 05 128M 0M 0M 0M70 033 64M 64M 0M 0M71 0113 64M 32M 32M 0M72 01111 32M 32M 32M 32M73 74 In case that the property is absent, the reset value or what bootloader75 sets up in IOMUXC_GPR1[11:0] will be used.76 77 fsl,burst-clk-enable:78 type: boolean79 description:80 The presence of this property indicates that the weim bus should operate81 in Burst Clock Mode.82 83 fsl,continuous-burst-clk:84 type: boolean85 description:86 Make Burst Clock to output continuous clock. Without this option Burst87 Clock will output clock only when necessary.88 89patternProperties:90 "^.*@[0-7],[0-9a-f]+$":91 type: object92 description: Devices attached to chip selects are represented as subnodes.93 $ref: fsl,imx-weim-peripherals.yaml94 additionalProperties: true95 required:96 - fsl,weim-cs-timing97 98required:99 - compatible100 - reg101 - clocks102 - "#address-cells"103 - "#size-cells"104 - ranges105 106allOf:107 - if:108 properties:109 compatible:110 not:111 contains:112 enum:113 - fsl,imx50-weim114 - fsl,imx6q-weim115 then:116 properties:117 fsl,weim-cs-gpr: false118 fsl,burst-clk-enable: false119 - if:120 not:121 required:122 - fsl,burst-clk-enable123 then:124 properties:125 fsl,continuous-burst-clk: false126 - if:127 properties:128 compatible:129 contains:130 const: fsl,imx1-weim131 then:132 patternProperties:133 "^.*@[0-7],[0-9a-f]+$":134 properties:135 fsl,weim-cs-timing:136 items:137 - description: CSxU138 - description: CSxL139 - if:140 properties:141 compatible:142 contains:143 enum:144 - fsl,imx27-weim145 - fsl,imx31-weim146 - fsl,imx35-weim147 then:148 patternProperties:149 "^.*@[0-7],[0-9a-f]+$":150 properties:151 fsl,weim-cs-timing:152 items:153 - description: CSCRxU154 - description: CSCRxL155 - description: CSCRxA156 - if:157 properties:158 compatible:159 contains:160 enum:161 - fsl,imx50-weim162 - fsl,imx51-weim163 - fsl,imx6q-weim164 - fsl,imx6sx-weim165 - fsl,imx6ul-weim166 then:167 patternProperties:168 "^.*@[0-7],[0-9a-f]+$":169 properties:170 fsl,weim-cs-timing:171 items:172 - description: CSxGCR1173 - description: CSxGCR2174 - description: CSxRCR1175 - description: CSxRCR2176 - description: CSxWCR1177 - description: CSxWCR2178 179additionalProperties: false180 181examples:182 - |183 memory-controller@21b8000 {184 compatible = "fsl,imx6q-weim";185 reg = <0x021b8000 0x4000>;186 clocks = <&clks 196>;187 #address-cells = <2>;188 #size-cells = <1>;189 ranges = <0 0 0x08000000 0x08000000>;190 fsl,weim-cs-gpr = <&gpr>;191 192 flash@0,0 {193 compatible = "cfi-flash";194 reg = <0 0 0x02000000>;195 #address-cells = <1>;196 #size-cells = <1>;197 bank-width = <2>;198 fsl,weim-cs-timing = <0x00620081 0x00000001 0x1c022000199 0x0000c000 0x1404a38e 0x00000000>;200 };201 };202