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 beeper { 12 compatible = "pwm-beeper"; 13 pwms = <&pwm4 0 250000 0>; 14 beeper-hz = <4000>; 15 amp-supply = <®_vcc_3v3>; 16 }; 17 18 chosen { 19 // bootargs = "console=ttymxc2,115200 earlycon=ec_imx6q,0x30880000,115200"; 20 stdout-path = &uart3; 21 }; 22 23 gpio-keys { 24 compatible = "gpio-keys"; 25 pinctrl-names = "default"; 26 pinctrl-0 = <&pinctrl_gpiobutton>; 27 autorepeat; 28 29 switch1 { 30 label = "switch1"; 31 linux,code = <BTN_0>; 32 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>; 33 wakeup-source; 34 }; 35 36 btn2: switch2 { 37 label = "switch2"; 38 linux,code = <BTN_1>; 39 gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; 40 wakeup-source; 41 }; 42 43 switch3 { 44 label = "switch3"; 45 linux,code = <BTN_2>; 46 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; 47 wakeup-source; 48 }; 49 }; 50 51 gpio_leds: gpio-leds { 52 compatible = "gpio-leds"; 53 pinctrl-names = "default"; 54 pinctrl-0 = <&pinctrl_gpioled>; 55 56 led1 { 57 label = "led1"; 58 gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>; 59 linux,default-trigger = "default-on"; 60 }; 61 62 led2: led2 { 63 label = "led2"; 64 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; 65 linux,default-trigger = "heartbeat"; 66 }; 67 }; 68 69 pcie0_refclk: pcie0-refclk { 70 compatible = "fixed-clock"; 71 #clock-cells = <0>; 72 clock-frequency = <100000000>; 73 }; 74 75 reg_hub_vbus: regulator-hub-vbus { 76 compatible = "regulator-fixed"; 77 regulator-name = "MBA8MX_HUB_VBUS"; 78 regulator-min-microvolt = <5000000>; 79 regulator-max-microvolt = <5000000>; 80 }; 81 82 reg_sn65dsi83_1v8: regulator-sn65dsi83-1v8 { 83 compatible = "regulator-fixed"; 84 regulator-name = "SN65DSI83_1V8"; 85 regulator-min-microvolt = <1800000>; 86 regulator-max-microvolt = <1800000>; 87 gpio = <&expander0 5 GPIO_ACTIVE_HIGH>; 88 enable-active-high; 89 }; 90 91 reg_vcc_3v3: regulator-3v3 { 92 compatible = "regulator-fixed"; 93 regulator-name = "MBA8MX_3V3"; 94 regulator-min-microvolt = <3300000>; 95 regulator-max-microvolt = <3300000>; 96 }; 97 98 sound { 99 compatible = "fsl,imx-audio-tlv320aic32x4"; 100 model = "imx-audio-tlv320aic32x4"; 101 ssi-controller = <&sai3>; 102 audio-codec = <&tlv320aic3x04>; 103 }; 104}; 105 106&ecspi1 { 107 pinctrl-names = "default"; 108 pinctrl-0 = <&pinctrl_ecspi1>; 109 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 110 status = "okay"; 111}; 112 113&ecspi2 { 114 pinctrl-names = "default"; 115 pinctrl-0 = <&pinctrl_ecspi2>; 116 cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>; 117 status = "okay"; 118}; 119 120&fec1 { 121 pinctrl-names = "default"; 122 pinctrl-0 = <&pinctrl_fec1>; 123 phy-mode = "rgmii-id"; 124 phy-handle = <ðphy0>; 125 phy-supply = <®_vcc_3v3>; 126 fsl,magic-packet; 127 mac-address = [ 00 00 00 00 00 00 ]; 128 status = "okay"; 129 130 mdio { 131 #address-cells = <1>; 132 #size-cells = <0>; 133 134 ethphy0: ethernet-phy@e { 135 compatible = "ethernet-phy-ieee802.3-c22"; 136 reg = <0xe>; 137 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>; 138 ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>; 139 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 140 ti,dp83867-rxctrl-strap-quirk; 141 ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 142 enet-phy-lane-no-swap; 143 reset-gpios = <&expander2 7 GPIO_ACTIVE_LOW>; 144 reset-assert-us = <500000>; 145 reset-deassert-us = <500>; 146 }; 147 }; 148}; 149 150&i2c1 { 151 expander0: gpio@23 { 152 compatible = "nxp,pca9555"; 153 reg = <0x23>; 154 gpio-controller; 155 #gpio-cells = <2>; 156 vcc-supply = <®_vcc_3v3>; 157 interrupt-parent = <&gpio1>; 158 interrupts = <9 IRQ_TYPE_EDGE_FALLING>; 159 interrupt-controller; 160 #interrupt-cells = <2>; 161 162 sd-mux-oe-hog { 163 gpio-hog; 164 gpios = <8 0>; 165 output-low; 166 line-name = "SD_MUX_EN#"; 167 }; 168 169 boot-cfg-oe-hog { 170 gpio-hog; 171 gpios = <12 0>; 172 output-high; 173 line-name = "BOOT_CFG_OE#"; 174 }; 175 176 rst-usb-hub-hog { 177 gpio-hog; 178 gpios = <13 0>; 179 output-high; 180 line-name = "RST_USB_HUB#"; 181 }; 182 }; 183 184 expander1: gpio@24 { 185 compatible = "nxp,pca9555"; 186 reg = <0x24>; 187 gpio-controller; 188 #gpio-cells = <2>; 189 vcc-supply = <®_vcc_3v3>; 190 }; 191}; 192 193&i2c2 { 194 clock-frequency = <100000>; 195 pinctrl-names = "default", "gpio"; 196 pinctrl-0 = <&pinctrl_i2c2>; 197 pinctrl-1 = <&pinctrl_i2c2_gpio>; 198 scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 199 sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 200 status = "okay"; 201 202 tlv320aic3x04: audio-codec@18 { 203 compatible = "ti,tlv320aic32x4"; 204 reg = <0x18>; 205 reset-gpios = <&expander2 0 GPIO_ACTIVE_LOW>; 206 iov-supply = <®_vcc_3v3>; 207 ldoin-supply = <®_vcc_3v3>; 208 }; 209 210 sensor1: sensor@1f { 211 compatible = "nxp,se97", "jedec,jc-42.4-temp"; 212 reg = <0x1f>; 213 }; 214 215 eeprom3: eeprom@57 { 216 compatible = "nxp,se97b", "atmel,24c02"; 217 reg = <0x57>; 218 pagesize = <16>; 219 }; 220}; 221 222&i2c3 { 223 clock-frequency = <100000>; 224 pinctrl-names = "default", "gpio"; 225 pinctrl-0 = <&pinctrl_i2c3>; 226 pinctrl-1 = <&pinctrl_i2c3_gpio>; 227 scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 228 sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 229 status = "okay"; 230}; 231 232&pwm3 { 233 pinctrl-names = "default"; 234 pinctrl-0 = <&pinctrl_pwm3>; 235 status = "okay"; 236}; 237 238&pwm4 { 239 pinctrl-names = "default"; 240 pinctrl-0 = <&pinctrl_pwm4>; 241 status = "okay"; 242}; 243 244&sai3 { 245 pinctrl-names = "default"; 246 pinctrl-0 = <&pinctrl_sai3>; 247 #sound-dai-cells = <0>; 248 assigned-clock-rates = <49152000>; 249 status = "okay"; 250}; 251 252&snvs_pwrkey { 253 status = "okay"; 254}; 255 256&uart1 { 257 pinctrl-names = "default"; 258 pinctrl-0 = <&pinctrl_uart1>; 259 status = "okay"; 260}; 261 262&uart2 { 263 pinctrl-names = "default"; 264 pinctrl-0 = <&pinctrl_uart2>; 265 status = "okay"; 266}; 267 268/* console */ 269&uart3 { 270 pinctrl-names = "default"; 271 pinctrl-0 = <&pinctrl_uart3>; 272 status = "okay"; 273}; 274 275/* UART4 is assigned to Cortex-M4 */ 276&usdhc2 { 277 pinctrl-names = "default", "state_100mhz", "state_200mhz"; 278 pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 279 pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 280 pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 281 bus-width = <4>; 282 cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>; 283 disable-wp; 284 no-mmc; 285 no-sdio; 286 vmmc-supply = <®_usdhc2_vmmc>; 287 status = "okay"; 288}; 289