brintos

brintos / linux-shallow public Read only

0
0
Text · 5.1 KiB · ce4ec94 Raw
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