FILE
mba8mx.dtsi
File preview with syntax highlighting.
linux-6.19.14/arch/arm64/boot/dts/freescale/mba8mx.dtsi
1// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 2/* 3 * Copyright 2020-2021 TQ-Systems GmbH 4 */ 5 6#include <dt-bindings/net/ti-dp83867.h> 7 8/* TQ-Systems GmbH MBa8Mx baseboard */ 9 10/ { 11 backlight_lvds: backlight { 12 compatible = "pwm-backlight"; 13 pwms = <&pwm3 0 5000000 0>; 14 brightness-levels = <0 4 8 16 32 64 128 255>; 15 default-brightness-level = <7>; 16 power-supply = <®_12v>; 17 enable-gpios = <&expander2 2 GPIO_ACTIVE_HIGH>; 18 status = "disabled"; 19 }; 20 21 beeper { 22 compatible = "pwm-beeper"; 23 pwms = <&pwm4 0 250000 0>; 24 beeper-hz = <4000>; 25 amp-supply = <®_vcc_3v3>; 26 }; 27 28 chosen { 29 stdout-path = &uart3; 30 }; 31 32 clk_xtal25: clk-xtal25 { 33 compatible = "fixed-clock"; 34 #clock-cells = <0>; 35 clock-frequency = <25000000>; 36 }; 37 38 gpio-keys { 39 compatible = "gpio-keys"; 40 pinctrl-names = "default"; 41 pinctrl-0 = <&pinctrl_gpiobutton>; 42 autorepeat; 43 44 switch-1 { 45 label = "switch1"; 46 linux,code = <BTN_0>; 47 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>; 48 wakeup-source; 49 }; 50 51 btn2: switch-2 { 52 label = "switch2"; 53 linux,code = <BTN_1>; 54 gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; 55 wakeup-source; 56 }; 57 58 switch-3 { 59 label = "switch3"; 60 linux,code = <BTN_2>; 61 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; 62 wakeup-source; 63 }; 64 }; 65 66 gpio_leds: gpio-leds { 67 compatible = "gpio-leds"; 68 pinctrl-names = "default"; 69 pinctrl-0 = <&pinctrl_gpioled>; 70 71 led1 { 72 label = "led1"; 73 gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>; 74 linux,default-trigger = "default-on"; 75 }; 76 77 led2: led2 { 78 label = "led2"; 79 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; 80 linux,default-trigger = "heartbeat"; 81 }; 82 }; 83 84 gpio_delays: gpio-delays { 85 compatible = "gpio-delay"; 86 #gpio-cells = <3>; 87 gpio-controller; 88 gpios = <&expander0 6 GPIO_ACTIVE_HIGH>; 89 gpio-line-names = "LVDS_BRIDGE_EN_1V8"; 90 }; 91 92 panel: panel-lvds { 93 /* 94 * Display is not fixed, so compatible has to be added from 95 * DT overlay 96 */ 97 backlight = <&backlight_lvds>; 98 power-supply = <®_vcc_3v3>; 99 status = "disabled"; 100 101 port { 102 panel_in_lvds: endpoint { 103 remote-endpoint = <&lvds_bridge_out>; 104 }; 105 }; 106 }; 107 108 reg_12v: regulator-12v { 109 compatible = "regulator-fixed"; 110 regulator-name = "MBA8MX_12V"; 111 regulator-min-microvolt = <12000000>; 112 regulator-max-microvolt = <12000000>; 113 regulator-always-on; 114 }; 115 116 reg_hub_vbus: regulator-hub-vbus { 117 compatible = "regulator-fixed"; 118 regulator-name = "MBA8MX_HUB_VBUS"; 119 regulator-min-microvolt = <5000000>; 120 regulator-max-microvolt = <5000000>; 121 }; 122 123 reg_sn65dsi83_1v8: regulator-sn65dsi83-1v8 { 124 compatible = "regulator-fixed"; 125 regulator-name = "SN65DSI83_1V8"; 126 regulator-min-microvolt = <1800000>; 127 regulator-max-microvolt = <1800000>; 128 gpio = <&expander0 5 GPIO_ACTIVE_HIGH>; 129 enable-active-high; 130 }; 131 132 reg_vcc_3v3: regulator-3v3 { 133 compatible = "regulator-fixed"; 134 regulator-name = "MBA8MX_3V3"; 135 regulator-min-microvolt = <3300000>; 136 regulator-max-microvolt = <3300000>; 137 }; 138 139 sound: sound { 140 compatible = "fsl,imx-audio-tlv320aic32x4"; 141 model = "tqm-tlv320aic32"; 142 ssi-controller = <&sai3>; 143 audio-codec = <&tlv320aic3x04>; 144 audio-routing = 145 "IN3_L", "Mic Jack", 146 "Mic Jack", "Mic Bias", 147 "IN1_L", "Line In Jack", 148 "IN1_R", "Line In Jack", 149 "Line Out Jack", "LOL", 150 "Line Out Jack", "LOR"; 151 }; 152}; 153 154&ecspi1 { 155 pinctrl-names = "default"; 156 pinctrl-0 = <&pinctrl_ecspi1>; 157 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 158 status = "okay"; 159}; 160 161&ecspi2 { 162 pinctrl-names = "default"; 163 pinctrl-0 = <&pinctrl_ecspi2>; 164 cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>; 165 status = "okay"; 166}; 167 168&fec1 { 169 pinctrl-names = "default"; 170 pinctrl-0 = <&pinctrl_fec1>; 171 phy-mode = "rgmii-id"; 172 phy-handle = <ðphy0>; 173 phy-supply = <®_vcc_3v3>; 174 fsl,magic-packet; 175 mac-address = [ 00 00 00 00 00 00 ]; 176 status = "okay"; 177 178 mdio { 179 #address-cells = <1>; 180 #size-cells = <0>; 181 182 ethphy0: ethernet-phy@e { 183 compatible = "ethernet-phy-ieee802.3-c22"; 184 reg = <0xe>; 185 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>; 186 ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>; 187 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 188 ti,dp83867-rxctrl-strap-quirk; 189 ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 190 enet-phy-lane-no-swap; 191 reset-gpios = <&expander2 7 GPIO_ACTIVE_LOW>; 192 reset-assert-us = <500000>; 193 reset-deassert-us = <500>; 194 interrupt-parent = <&expander2>; 195 interrupts = <6 IRQ_TYPE_LEVEL_LOW>; 196 }; 197 }; 198}; 199 200&i2c1 { 201 expander0: gpio@23 { 202 compatible = "nxp,pca9555"; 203 reg = <0x23>; 204 gpio-controller; 205 #gpio-cells = <2>; 206 vcc-supply = <®_vcc_3v3>; 207 interrupt-parent = <&gpio1>; 208 interrupts = <9 IRQ_TYPE_EDGE_FALLING>; 209 interrupt-controller; 210 #interrupt-cells = <2>; 211 gpio-line-names = "", "", "", "", 212 "", "", "LVDS_BRIDGE_EN", "", 213 "", "", "", "", 214 "", "", "", ""; 215 216 sd-mux-oe-hog { 217 gpio-hog; 218 gpios = <8 0>; 219 output-low; 220 line-name = "SD_MUX_EN#"; 221 }; 222 223 boot-cfg-oe-hog { 224 gpio-hog; 225 gpios = <12 0>; 226 output-high; 227 line-name = "BOOT_CFG_OE#"; 228 }; 229 230 rst_usb_hub_hog: rst-usb-hub-hog { 231 gpio-hog; 232 gpios = <13 0>; 233 output-high; 234 line-name = "RST_USB_HUB#"; 235 }; 236 }; 237 238 expander1: gpio@24 { 239 compatible = "nxp,pca9555"; 240 reg = <0x24>; 241 gpio-controller; 242 #gpio-cells = <2>; 243 vcc-supply = <®_vcc_3v3>; 244 }; 245}; 246 247&i2c2 { 248 pinctrl-names = "default", "gpio"; 249 pinctrl-0 = <&pinctrl_i2c2>; 250 pinctrl-1 = <&pinctrl_i2c2_gpio>; 251 scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 252 sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 253 status = "okay"; 254 255 tlv320aic3x04: audio-codec@18 { 256 compatible = "ti,tlv320aic32x4"; 257 reg = <0x18>; 258 reset-gpios = <&expander2 0 GPIO_ACTIVE_LOW>; 259 iov-supply = <®_vcc_3v3>; 260 ldoin-supply = <®_vcc_3v3>; 261 }; 262 263 sensor1: temperator-sensor@1f { 264 compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 265 reg = <0x1f>; 266 }; 267 268 /* 269 * TUSB8041 is at 0x41, but not connected by default 270 * Note: TUSB8041 only supports 100 kHz! 271 */ 272 273 eeprom3: eeprom@57 { 274 compatible = "nxp,se97b", "atmel,24c02"; 275 reg = <0x57>; 276 pagesize = <16>; 277 vcc-supply = <®_vcc_3v3>; 278 }; 279 280 pcieclk: clk@68 { 281 compatible = "renesas,9fgv0441"; 282 reg = <0x68>; 283 clocks = <&clk_xtal25>; 284 #clock-cells = <1>; 285 }; 286}; 287 288&i2c3 { 289 pinctrl-names = "default", "gpio"; 290 pinctrl-0 = <&pinctrl_i2c3>; 291 pinctrl-1 = <&pinctrl_i2c3_gpio>; 292 scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 293 sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 294 status = "okay"; 295 296 dsi_lvds_bridge: bridge@2d { 297 compatible = "ti,sn65dsi84"; 298 reg = <0x2d>; 299 enable-gpios = <&gpio_delays 0 130000 0>; 300 vcc-supply = <®_sn65dsi83_1v8>; 301 status = "disabled"; 302 303 ports { 304 #address-cells = <1>; 305 #size-cells = <0>; 306 307 port@0 { 308 reg = <0>; 309 310 lvds_bridge_in: endpoint { 311 data-lanes = <1 2 3 4>; 312 remote-endpoint = <&mipi_dsi_out>; 313 }; 314 }; 315 316 port@2 { 317 reg = <2>; 318 319 lvds_bridge_out: endpoint { 320 remote-endpoint = <&panel_in_lvds>; 321 }; 322 }; 323 }; 324 }; 325}; 326 327&mipi_dsi_out { 328 data-lanes = <1 2 3 4>; 329 remote-endpoint = <&lvds_bridge_in>; 330}; 331 332&pwm3 { 333 pinctrl-names = "default"; 334 pinctrl-0 = <&pinctrl_pwm3>; 335 status = "okay"; 336}; 337 338&pwm4 { 339 pinctrl-names = "default"; 340 pinctrl-0 = <&pinctrl_pwm4>; 341 status = "okay"; 342}; 343 344&sai3 { 345 pinctrl-names = "default"; 346 pinctrl-0 = <&pinctrl_sai3>; 347 #sound-dai-cells = <0>; 348 assigned-clock-rates = <49152000>; 349 status = "okay"; 350}; 351 352&snvs_pwrkey { 353 status = "okay"; 354}; 355 356&uart1 { 357 pinctrl-names = "default"; 358 pinctrl-0 = <&pinctrl_uart1>; 359 status = "okay"; 360}; 361 362&uart2 { 363 pinctrl-names = "default"; 364 pinctrl-0 = <&pinctrl_uart2>; 365 status = "okay"; 366}; 367 368/* console */ 369&uart3 { 370 pinctrl-names = "default"; 371 pinctrl-0 = <&pinctrl_uart3>; 372 status = "okay"; 373}; 374 375&usdhc2 { 376 pinctrl-names = "default", "state_100mhz", "state_200mhz"; 377 pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 378 pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 379 pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 380 bus-width = <4>; 381 cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>; 382 disable-wp; 383 no-mmc; 384 no-sdio; 385 vmmc-supply = <®_usdhc2_vmmc>; 386 status = "okay"; 387};
~/
Read-only file preview.