1 // SPDX-License-Identifier: GPL-2.0
3 * Device Tree Source for the Kingfisher (ULCB extension) board
5 * Copyright (C) 2017 Renesas Electronics Corp.
6 * Copyright (C) 2017 Cogent Embedded, Inc.
11 * aplay -D plughw:0,2 xxx.wav
12 * arecord -D plughw:0,3 xxx.wav
21 clksndsel: clksndsel {
23 compatible = "gpio-mux-clock";
24 clocks = <&cs2000>, <&audio_clk_a>; /* clk8snd, clksnd */
25 select-gpios = <&gpio_exp_75 13 GPIO_ACTIVE_HIGH>;
28 snd_3p3v: regulator-snd_3p3v {
29 compatible = "regulator-fixed";
30 regulator-name = "snd-3.3v";
31 regulator-min-microvolt = <3300000>;
32 regulator-max-microvolt = <3300000>;
35 snd_vcc5v: regulator-snd_vcc5v {
36 compatible = "regulator-fixed";
37 regulator-name = "snd-vcc5v";
38 regulator-min-microvolt = <5000000>;
39 regulator-max-microvolt = <5000000>;
42 wlan_en: regulator-wlan_en {
43 compatible = "regulator-fixed";
44 regulator-name = "wlan-en-regulator";
46 regulator-min-microvolt = <3300000>;
47 regulator-max-microvolt = <3300000>;
49 gpio = <&gpio_exp_74 4 GPIO_ACTIVE_HIGH>;
50 startup-delay-us = <70000>;
56 pinctrl-0 = <&can0_pins>;
57 pinctrl-names = "default";
62 pinctrl-0 = <&can1_pins>;
63 pinctrl-names = "default";
73 pinctrl-0 = <&hscif0_pins>;
74 pinctrl-names = "default";
86 i2cswitch2: i2c-switch@71 {
87 compatible = "nxp,pca9548";
91 reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
93 /* Audio_SDA, Audio_SCL */
99 pcm3168a: audio-codec@44 {
100 #sound-dai-cells = <0>;
101 compatible = "ti,pcm3168a";
103 clocks = <&clksndsel>;
104 clock-names = "scki";
106 VDD1-supply = <&snd_3p3v>;
107 VDD2-supply = <&snd_3p3v>;
108 VCCAD1-supply = <&snd_vcc5v>;
109 VCCAD2-supply = <&snd_vcc5v>;
110 VCCDA1-supply = <&snd_vcc5v>;
111 VCCDA2-supply = <&snd_vcc5v>;
114 #address-cells = <1>;
119 pcm3168a_endpoint_p: endpoint {
120 remote-endpoint = <&rsnd_for_pcm3168a_play>;
121 clocks = <&clksndsel>;
126 pcm3168a_endpoint_c: endpoint {
127 remote-endpoint = <&rsnd_for_pcm3168a_capture>;
128 clocks = <&clksndsel>;
137 gpio_exp_74: gpio@74 {
138 compatible = "ti,tca9539";
142 interrupt-controller;
143 interrupt-parent = <&gpio6>;
144 interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
148 gpios = <0 GPIO_ACTIVE_HIGH>; /* P00 */
150 line-name = "Audio_Out_OFF";
155 gpios = <6 GPIO_ACTIVE_HIGH>;
157 line-name = "HUB pwen";
162 gpios = <7 GPIO_ACTIVE_HIGH>;
164 line-name = "HUB rst";
169 gpios = <9 GPIO_ACTIVE_HIGH>;
171 line-name = "OTG EXTLPn";
176 gpios = <8 GPIO_ACTIVE_HIGH>;
178 line-name = "OTG OFFVBUSn";
183 gpios = <5 GPIO_ACTIVE_HIGH>;
184 output-low; /* Connect WL1837 */
185 line-name = "SD WiFi mux";
190 gpios = <15 GPIO_ACTIVE_HIGH>; /* P17 */
192 line-name = "SND_RST";
197 gpio_exp_75: gpio@75 {
198 compatible = "ti,tca9539";
202 interrupt-controller;
203 interrupt-parent = <&gpio6>;
204 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
209 i2cswitch4: i2c-switch@71 {
210 compatible = "nxp,pca9548";
211 #address-cells = <1>;
214 reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>;
217 gpio_exp_76: gpio@76 {
218 compatible = "ti,tca9539";
222 interrupt-controller;
223 interrupt-parent = <&gpio7>;
224 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
227 gpio_exp_77: gpio@77 {
228 compatible = "ti,tca9539";
232 interrupt-controller;
233 interrupt-parent = <&gpio5>;
234 interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
244 clock-frequency = <100000000>;
257 groups = "can0_data_a";
262 groups = "can1_data";
266 hscif0_pins: hscif0 {
267 groups = "hscif0_data", "hscif0_ctrl";
272 groups = "scif1_data_b", "scif1_ctrl";
277 groups = "sdhi3_data4", "sdhi3_ctrl";
279 power-source = <3300>;
282 sound_pcm_pins: sound-pcm {
283 groups = "ssi349_ctrl", "ssi3_data", "ssi4_data";
294 pinctrl-0 = <&sound_pins
299 /* rsnd_port0/1 are on salvator-common */
302 rsnd_for_pcm3168a_play: endpoint {
303 remote-endpoint = <&pcm3168a_endpoint_p>;
306 bitclock-master = <&rsnd_for_pcm3168a_play>;
307 frame-master = <&rsnd_for_pcm3168a_play>;
308 dai-tdm-slot-num = <8>;
315 rsnd_for_pcm3168a_capture: endpoint {
316 remote-endpoint = <&pcm3168a_endpoint_c>;
319 bitclock-master = <&rsnd_for_pcm3168a_capture>;
320 frame-master = <&rsnd_for_pcm3168a_capture>;
321 dai-tdm-slot-num = <6>;
330 pinctrl-0 = <&scif1_pins>;
331 pinctrl-names = "default";
338 pinctrl-0 = <&sdhi3_pins>;
339 pinctrl-names = "default";
341 vmmc-supply = <&wlan_en>;
342 vqmmc-supply = <&wlan_en>;
347 keep-power-in-suspend;
348 max-frequency = <26000000>;
351 #address-cells = <1>;
354 compatible = "ti,wl1837";
356 interrupt-parent = <&gpio1>;
357 interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
362 dais = <&rsnd_port0 /* ak4613 */
363 &rsnd_port1 /* HDMI0 */
364 &rsnd_port2 /* pcm3168a playback */
365 &rsnd_port3 /* pcm3168a capture */
374 pinctrl-0 = <&usb0_pins>;
375 pinctrl-names = "default";