1 // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
3 * Copyright 2020-2021 TQ-Systems GmbH
6 #include <dt-bindings/net/ti-dp83867.h>
8 /* TQ-Systems GmbH MBa8Mx baseboard */
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>;
22 compatible = "pwm-beeper";
23 pwms = <&pwm4 0 250000 0>;
25 amp-supply = <®_vcc_3v3>;
33 compatible = "gpio-keys";
34 pinctrl-names = "default";
35 pinctrl-0 = <&pinctrl_gpiobutton>;
41 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
48 gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
55 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
60 gpio_leds: gpio-leds {
61 compatible = "gpio-leds";
62 pinctrl-names = "default";
63 pinctrl-0 = <&pinctrl_gpioled>;
67 gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
68 linux,default-trigger = "default-on";
73 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
74 linux,default-trigger = "heartbeat";
78 gpio_delays: gpio-delays {
79 compatible = "gpio-delay";
82 gpios = <&expander0 6 GPIO_ACTIVE_HIGH>;
83 gpio-line-names = "LVDS_BRIDGE_EN_1V8";
88 * Display is not fixed, so compatible has to be added from
91 backlight = <&backlight_lvds>;
92 power-supply = <®_vcc_3v3>;
96 panel_in_lvds: endpoint {
97 data-lanes = <1 2 3 4>;
98 remote-endpoint = <&lvds_bridge_out>;
103 pcie0_refclk: pcie0-refclk {
104 compatible = "fixed-clock";
106 clock-frequency = <100000000>;
109 reg_12v: regulator-12v {
110 compatible = "regulator-fixed";
111 regulator-name = "MBA8MX_12V";
112 regulator-min-microvolt = <12000000>;
113 regulator-max-microvolt = <12000000>;
117 reg_hub_vbus: regulator-hub-vbus {
118 compatible = "regulator-fixed";
119 regulator-name = "MBA8MX_HUB_VBUS";
120 regulator-min-microvolt = <5000000>;
121 regulator-max-microvolt = <5000000>;
124 reg_sn65dsi83_1v8: regulator-sn65dsi83-1v8 {
125 compatible = "regulator-fixed";
126 regulator-name = "SN65DSI83_1V8";
127 regulator-min-microvolt = <1800000>;
128 regulator-max-microvolt = <1800000>;
129 gpio = <&expander0 5 GPIO_ACTIVE_HIGH>;
133 reg_vcc_3v3: regulator-3v3 {
134 compatible = "regulator-fixed";
135 regulator-name = "MBA8MX_3V3";
136 regulator-min-microvolt = <3300000>;
137 regulator-max-microvolt = <3300000>;
141 compatible = "fsl,imx-audio-tlv320aic32x4";
142 model = "imx-audio-tlv320aic32x4";
143 ssi-controller = <&sai3>;
144 audio-codec = <&tlv320aic3x04>;
149 pinctrl-names = "default";
150 pinctrl-0 = <&pinctrl_ecspi1>;
151 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
156 pinctrl-names = "default";
157 pinctrl-0 = <&pinctrl_ecspi2>;
158 cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>;
163 pinctrl-names = "default";
164 pinctrl-0 = <&pinctrl_fec1>;
165 phy-mode = "rgmii-id";
166 phy-handle = <ðphy0>;
167 phy-supply = <®_vcc_3v3>;
169 mac-address = [ 00 00 00 00 00 00 ];
173 #address-cells = <1>;
176 ethphy0: ethernet-phy@e {
177 compatible = "ethernet-phy-ieee802.3-c22";
179 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
180 ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
181 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
182 ti,dp83867-rxctrl-strap-quirk;
183 ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
184 enet-phy-lane-no-swap;
185 reset-gpios = <&expander2 7 GPIO_ACTIVE_LOW>;
186 reset-assert-us = <500000>;
187 reset-deassert-us = <500>;
194 compatible = "nxp,pca9555";
198 vcc-supply = <®_vcc_3v3>;
199 interrupt-parent = <&gpio1>;
200 interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
201 interrupt-controller;
202 #interrupt-cells = <2>;
203 gpio-line-names = "", "", "", "",
204 "", "", "LVDS_BRIDGE_EN", "",
212 line-name = "SD_MUX_EN#";
219 line-name = "BOOT_CFG_OE#";
226 line-name = "RST_USB_HUB#";
231 compatible = "nxp,pca9555";
235 vcc-supply = <®_vcc_3v3>;
240 clock-frequency = <100000>;
241 pinctrl-names = "default", "gpio";
242 pinctrl-0 = <&pinctrl_i2c2>;
243 pinctrl-1 = <&pinctrl_i2c2_gpio>;
244 scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
245 sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
248 tlv320aic3x04: audio-codec@18 {
249 compatible = "ti,tlv320aic32x4";
251 reset-gpios = <&expander2 0 GPIO_ACTIVE_LOW>;
252 iov-supply = <®_vcc_3v3>;
253 ldoin-supply = <®_vcc_3v3>;
256 sensor1: temperator-sensor@1f {
257 compatible = "nxp,se97b", "jedec,jc-42.4-temp";
262 compatible = "nxp,se97b", "atmel,24c02";
265 vcc-supply = <®_vcc_3v3>;
270 clock-frequency = <100000>;
271 pinctrl-names = "default", "gpio";
272 pinctrl-0 = <&pinctrl_i2c3>;
273 pinctrl-1 = <&pinctrl_i2c3_gpio>;
274 scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
275 sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
278 dsi_lvds_bridge: bridge@2d {
279 compatible = "ti,sn65dsi84";
281 enable-gpios = <&gpio_delays 0 130000 0>;
282 vcc-supply = <®_sn65dsi83_1v8>;
286 #address-cells = <1>;
292 lvds_bridge_in: endpoint {
293 data-lanes = <1 2 3 4>;
294 remote-endpoint = <&mipi_dsi_out>;
301 lvds_bridge_out: endpoint {
302 remote-endpoint = <&panel_in_lvds>;
310 samsung,burst-clock-frequency = <891000000>;
311 samsung,esc-clock-frequency = <20000000>;
317 mipi_dsi_out: endpoint {
318 data-lanes = <1 2 3 4>;
319 remote-endpoint = <&lvds_bridge_in>;
326 pinctrl-names = "default";
327 pinctrl-0 = <&pinctrl_pwm3>;
332 pinctrl-names = "default";
333 pinctrl-0 = <&pinctrl_pwm4>;
338 pinctrl-names = "default";
339 pinctrl-0 = <&pinctrl_sai3>;
340 #sound-dai-cells = <0>;
341 assigned-clock-rates = <49152000>;
350 pinctrl-names = "default";
351 pinctrl-0 = <&pinctrl_uart1>;
356 pinctrl-names = "default";
357 pinctrl-0 = <&pinctrl_uart2>;
363 pinctrl-names = "default";
364 pinctrl-0 = <&pinctrl_uart3>;
369 pinctrl-names = "default", "state_100mhz", "state_200mhz";
370 pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
371 pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
372 pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
374 cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
378 vmmc-supply = <®_usdhc2_vmmc>;