1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/spi/samsung,spi.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Samsung S3C/S5P/Exynos SoC SPI controller
10 - Krzysztof Kozlowski <krzk@kernel.org>
13 All the SPI controller nodes should be represented in the aliases node using
14 the following format 'spi{n}' where n is a unique number for the alias.
21 - samsung,s3c2443-spi # for S3C2443, S3C2416 and S3C2450
23 - samsung,s5pv210-spi # for S5PV210 and S5PC110
24 - samsung,exynos4210-spi
25 - samsung,exynos5433-spi
26 - samsung,exynos850-spi
27 - samsung,exynosautov9-spi
31 - samsung,exynos8895-spi
32 - const: samsung,exynos850-spi
33 - const: samsung,exynos7-spi
58 The CS line is disconnected, therefore the device should not operate
59 based on CS signalling.
69 If the spi controller includes a internal clock mux to select the clock
70 source for the spi bus clock, this property can be used to indicate the
71 clock to be used for driving the spi bus clock. If not specified, the
72 clock number 0 is used as default.
73 $ref: /schemas/types.yaml#/definitions/uint32
87 - $ref: spi-controller.yaml#
93 - samsung,exynos5433-spi
94 - samsung,exynosautov9-spi
123 unevaluatedProperties: false
127 #include <dt-bindings/clock/exynos5433.h>
128 #include <dt-bindings/clock/samsung,s2mps11.h>
129 #include <dt-bindings/interrupt-controller/arm-gic.h>
130 #include <dt-bindings/gpio/gpio.h>
133 compatible = "samsung,exynos5433-spi";
134 reg = <0x14d30000 0x100>;
135 interrupts = <GIC_SPI 433 IRQ_TYPE_LEVEL_HIGH>;
136 dmas = <&pdma0 11>, <&pdma0 10>;
137 dma-names = "tx", "rx";
138 #address-cells = <1>;
140 clocks = <&cmu_peric CLK_PCLK_SPI1>,
141 <&cmu_peric CLK_SCLK_SPI1>,
142 <&cmu_peric CLK_SCLK_IOCLK_SPI1>;
146 samsung,spi-src-clk = <0>;
147 pinctrl-names = "default";
148 pinctrl-0 = <&spi1_bus>;
151 cs-gpios = <&gpd6 3 GPIO_ACTIVE_HIGH>;
154 compatible = "wlf,wm5110";
156 spi-max-frequency = <20000000>;
157 interrupt-parent = <&gpa0>;
158 interrupts = <4 IRQ_TYPE_NONE>;
159 clocks = <&pmu_system_controller 0>,
160 <&s2mps13_osc S2MPS11_CLK_BT>;
161 clock-names = "mclk1", "mclk2";
165 interrupt-controller;
166 #interrupt-cells = <2>;
168 wlf,micd-detect-debounce = <300>;
169 wlf,micd-bias-start-time = <0x1>;
170 wlf,micd-rate = <0x7>;
171 wlf,micd-dbtime = <0x2>;
172 wlf,micd-force-micbias;
173 wlf,micd-configs = <0x0 1 0>;
174 wlf,hpdet-channel = <1>;
176 wlf,inmode = <2 0 2 0>;
178 wlf,reset = <&gpc0 7 GPIO_ACTIVE_HIGH>;
179 wlf,ldoena = <&gpf0 0 GPIO_ACTIVE_HIGH>;
182 AVDD-supply = <&ldo18_reg>;
183 DBVDD1-supply = <&ldo18_reg>;
184 CPVDD-supply = <&ldo18_reg>;
185 DBVDD2-supply = <&ldo18_reg>;
186 DBVDD3-supply = <&ldo18_reg>;
187 SPKVDDL-supply = <&ldo18_reg>;
188 SPKVDDR-supply = <&ldo18_reg>;
191 samsung,spi-feedback-delay = <0>;