0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Copyright (C) 2018 PHYTEC Messtechnik GmbH
0004 * Author: Christian Hemp <c.hemp@phytec.de>
0005 */
0006
0007
0008 / {
0009 aliases {
0010 rtc0 = &i2c_rtc;
0011 };
0012
0013 backlight: backlight {
0014 compatible = "pwm-backlight";
0015 brightness-levels = <0 4 8 16 32 64 128 255>;
0016 default-brightness-level = <7>;
0017 power-supply = <®_backlight>;
0018 pwms = <&pwm1 0 5000000>;
0019 status = "okay";
0020 };
0021
0022 gpio_leds: leds {
0023 compatible = "gpio-leds";
0024 pinctrl-names = "default";
0025 pinctrl-0 = <&pinctrl_gpioleds>;
0026 status = "disabled";
0027
0028 red {
0029 label = "phyboard-mira:red";
0030 gpios = <&gpio5 22 GPIO_ACTIVE_HIGH>;
0031 };
0032
0033 green {
0034 label = "phyboard-mira:green";
0035 gpios = <&gpio5 23 GPIO_ACTIVE_HIGH>;
0036 };
0037
0038 blue {
0039 label = "phyboard-mira:blue";
0040 gpios = <&gpio5 24 GPIO_ACTIVE_HIGH>;
0041 linux,default-trigger = "mmc0";
0042 };
0043 };
0044
0045 reg_backlight: regulator-backlight {
0046 compatible = "regulator-fixed";
0047 regulator-name = "backlight_3v3";
0048 regulator-min-microvolt = <3300000>;
0049 regulator-max-microvolt = <3300000>;
0050 regulator-always-on;
0051 };
0052
0053 reg_en_switch: regulator-en-switch {
0054 compatible = "regulator-fixed";
0055 pinctrl-names = "default";
0056 pinctrl-0 = <&pinctrl_en_switch>;
0057 regulator-name = "Enable Switch";
0058 regulator-min-microvolt = <3300000>;
0059 regulator-max-microvolt = <3300000>;
0060 enable-active-high;
0061 gpio = <&gpio3 4 GPIO_ACTIVE_HIGH>;
0062 regulator-always-on;
0063 };
0064
0065 reg_flexcan1: regulator-flexcan1 {
0066 compatible = "regulator-fixed";
0067 pinctrl-names = "default";
0068 pinctrl-0 = <&pinctrl_flexcan1_en>;
0069 regulator-name = "flexcan1-reg";
0070 regulator-min-microvolt = <1500000>;
0071 regulator-max-microvolt = <1500000>;
0072 gpio = <&gpio2 20 GPIO_ACTIVE_HIGH>;
0073 enable-active-high;
0074 };
0075
0076 reg_panel: regulator-panel {
0077 compatible = "regulator-fixed";
0078 regulator-name = "panel-power-supply";
0079 regulator-min-microvolt = <12000000>;
0080 regulator-max-microvolt = <12000000>;
0081 regulator-always-on;
0082 };
0083
0084 reg_pcie: regulator-pcie {
0085 compatible = "regulator-fixed";
0086 pinctrl-names = "default";
0087 pinctrl-0 = <&pinctrl_pcie_reg>;
0088 regulator-name = "mPCIe_1V5";
0089 regulator-min-microvolt = <1500000>;
0090 regulator-max-microvolt = <1500000>;
0091 gpio = <&gpio3 0 GPIO_ACTIVE_HIGH>;
0092 enable-active-high;
0093 };
0094
0095 reg_usb_h1_vbus: usb-h1-vbus {
0096 compatible = "regulator-fixed";
0097 pinctrl-names = "default";
0098 pinctrl-0 = <&pinctrl_usbh1_vbus>;
0099 regulator-name = "usb_h1_vbus";
0100 regulator-min-microvolt = <5000000>;
0101 regulator-max-microvolt = <5000000>;
0102 gpio = <&gpio2 18 GPIO_ACTIVE_HIGH>;
0103 enable-active-high;
0104 };
0105
0106 reg_usbotg_vbus: usbotg-vbus {
0107 compatible = "regulator-fixed";
0108 pinctrl-names = "default";
0109 pinctrl-0 = <&pinctrl_usbotg_vbus>;
0110 regulator-name = "usb_otg_vbus";
0111 regulator-min-microvolt = <5000000>;
0112 regulator-max-microvolt = <5000000>;
0113 gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
0114 enable-active-high;
0115 };
0116
0117 panel {
0118 compatible = "auo,g104sn02";
0119 pinctrl-names = "default";
0120 pinctrl-0 = <&pinctrl_panel_en>;
0121 power-supply = <®_panel>;
0122 enable-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>;
0123 backlight = <&backlight>;
0124
0125 port {
0126 panel_in: endpoint {
0127 remote-endpoint = <&lvds0_out>;
0128 };
0129 };
0130 };
0131 };
0132
0133 &can1 {
0134 pinctrl-names = "default";
0135 pinctrl-0 = <&pinctrl_flexcan1>;
0136 xceiver-supply = <®_flexcan1>;
0137 status = "disabled";
0138 };
0139
0140 &hdmi {
0141 pinctrl-names = "default";
0142 pinctrl-0 = <&pinctrl_hdmicec>;
0143 ddc-i2c-bus = <&i2c2>;
0144 status = "disabled";
0145 };
0146
0147 &i2c1 {
0148 pinctrl-names = "default", "gpio";
0149 pinctrl-0 = <&pinctrl_i2c1>;
0150 pinctrl-1 = <&pinctrl_i2c1_gpio>;
0151 scl-gpios = <&gpio3 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0152 sda-gpios = <&gpio3 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0153 clock-frequency = <400000>;
0154 status = "disabled";
0155
0156 stmpe: touchctrl@44 {
0157 compatible = "st,stmpe811";
0158 pinctrl-names = "default";
0159 pinctrl-0 = <&pinctrl_stmpe>;
0160 reg = <0x44>;
0161 interrupt-parent = <&gpio7>;
0162 interrupts = <12 IRQ_TYPE_NONE>;
0163 status = "disabled";
0164
0165 stmpe_touchscreen {
0166 compatible = "st,stmpe-ts";
0167 st,sample-time = <4>;
0168 st,mod-12b = <1>;
0169 st,ref-sel = <0>;
0170 st,adc-freq = <1>;
0171 st,ave-ctrl = <1>;
0172 st,touch-det-delay = <2>;
0173 st,settling = <2>;
0174 st,fraction-z = <7>;
0175 st,i-drive = <1>;
0176 };
0177 };
0178
0179 i2c_rtc: rtc@68 {
0180 compatible = "microcrystal,rv4162";
0181 pinctrl-names = "default";
0182 pinctrl-0 = <&pinctrl_rtc_int>;
0183 reg = <0x68>;
0184 interrupt-parent = <&gpio7>;
0185 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
0186 status = "disabled";
0187 };
0188 };
0189
0190 &i2c2 {
0191 pinctrl-names = "default", "gpio";
0192 pinctrl-0 = <&pinctrl_i2c2>;
0193 pinctrl-1 = <&pinctrl_i2c2_gpio>;
0194 scl-gpios = <&gpio4 12 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0195 sda-gpios = <&gpio4 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0196 clock-frequency = <100000>;
0197 status = "disabled";
0198 };
0199
0200 &ldb {
0201 status = "okay";
0202
0203 lvds-channel@0 {
0204 fsl,data-mapping = "spwg";
0205 fsl,data-width = <24>;
0206 status = "disabled";
0207
0208 port@4 {
0209 reg = <4>;
0210
0211 lvds0_out: endpoint {
0212 remote-endpoint = <&panel_in>;
0213 };
0214 };
0215 };
0216 };
0217
0218 &pcie {
0219 pinctrl-names = "default";
0220 pinctrl-0 = <&pinctrl_pcie>;
0221 reset-gpio = <&gpio2 25 GPIO_ACTIVE_LOW>;
0222 vpcie-supply = <®_pcie>;
0223 status = "disabled";
0224 };
0225
0226 &pwm1 {
0227 #pwm-cells = <2>;
0228 pinctrl-names = "default";
0229 pinctrl-0 = <&pinctrl_pwm1>;
0230 status = "okay";
0231 };
0232
0233 &uart2 {
0234 pinctrl-names = "default";
0235 pinctrl-0 = <&pinctrl_uart2>;
0236 status = "okay";
0237 };
0238
0239 &uart3 {
0240 pinctrl-names = "default";
0241 pinctrl-0 = <&pinctrl_uart3>;
0242 uart-has-rtscts;
0243 status = "disabled";
0244 };
0245
0246 &usbh1 {
0247 vbus-supply = <®_usb_h1_vbus>;
0248 disable-over-current;
0249 status = "disabled";
0250 };
0251
0252 &usbotg {
0253 pinctrl-names = "default";
0254 pinctrl-0 = <&pinctrl_usbotg>;
0255 vbus-supply = <®_usbotg_vbus>;
0256 disable-over-current;
0257 status = "disabled";
0258 };
0259
0260 &usdhc1 {
0261 pinctrl-names = "default";
0262 pinctrl-0 = <&pinctrl_usdhc1>;
0263 cd-gpios = <&gpio6 31 GPIO_ACTIVE_LOW>;
0264 no-1-8-v;
0265 disable-wp;
0266 status = "disabled";
0267 };
0268
0269 &iomuxc {
0270 pinctrl_panel_en: panelen1grp {
0271 fsl,pins = <
0272 MX6QDL_PAD_EIM_EB0__GPIO2_IO28 0xb0b1
0273 >;
0274 };
0275
0276 pinctrl_en_switch: enswitchgrp {
0277 fsl,pins = <
0278 MX6QDL_PAD_EIM_DA4__GPIO3_IO04 0xb0b1
0279 >;
0280 };
0281
0282 pinctrl_flexcan1: flexcan1grp {
0283 fsl,pins = <
0284 MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x1b0b0
0285 MX6QDL_PAD_GPIO_8__FLEXCAN1_RX 0x1b0b0
0286 >;
0287 };
0288
0289 pinctrl_flexcan1_en: flexcan1engrp {
0290 fsl,pins = <
0291 MX6QDL_PAD_EIM_A18__GPIO2_IO20 0xb0b1
0292 >;
0293 };
0294
0295 pinctrl_gpioleds: gpioledsgrp {
0296 fsl,pins = <
0297 MX6QDL_PAD_CSI0_DAT4__GPIO5_IO22 0x1b0b0
0298 MX6QDL_PAD_CSI0_DAT5__GPIO5_IO23 0x1b0b0
0299 MX6QDL_PAD_CSI0_DAT6__GPIO5_IO24 0x1b0b0
0300 >;
0301 };
0302
0303 pinctrl_hdmicec: hdmicecgrp {
0304 fsl,pins = <
0305 MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
0306 >;
0307 };
0308
0309 pinctrl_i2c1: i2c1grp {
0310 fsl,pins = <
0311 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
0312 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
0313 >;
0314 };
0315
0316 pinctrl_i2c1_gpio: i2c1gpiogrp {
0317 fsl,pins = <
0318 MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x4001b8b1
0319 MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x4001b8b1
0320 >;
0321 };
0322
0323 pinctrl_i2c2: i2c2grp {
0324 fsl,pins = <
0325 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
0326 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
0327 >;
0328 };
0329
0330 pinctrl_i2c2_gpio: i2c2gpiogrp {
0331 fsl,pins = <
0332 MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x4001b8b1
0333 MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x4001b8b1
0334 >;
0335 };
0336
0337 pinctrl_pcie: pciegrp {
0338 fsl,pins = <
0339 MX6QDL_PAD_EIM_OE__GPIO2_IO25 0xb0b1
0340 >;
0341 };
0342
0343 pinctrl_pcie_reg: pciereggrp {
0344 fsl,pins = <
0345 MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0xb0b1
0346 >;
0347 };
0348
0349 pinctrl_pwm1: pwm1grp {
0350 fsl,pins = <
0351 MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b1
0352 >;
0353 };
0354
0355 pinctrl_rtc_int: rtcintgrp {
0356 fsl,pins = <
0357 MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x1b0b0
0358 >;
0359 };
0360
0361 pinctrl_stmpe: stmpegrp {
0362 fsl,pins = <
0363 MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0
0364 >;
0365 };
0366
0367 pinctrl_uart2: uart2grp {
0368 fsl,pins = <
0369 MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
0370 MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
0371 >;
0372 };
0373
0374 pinctrl_uart3: uart3grp {
0375 fsl,pins = <
0376 MX6QDL_PAD_EIM_EB3__UART3_CTS_B 0x1b0b1
0377 MX6QDL_PAD_EIM_D23__UART3_RTS_B 0x1b0b1
0378 MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
0379 MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
0380 >;
0381 };
0382
0383 pinctrl_usbh1_vbus: usbh1vbusgrp {
0384 fsl,pins = <
0385 MX6QDL_PAD_EIM_A20__GPIO2_IO18 0xb0b1
0386 >;
0387 };
0388
0389 pinctrl_usbotg: usbotggrp {
0390 fsl,pins = <
0391 MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
0392 >;
0393 };
0394
0395 pinctrl_usbotg_vbus: usbotgvbusgrp {
0396 fsl,pins = <
0397 MX6QDL_PAD_EIM_A19__GPIO2_IO19 0xb0b1
0398 >;
0399 };
0400
0401 pinctrl_usdhc1: usdhc1grp {
0402 fsl,pins = <
0403 MX6QDL_PAD_SD1_CMD__SD1_CMD 0x170f9
0404 MX6QDL_PAD_SD1_CLK__SD1_CLK 0x100f9
0405 MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170f9
0406 MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170f9
0407 MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170f9
0408 MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170f9
0409 MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0xb0b1 /* CD */
0410 >;
0411 };
0412 };