1 // SPDX-License-Identifier: GPL-2.0 1 // SPDX-License-Identifier: GPL-2.0 2 /* 2 /* 3 * Device Tree Source for the Kingfisher (ULCB 3 * Device Tree Source for the Kingfisher (ULCB extension) board 4 * 4 * 5 * Copyright (C) 2017 Renesas Electronics Corp 5 * Copyright (C) 2017 Renesas Electronics Corp. 6 * Copyright (C) 2017 Cogent Embedded, Inc. 6 * Copyright (C) 2017 Cogent Embedded, Inc. 7 */ 7 */ 8 8 >> 9 /* >> 10 * SSI-PCM3168A >> 11 * aplay -D plughw:0,2 xxx.wav >> 12 * arecord -D plughw:0,3 xxx.wav >> 13 */ >> 14 9 / { 15 / { 10 aliases { 16 aliases { 11 serial1 = &hscif0; 17 serial1 = &hscif0; 12 serial2 = &scif1; 18 serial2 = &scif1; 13 serial3 = &hscif1; << 14 mmc2 = &sdhi3; 19 mmc2 = &sdhi3; 15 }; 20 }; 16 21 17 clksndsel: clksndsel { 22 clksndsel: clksndsel { 18 #clock-cells = <0>; 23 #clock-cells = <0>; 19 compatible = "gpio-mux-clock"; 24 compatible = "gpio-mux-clock"; 20 clocks = <&cs2000>, <&audio_cl 25 clocks = <&cs2000>, <&audio_clk_a>; /* clk8snd, clksnd */ 21 select-gpios = <&gpio_exp_75 1 26 select-gpios = <&gpio_exp_75 13 GPIO_ACTIVE_HIGH>; 22 }; 27 }; 23 28 24 hdmi1-out { 29 hdmi1-out { 25 compatible = "hdmi-connector"; 30 compatible = "hdmi-connector"; 26 type = "a"; 31 type = "a"; 27 32 28 port { 33 port { 29 hdmi1_con: endpoint { 34 hdmi1_con: endpoint { 30 remote-endpoin 35 remote-endpoint = <&adv7513_out>; 31 }; 36 }; 32 }; 37 }; 33 }; 38 }; 34 39 35 reg_t1p8v: regulator-t1p8v { !! 40 accel_3v3: regulator-acc-3v3 { >> 41 compatible = "regulator-fixed"; >> 42 regulator-name = "accel-3v3"; >> 43 regulator-min-microvolt = <3300000>; >> 44 regulator-max-microvolt = <3300000>; >> 45 }; >> 46 >> 47 hdmi_1v8: regulator-hdmi-1v8 { 36 compatible = "regulator-fixed" 48 compatible = "regulator-fixed"; 37 regulator-name = "T1.8V"; !! 49 regulator-name = "hdmi-1v8"; 38 regulator-min-microvolt = <180 50 regulator-min-microvolt = <1800000>; 39 regulator-max-microvolt = <180 51 regulator-max-microvolt = <1800000>; 40 regulator-boot-on; << 41 regulator-always-on; << 42 }; 52 }; 43 53 44 pcie_1v5: regulator-pcie-1v5 { !! 54 hdmi_3v3: regulator-hdmi-3v3 { 45 compatible = "regulator-fixed" 55 compatible = "regulator-fixed"; 46 regulator-name = "pcie-1v5"; !! 56 regulator-name = "hdmi-3v3"; 47 regulator-min-microvolt = <150 !! 57 regulator-min-microvolt = <3300000>; 48 regulator-max-microvolt = <150 !! 58 regulator-max-microvolt = <3300000>; 49 gpio = <&gpio_exp_77 15 GPIO_A << 50 enable-active-high; << 51 }; 59 }; 52 60 53 pcie_3v3: regulator-pcie-3v3 { !! 61 snd_3p3v: regulator-snd_3p3v { 54 compatible = "regulator-fixed" 62 compatible = "regulator-fixed"; 55 regulator-name = "pcie-3v3"; !! 63 regulator-name = "snd-3.3v"; 56 regulator-min-microvolt = <330 64 regulator-min-microvolt = <3300000>; 57 regulator-max-microvolt = <330 65 regulator-max-microvolt = <3300000>; 58 gpio = <&gpio_exp_77 14 GPIO_A << 59 enable-active-high; << 60 }; 66 }; 61 67 62 reg_5v: regulator-5v { !! 68 snd_vcc5v: regulator-snd_vcc5v { 63 compatible = "regulator-fixed" 69 compatible = "regulator-fixed"; 64 regulator-name = "fixed-5V"; !! 70 regulator-name = "snd-vcc5v"; 65 regulator-min-microvolt = <500 71 regulator-min-microvolt = <5000000>; 66 regulator-max-microvolt = <500 72 regulator-max-microvolt = <5000000>; 67 regulator-boot-on; << 68 regulator-always-on; << 69 }; 73 }; 70 74 71 wlan_en: regulator-wlan_en { 75 wlan_en: regulator-wlan_en { 72 compatible = "regulator-fixed" 76 compatible = "regulator-fixed"; 73 regulator-name = "wlan-en-regu 77 regulator-name = "wlan-en-regulator"; 74 78 75 regulator-min-microvolt = <330 79 regulator-min-microvolt = <3300000>; 76 regulator-max-microvolt = <330 80 regulator-max-microvolt = <3300000>; 77 81 78 gpio = <&gpio_exp_74 4 GPIO_AC 82 gpio = <&gpio_exp_74 4 GPIO_ACTIVE_HIGH>; 79 startup-delay-us = <70000>; 83 startup-delay-us = <70000>; 80 enable-active-high; 84 enable-active-high; 81 }; 85 }; 82 }; 86 }; 83 87 84 &can0 { 88 &can0 { 85 pinctrl-0 = <&can0_pins>; 89 pinctrl-0 = <&can0_pins>; 86 pinctrl-names = "default"; 90 pinctrl-names = "default"; 87 status = "okay"; 91 status = "okay"; 88 }; 92 }; 89 93 90 &can1 { 94 &can1 { 91 pinctrl-0 = <&can1_pins>; 95 pinctrl-0 = <&can1_pins>; 92 pinctrl-names = "default"; 96 pinctrl-names = "default"; 93 status = "okay"; 97 status = "okay"; 94 }; 98 }; 95 99 96 &du { 100 &du { 97 ports { 101 ports { 98 port@0 { 102 port@0 { 99 du_out_rgb: endpoint { 103 du_out_rgb: endpoint { 100 remote-endpoin 104 remote-endpoint = <&adv7513_in>; 101 }; 105 }; 102 }; 106 }; 103 }; 107 }; 104 }; 108 }; 105 109 106 &ehci0 { 110 &ehci0 { 107 dr_mode = "otg"; 111 dr_mode = "otg"; 108 status = "okay"; 112 status = "okay"; 109 }; 113 }; 110 114 111 &hscif0 { 115 &hscif0 { 112 pinctrl-0 = <&hscif0_pins>; 116 pinctrl-0 = <&hscif0_pins>; 113 pinctrl-names = "default"; 117 pinctrl-names = "default"; 114 uart-has-rtscts; 118 uart-has-rtscts; 115 119 116 status = "okay"; 120 status = "okay"; 117 }; 121 }; 118 122 119 &hscif1 { << 120 pinctrl-0 = <&hscif1_pins>; << 121 pinctrl-names = "default"; << 122 uart-has-rtscts; << 123 << 124 status = "okay"; << 125 }; << 126 << 127 &hsusb { 123 &hsusb { 128 dr_mode = "otg"; 124 dr_mode = "otg"; 129 status = "okay"; 125 status = "okay"; 130 }; 126 }; 131 127 132 &i2c2 { 128 &i2c2 { 133 i2cmux2: i2c-mux@71 { !! 129 i2cswitch2: i2c-switch@71 { 134 compatible = "nxp,pca9548"; 130 compatible = "nxp,pca9548"; 135 #address-cells = <1>; 131 #address-cells = <1>; 136 #size-cells = <0>; 132 #size-cells = <0>; 137 reg = <0x71>; 133 reg = <0x71>; 138 reset-gpios = <&gpio5 3 GPIO_A 134 reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>; 139 135 140 /* HDMIoSDA, HDMIoSCL */ 136 /* HDMIoSDA, HDMIoSCL */ 141 i2c@4 { 137 i2c@4 { 142 #address-cells = <1>; 138 #address-cells = <1>; 143 #size-cells = <0>; 139 #size-cells = <0>; 144 reg = <4>; 140 reg = <4>; 145 141 146 hdmi@3d { 142 hdmi@3d { 147 compatible = " 143 compatible = "adi,adv7513"; 148 reg = <0x3d>; 144 reg = <0x3d>; 149 145 150 pinctrl-0 = <& 146 pinctrl-0 = <&hdmi1_pins>; 151 pinctrl-names 147 pinctrl-names = "default"; 152 148 153 interrupt-pare 149 interrupt-parent = <&gpio2>; 154 interrupts = < 150 interrupts = <14 IRQ_TYPE_LEVEL_LOW>; 155 151 156 clocks = <&cs2 152 clocks = <&cs2000>; 157 clock-names = 153 clock-names = "cec"; 158 154 159 pd-gpios = <&g 155 pd-gpios = <&gpio_exp_75 5 GPIO_ACTIVE_LOW>; 160 156 161 avdd-supply = !! 157 avdd-supply = <&hdmi_1v8>; 162 dvdd-supply = !! 158 dvdd-supply = <&hdmi_1v8>; 163 pvdd-supply = !! 159 pvdd-supply = <&hdmi_1v8>; 164 dvdd-3v-supply !! 160 dvdd-3v-supply = <&hdmi_3v3>; 165 bgvdd-supply = !! 161 bgvdd-supply = <&hdmi_1v8>; 166 162 167 adi,input-dept 163 adi,input-depth = <8>; 168 adi,input-colo 164 adi,input-colorspace = "rgb"; 169 adi,input-cloc 165 adi,input-clock = "1x"; 170 166 171 ports { 167 ports { 172 #addre 168 #address-cells = <1>; 173 #size- 169 #size-cells = <0>; 174 170 175 port@0 171 port@0 { 176 172 reg = <0>; 177 173 adv7513_in: endpoint { 178 174 remote-endpoint = <&du_out_rgb>; 179 175 }; 180 }; 176 }; 181 177 182 port@1 178 port@1 { 183 179 reg = <1>; 184 180 adv7513_out: endpoint { 185 181 remote-endpoint = <&hdmi1_con>; 186 182 }; 187 }; 183 }; 188 }; 184 }; 189 }; 185 }; 190 }; 186 }; 191 187 192 /* Audio_SDA, Audio_SCL */ 188 /* Audio_SDA, Audio_SCL */ 193 i2c@7 { 189 i2c@7 { 194 #address-cells = <1>; 190 #address-cells = <1>; 195 #size-cells = <0>; 191 #size-cells = <0>; 196 reg = <7>; 192 reg = <7>; 197 193 198 accelerometer@1d { 194 accelerometer@1d { 199 compatible = " 195 compatible = "st,lsm9ds0-imu"; 200 reg = <0x1d>; 196 reg = <0x1d>; 201 197 202 vdd-supply = < !! 198 vdd-supply = <&accel_3v3>; 203 vddio-supply = !! 199 vddio-supply = <&accel_3v3>; 204 }; 200 }; 205 201 206 pcm3168a: audio-codec@ 202 pcm3168a: audio-codec@44 { 207 #sound-dai-cel 203 #sound-dai-cells = <0>; 208 compatible = " 204 compatible = "ti,pcm3168a"; 209 reg = <0x44>; 205 reg = <0x44>; 210 clocks = <&clk 206 clocks = <&clksndsel>; 211 clock-names = 207 clock-names = "scki"; 212 208 213 VDD1-supply = !! 209 VDD1-supply = <&snd_3p3v>; 214 VDD2-supply = !! 210 VDD2-supply = <&snd_3p3v>; 215 VCCAD1-supply !! 211 VCCAD1-supply = <&snd_vcc5v>; 216 VCCAD2-supply !! 212 VCCAD2-supply = <&snd_vcc5v>; 217 VCCDA1-supply !! 213 VCCDA1-supply = <&snd_vcc5v>; 218 VCCDA2-supply !! 214 VCCDA2-supply = <&snd_vcc5v>; >> 215 >> 216 ports { >> 217 #address-cells = <1>; >> 218 #size-cells = <0>; >> 219 mclk-fs = <512>; >> 220 port@0 { >> 221 reg = <0>; >> 222 pcm3168a_endpoint_p: endpoint { >> 223 remote-endpoint = <&rsnd_for_pcm3168a_play>; >> 224 clocks = <&clksndsel>; >> 225 }; >> 226 }; >> 227 port@1 { >> 228 reg = <1>; >> 229 pcm3168a_endpoint_c: endpoint { >> 230 remote-endpoint = <&rsnd_for_pcm3168a_capture>; >> 231 clocks = <&clksndsel>; >> 232 }; >> 233 }; >> 234 }; 219 }; 235 }; 220 236 221 gyroscope@6b { 237 gyroscope@6b { 222 compatible = " 238 compatible = "st,lsm9ds0-gyro"; 223 reg = <0x6b>; 239 reg = <0x6b>; 224 240 225 vdd-supply = < !! 241 vdd-supply = <&accel_3v3>; 226 vddio-supply = !! 242 vddio-supply = <&accel_3v3>; 227 }; 243 }; 228 }; 244 }; 229 }; 245 }; 230 246 231 /* U11 */ 247 /* U11 */ 232 gpio_exp_74: gpio@74 { 248 gpio_exp_74: gpio@74 { 233 compatible = "ti,tca9539"; 249 compatible = "ti,tca9539"; 234 reg = <0x74>; 250 reg = <0x74>; 235 gpio-controller; 251 gpio-controller; 236 #gpio-cells = <2>; 252 #gpio-cells = <2>; 237 interrupt-controller; 253 interrupt-controller; 238 #interrupt-cells = <2>; 254 #interrupt-cells = <2>; 239 interrupt-parent = <&gpio6>; 255 interrupt-parent = <&gpio6>; 240 interrupts = <8 IRQ_TYPE_EDGE_ 256 interrupts = <8 IRQ_TYPE_EDGE_FALLING>; 241 257 242 audio-out-off-hog { 258 audio-out-off-hog { 243 gpio-hog; 259 gpio-hog; 244 gpios = <0 GPIO_ACTIVE 260 gpios = <0 GPIO_ACTIVE_HIGH>; /* P00 */ 245 output-high; 261 output-high; 246 line-name = "Audio_Out 262 line-name = "Audio_Out_OFF"; 247 }; 263 }; 248 264 249 hub-pwen-hog { 265 hub-pwen-hog { 250 gpio-hog; 266 gpio-hog; 251 gpios = <6 GPIO_ACTIVE 267 gpios = <6 GPIO_ACTIVE_HIGH>; 252 output-high; 268 output-high; 253 line-name = "HUB pwen" 269 line-name = "HUB pwen"; 254 }; 270 }; 255 271 256 hub-rst-hog { 272 hub-rst-hog { 257 gpio-hog; 273 gpio-hog; 258 gpios = <7 GPIO_ACTIVE 274 gpios = <7 GPIO_ACTIVE_HIGH>; 259 output-high; 275 output-high; 260 line-name = "HUB rst"; 276 line-name = "HUB rst"; 261 }; 277 }; 262 278 263 otg-extlpn-hog { 279 otg-extlpn-hog { 264 gpio-hog; 280 gpio-hog; 265 gpios = <9 GPIO_ACTIVE 281 gpios = <9 GPIO_ACTIVE_HIGH>; 266 output-high; 282 output-high; 267 line-name = "OTG EXTLP 283 line-name = "OTG EXTLPn"; 268 }; 284 }; 269 285 270 otg-offvbusn-hog { 286 otg-offvbusn-hog { 271 gpio-hog; 287 gpio-hog; 272 gpios = <8 GPIO_ACTIVE 288 gpios = <8 GPIO_ACTIVE_HIGH>; 273 output-low; 289 output-low; 274 line-name = "OTG OFFVB 290 line-name = "OTG OFFVBUSn"; 275 }; 291 }; 276 292 277 sd-wifi-mux-hog { 293 sd-wifi-mux-hog { 278 gpio-hog; 294 gpio-hog; 279 gpios = <5 GPIO_ACTIVE 295 gpios = <5 GPIO_ACTIVE_HIGH>; 280 output-low; /* Con 296 output-low; /* Connect WL1837 */ 281 line-name = "SD WiFi m 297 line-name = "SD WiFi mux"; 282 }; 298 }; 283 299 284 snd-rst-hog { 300 snd-rst-hog { 285 gpio-hog; 301 gpio-hog; 286 gpios = <15 GPIO_ACTIV 302 gpios = <15 GPIO_ACTIVE_HIGH>; /* P17 */ 287 output-high; 303 output-high; 288 line-name = "SND_RST"; 304 line-name = "SND_RST"; 289 }; 305 }; 290 }; 306 }; 291 307 292 /* U5 */ 308 /* U5 */ 293 gpio_exp_75: gpio@75 { 309 gpio_exp_75: gpio@75 { 294 compatible = "ti,tca9539"; 310 compatible = "ti,tca9539"; 295 reg = <0x75>; 311 reg = <0x75>; 296 gpio-controller; 312 gpio-controller; 297 #gpio-cells = <2>; 313 #gpio-cells = <2>; 298 interrupt-controller; 314 interrupt-controller; 299 #interrupt-cells = <2>; 315 #interrupt-cells = <2>; 300 interrupt-parent = <&gpio6>; 316 interrupt-parent = <&gpio6>; 301 interrupts = <4 IRQ_TYPE_EDGE_ 317 interrupts = <4 IRQ_TYPE_EDGE_FALLING>; 302 }; 318 }; 303 }; 319 }; 304 320 305 &i2c4 { 321 &i2c4 { 306 i2cmux4: i2c-mux@71 { !! 322 i2cswitch4: i2c-switch@71 { 307 compatible = "nxp,pca9548"; 323 compatible = "nxp,pca9548"; 308 #address-cells = <1>; 324 #address-cells = <1>; 309 #size-cells = <0>; 325 #size-cells = <0>; 310 reg = <0x71>; 326 reg = <0x71>; 311 reset-gpios = <&gpio3 15 GPIO_ 327 reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; 312 }; 328 }; 313 329 314 gpio_exp_76: gpio@76 { 330 gpio_exp_76: gpio@76 { 315 compatible = "ti,tca9539"; 331 compatible = "ti,tca9539"; 316 reg = <0x76>; 332 reg = <0x76>; 317 gpio-controller; 333 gpio-controller; 318 #gpio-cells = <2>; 334 #gpio-cells = <2>; 319 interrupt-controller; 335 interrupt-controller; 320 #interrupt-cells = <2>; 336 #interrupt-cells = <2>; 321 interrupt-parent = <&gpio7>; 337 interrupt-parent = <&gpio7>; 322 interrupts = <3 IRQ_TYPE_EDGE_ 338 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 323 }; 339 }; 324 340 325 gpio_exp_77: gpio@77 { 341 gpio_exp_77: gpio@77 { 326 compatible = "ti,tca9539"; 342 compatible = "ti,tca9539"; 327 reg = <0x77>; 343 reg = <0x77>; 328 gpio-controller; 344 gpio-controller; 329 #gpio-cells = <2>; 345 #gpio-cells = <2>; 330 interrupt-controller; 346 interrupt-controller; 331 #interrupt-cells = <2>; 347 #interrupt-cells = <2>; 332 interrupt-parent = <&gpio5>; 348 interrupt-parent = <&gpio5>; 333 interrupts = <9 IRQ_TYPE_EDGE_ 349 interrupts = <9 IRQ_TYPE_EDGE_FALLING>; 334 }; 350 }; 335 }; 351 }; 336 352 337 &ohci0 { 353 &ohci0 { 338 dr_mode = "otg"; 354 dr_mode = "otg"; 339 status = "okay"; 355 status = "okay"; 340 }; 356 }; 341 357 342 &pcie_bus_clk { 358 &pcie_bus_clk { 343 clock-frequency = <100000000>; 359 clock-frequency = <100000000>; 344 }; 360 }; 345 361 346 &pciec0 { 362 &pciec0 { 347 status = "okay"; 363 status = "okay"; 348 }; 364 }; 349 365 350 &pciec1 { 366 &pciec1 { 351 status = "okay"; 367 status = "okay"; 352 << 353 vpcie1v5-supply = <&pcie_1v5>; << 354 vpcie3v3-supply = <&pcie_3v3>; << 355 }; 368 }; 356 369 357 &pfc { 370 &pfc { 358 can0_pins: can0 { 371 can0_pins: can0 { 359 groups = "can0_data_a"; 372 groups = "can0_data_a"; 360 function = "can0"; 373 function = "can0"; 361 }; 374 }; 362 375 363 can1_pins: can1 { 376 can1_pins: can1 { 364 groups = "can1_data"; 377 groups = "can1_data"; 365 function = "can1"; 378 function = "can1"; 366 }; 379 }; 367 380 368 hdmi1_pins: hdmi1 { 381 hdmi1_pins: hdmi1 { 369 adv7513-interrupt { 382 adv7513-interrupt { 370 pins = "GP_2_14"; 383 pins = "GP_2_14"; 371 bias-pull-up; 384 bias-pull-up; 372 }; 385 }; 373 386 374 du { 387 du { 375 groups = "du_rgb888", 388 groups = "du_rgb888", "du_sync", "du_clk_out_0", 376 "du_disp"; 389 "du_disp"; 377 function = "du"; 390 function = "du"; 378 }; 391 }; 379 }; 392 }; 380 393 381 hscif0_pins: hscif0 { 394 hscif0_pins: hscif0 { 382 groups = "hscif0_data", "hscif 395 groups = "hscif0_data", "hscif0_ctrl"; 383 function = "hscif0"; 396 function = "hscif0"; 384 }; 397 }; 385 398 386 hscif1_pins: hscif1 { << 387 groups = "hscif1_data_a", "hsc << 388 function = "hscif1"; << 389 }; << 390 << 391 scif1_pins: scif1 { 399 scif1_pins: scif1 { 392 groups = "scif1_data_b"; 400 groups = "scif1_data_b"; 393 function = "scif1"; 401 function = "scif1"; 394 }; 402 }; 395 403 396 sdhi3_pins: sdhi3 { 404 sdhi3_pins: sdhi3 { 397 groups = "sdhi3_data4", "sdhi3 405 groups = "sdhi3_data4", "sdhi3_ctrl"; 398 function = "sdhi3"; 406 function = "sdhi3"; 399 power-source = <3300>; 407 power-source = <3300>; 400 }; 408 }; 401 409 402 sound_pcm_pins: sound-pcm { 410 sound_pcm_pins: sound-pcm { 403 groups = "ssi349_ctrl", "ssi3_ 411 groups = "ssi349_ctrl", "ssi3_data", "ssi4_data"; 404 function = "ssi"; 412 function = "ssi"; 405 }; 413 }; 406 414 407 usb0_pins: usb0 { 415 usb0_pins: usb0 { 408 groups = "usb0"; 416 groups = "usb0"; 409 function = "usb0"; 417 function = "usb0"; 410 }; 418 }; 411 }; 419 }; 412 420 413 &rcar_sound { 421 &rcar_sound { 414 pinctrl-0 = <&sound_pins 422 pinctrl-0 = <&sound_pins 415 &sound_clk_pins 423 &sound_clk_pins 416 &sound_pcm_pins>; 424 &sound_pcm_pins>; >> 425 >> 426 ports { >> 427 /* rsnd_port0/1 are defined in ulcb.dtsi */ >> 428 rsnd_port2: port@2 { >> 429 reg = <2>; >> 430 rsnd_for_pcm3168a_play: endpoint { >> 431 remote-endpoint = <&pcm3168a_endpoint_p>; >> 432 bitclock-master; >> 433 frame-master; >> 434 dai-tdm-slot-num = <8>; >> 435 playback = <&ssi3>; >> 436 }; >> 437 }; >> 438 rsnd_port3: port@3 { >> 439 reg = <3>; >> 440 rsnd_for_pcm3168a_capture: endpoint { >> 441 remote-endpoint = <&pcm3168a_endpoint_c>; >> 442 bitclock-master; >> 443 frame-master; >> 444 dai-tdm-slot-num = <6>; >> 445 capture = <&ssi4>; >> 446 }; >> 447 }; >> 448 }; 417 }; 449 }; 418 450 419 &scif1 { 451 &scif1 { 420 pinctrl-0 = <&scif1_pins>; 452 pinctrl-0 = <&scif1_pins>; 421 pinctrl-names = "default"; 453 pinctrl-names = "default"; 422 454 423 status = "okay"; 455 status = "okay"; 424 << 425 gnss { << 426 compatible = "u-blox,neo-m8"; << 427 reset-gpios = <&gpio_exp_75 6 << 428 vcc-supply = <®_3p3v>; << 429 current-speed = <9600>; << 430 }; << 431 }; 456 }; 432 457 433 &sdhi3 { 458 &sdhi3 { 434 pinctrl-0 = <&sdhi3_pins>; 459 pinctrl-0 = <&sdhi3_pins>; 435 pinctrl-names = "default"; 460 pinctrl-names = "default"; 436 461 437 vmmc-supply = <&wlan_en>; 462 vmmc-supply = <&wlan_en>; 438 vqmmc-supply = <&wlan_en>; 463 vqmmc-supply = <&wlan_en>; 439 bus-width = <4>; 464 bus-width = <4>; 440 no-1-8-v; 465 no-1-8-v; 441 non-removable; 466 non-removable; 442 cap-power-off-card; 467 cap-power-off-card; 443 keep-power-in-suspend; 468 keep-power-in-suspend; 444 max-frequency = <26000000>; 469 max-frequency = <26000000>; 445 status = "okay"; 470 status = "okay"; 446 471 447 #address-cells = <1>; 472 #address-cells = <1>; 448 #size-cells = <0>; 473 #size-cells = <0>; 449 wlcore: wlcore@2 { 474 wlcore: wlcore@2 { 450 compatible = "ti,wl1837"; 475 compatible = "ti,wl1837"; 451 reg = <2>; 476 reg = <2>; 452 interrupt-parent = <&gpio1>; 477 interrupt-parent = <&gpio1>; 453 interrupts = <25 IRQ_TYPE_EDGE 478 interrupts = <25 IRQ_TYPE_EDGE_FALLING>; 454 }; 479 }; 455 }; 480 }; 456 481 >> 482 &sound_card { >> 483 links = <&rsnd_port0 /* ak4613 */ >> 484 &rsnd_port1 /* HDMI0 */ >> 485 &rsnd_port2 /* pcm3168a playback */ >> 486 &rsnd_port3 /* pcm3168a capture */ >> 487 >; >> 488 }; >> 489 457 &ssi4 { 490 &ssi4 { 458 shared-pin; 491 shared-pin; 459 }; 492 }; 460 493 461 &usb2_phy0 { 494 &usb2_phy0 { 462 pinctrl-0 = <&usb0_pins>; 495 pinctrl-0 = <&usb0_pins>; 463 pinctrl-names = "default"; 496 pinctrl-names = "default"; 464 497 465 status = "okay"; 498 status = "okay"; 466 }; 499 }; 467 500 468 &xhci0 { 501 &xhci0 { 469 status = "okay"; 502 status = "okay"; 470 }; 503 }; 471 << 472 /* << 473 * For sound-test. << 474 * << 475 * We can switch Audio Card for testing << 476 * see also ulcb.dtsi << 477 * << 478 * #include "ulcb-kf-simple-audio-card.dtsi" << 479 * #include "ulcb-kf-simple-audio-card-mix+spl << 480 * #include "ulcb-kf-audio-graph-card.dtsi" << 481 * #include "ulcb-kf-audio-graph-card-mix+spli << 482 * #include "ulcb-kf-audio-graph-card2-mix+spl << 483 */ << 484 #include "ulcb-kf-audio-graph-card2.dtsi" <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.