// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* * Copyright 2014-2024 Toradex */ #include #include #include #include #include "imx6q.dtsi" #include "imx6qdl-apalis.dtsi" / { aliases { i2c0 = &i2c1; i2c1 = &i2c3; i2c2 = &i2c2; rtc0 = &rtc_i2c; rtc1 = &snvs_rtc; }; chosen { stdout-path = "serial0:115200n8"; }; gpio-keys { compatible = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_gpio_keys>; wakeup { label = "Wake-Up"; gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; linux,code = ; debounce-interval = <10>; wakeup-source; }; }; reg_3v3_sw: regulator-3v3-sw { compatible = "regulator-fixed"; regulator-always-on; regulator-max-microvolt = <3300000>; regulator-min-microvolt = <3300000>; regulator-name = "3.3V_SW"; }; }; &i2c1 { #address-cells = <1>; #size-cells = <0>; status = "okay"; /* M41T0M6 real time clock on carrier board */ rtc_i2c: rtc@68 { compatible = "st,m41t0"; reg = <0x68>; }; }; /* * I2C3_SDA/SCL (CAM) on MXM3 pin 201/203 (e.g. camera sensor on carrier * board) */ &i2c3 { status = "okay"; adv7280: adv7280@21 { compatible = "adv7280"; reg = <0x21>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ipu1_csi0 &pinctrl_cam_mclk>; clocks = <&clks IMX6QDL_CLK_CKO2>; clock-names = "csi_mclk"; DOVDD-supply = <®_3p3v>; AVDD-supply = <®_3p3v>; DVDD-supply = <®_3p3v>; PVDD-supply = <®_3p3v>; csi_id = <0>; mclk = <24000000>; mclk_source = <1>; status = "okay"; }; /* Video ADC on Analog Camera Module */ adv7180: adv7180@21 { compatible = "adv,adv7180"; reg = <0x21>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ipu1_csi0 &pinctrl_cam_mclk>; clocks = <&clks IMX6QDL_CLK_CKO2>; clock-names = "csi_mclk"; DOVDD-supply = <®_3p3v>; /* 3.3v */ AVDD-supply = <®_3p3v>; /* 1.8v */ DVDD-supply = <®_3p3v>; /* 1.8v */ PVDD-supply = <®_3p3v>; /* 1.8v */ csi_id = <0>; mclk = <24000000>; mclk_source = <1>; cvbs = <1>; status = "disabled"; }; max9526: max9526@20 { compatible = "maxim,max9526"; reg = <0x20>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ipu1_csi0 &pinctrl_cam_mclk>; clocks = <&clks IMX6QDL_CLK_CKO2>; clock-names = "csi_mclk"; DVDDIO-supply = <®_3p3v>; /* 3.3v */ AVDD-supply = <®_3p3v>; /* 1.8v */ DVDD-supply = <®_3p3v>; /* 1.8v */ csi_id = <0>; mclk = <24000000>; mclk_source = <1>; cvbs = <1>; status = "okay"; }; }; &pcie { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_reset_moci>; /* active-high meaning opposite of regular PERST# active-low polarity */ reset-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>; reset-gpio-active-high; }; &pwm1 { status = "okay"; }; &pwm2 { status = "okay"; }; &pwm3 { status = "okay"; }; &pwm4 { status = "okay"; }; ®_usb_host_vbus { status = "okay"; }; ®_usb_otg_vbus { status = "okay"; }; &sata { status = "okay"; }; &spdif { status = "okay"; }; &uart1 { status = "okay"; }; &uart2 { status = "okay"; #if 0 linux,rs485-enabled-at-boot-time; rs485-rts-active-low; rs485-rx-during-tx; #endif }; &uart4 { status = "okay"; }; &uart5 { status = "okay"; }; &usbh1 { disable-over-current; vbus-supply = <®_usb_host_vbus>; status = "okay"; }; &usbotg { disable-over-current; vbus-supply = <®_usb_otg_vbus>; status = "okay"; }; &iomuxc { /* Mux the Apalis GPIOs */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_apalis_gpio1 &pinctrl_apalis_gpio2 &pinctrl_apalis_gpio3 &pinctrl_apalis_gpio4 &pinctrl_apalis_gpio7 &pinctrl_apalis_gpio8 >; };