1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/spi/fsl-imx 4 $id: http://devicetree.org/schemas/spi/fsl-imx-cspi.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Freescale (Enhanced) Configurable Seria 7 title: Freescale (Enhanced) Configurable Serial Peripheral Interface (CSPI/eCSPI) for i.MX 8 8 9 maintainers: 9 maintainers: 10 - Shawn Guo <shawnguo@kernel.org> 10 - Shawn Guo <shawnguo@kernel.org> 11 11 12 allOf: 12 allOf: 13 - $ref: /schemas/spi/spi-controller.yaml# !! 13 - $ref: "/schemas/spi/spi-controller.yaml#" 14 14 15 properties: 15 properties: 16 compatible: 16 compatible: 17 oneOf: 17 oneOf: 18 - const: fsl,imx1-cspi 18 - const: fsl,imx1-cspi 19 - const: fsl,imx21-cspi 19 - const: fsl,imx21-cspi 20 - const: fsl,imx27-cspi 20 - const: fsl,imx27-cspi 21 - const: fsl,imx31-cspi 21 - const: fsl,imx31-cspi 22 - const: fsl,imx35-cspi 22 - const: fsl,imx35-cspi 23 - const: fsl,imx51-ecspi 23 - const: fsl,imx51-ecspi 24 - const: fsl,imx53-ecspi 24 - const: fsl,imx53-ecspi 25 - items: 25 - items: 26 - enum: 26 - enum: 27 - fsl,imx25-cspi << 28 - fsl,imx50-cspi << 29 - fsl,imx51-cspi << 30 - fsl,imx53-cspi << 31 - const: fsl,imx35-cspi << 32 - items: << 33 - const: fsl,imx8mp-ecspi << 34 - const: fsl,imx6ul-ecspi << 35 - items: << 36 - enum: << 37 - fsl,imx50-ecspi 27 - fsl,imx50-ecspi 38 - fsl,imx6q-ecspi 28 - fsl,imx6q-ecspi 39 - fsl,imx6sx-ecspi 29 - fsl,imx6sx-ecspi 40 - fsl,imx6sl-ecspi 30 - fsl,imx6sl-ecspi 41 - fsl,imx6sll-ecspi 31 - fsl,imx6sll-ecspi 42 - fsl,imx6ul-ecspi 32 - fsl,imx6ul-ecspi 43 - fsl,imx7d-ecspi 33 - fsl,imx7d-ecspi 44 - fsl,imx8mq-ecspi 34 - fsl,imx8mq-ecspi 45 - fsl,imx8mm-ecspi 35 - fsl,imx8mm-ecspi 46 - fsl,imx8mn-ecspi 36 - fsl,imx8mn-ecspi >> 37 - fsl,imx8mp-ecspi 47 - const: fsl,imx51-ecspi 38 - const: fsl,imx51-ecspi 48 39 49 reg: 40 reg: 50 maxItems: 1 41 maxItems: 1 51 42 52 interrupts: 43 interrupts: 53 maxItems: 1 44 maxItems: 1 54 45 55 clocks: 46 clocks: 56 items: 47 items: 57 - description: SoC SPI ipg clock 48 - description: SoC SPI ipg clock 58 - description: SoC SPI per clock 49 - description: SoC SPI per clock 59 50 60 clock-names: 51 clock-names: 61 items: 52 items: 62 - const: ipg 53 - const: ipg 63 - const: per 54 - const: per 64 55 65 dmas: 56 dmas: 66 items: 57 items: 67 - description: DMA controller phandle an 58 - description: DMA controller phandle and request line for RX 68 - description: DMA controller phandle an 59 - description: DMA controller phandle and request line for TX 69 60 70 dma-names: 61 dma-names: 71 items: 62 items: 72 - const: rx 63 - const: rx 73 - const: tx 64 - const: tx 74 65 75 fsl,spi-rdy-drctl: 66 fsl,spi-rdy-drctl: 76 $ref: /schemas/types.yaml#/definitions/uin 67 $ref: /schemas/types.yaml#/definitions/uint32 77 description: | 68 description: | 78 Integer, representing the value of DRCTL 69 Integer, representing the value of DRCTL, the register controlling 79 the SPI_READY handling. Note that to ena 70 the SPI_READY handling. Note that to enable the DRCTL consideration, 80 the SPI_READY mode-flag needs to be set 71 the SPI_READY mode-flag needs to be set too. 81 Valid values are: 0 (disabled), 1 (edge- 72 Valid values are: 0 (disabled), 1 (edge-triggered burst) and 2 (level-triggered burst). 82 enum: [0, 1, 2] 73 enum: [0, 1, 2] 83 74 84 required: 75 required: 85 - compatible 76 - compatible 86 - reg 77 - reg 87 - interrupts 78 - interrupts 88 - clocks 79 - clocks 89 - clock-names 80 - clock-names 90 81 91 unevaluatedProperties: false 82 unevaluatedProperties: false 92 83 93 examples: 84 examples: 94 - | 85 - | 95 #include <dt-bindings/clock/imx5-clock.h> 86 #include <dt-bindings/clock/imx5-clock.h> 96 87 97 spi@70010000 { 88 spi@70010000 { 98 #address-cells = <1>; 89 #address-cells = <1>; 99 #size-cells = <0>; 90 #size-cells = <0>; 100 compatible = "fsl,imx51-ecspi"; 91 compatible = "fsl,imx51-ecspi"; 101 reg = <0x70010000 0x4000>; 92 reg = <0x70010000 0x4000>; 102 interrupts = <36>; 93 interrupts = <36>; 103 clocks = <&clks IMX5_CLK_ECSPI1_IPG_GA 94 clocks = <&clks IMX5_CLK_ECSPI1_IPG_GATE>, 104 <&clks IMX5_CLK_ECSPI1_PER_GA 95 <&clks IMX5_CLK_ECSPI1_PER_GATE>; 105 clock-names = "ipg", "per"; 96 clock-names = "ipg", "per"; 106 }; 97 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.