i.MX device tree changes for 5.14:
- New board support: i.MX6Q DaSheng COM-9XX SBC board, i.MX28 based XEA board, GE B1x5v2 boards. - A series from Christoph Niedermaier to correct imx6q-dhcom descriptions, add device aliases and ethernet VIO regulator. - Correct Ethernet node name for imx51-digi-connectcore-som and imx53-ard board to comply DT schema. - A couple of update on imx6dl-yapp4 board, configuring OLED display segment offset, and using aliases to set custom MMC device indexes. - A series from Oleksij Rempel and Robin van der Gracht to update Protonic boards: imx6dl-prtvt7, imx6dl-plym2m and imx6qdl-vicut1. - A series from Shengjiu Wang to improve various audio support on NXP reference boards. - Rename pinfunc for i.MX25 GPIO_[A-F] pads for consistency. -----BEGIN PGP SIGNATURE----- iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmDFuRMUHHNoYXduZ3Vv QGtlcm5lbC5vcmcACgkQUFdYWoewfM4VgAf/Z69ssu3l3ZPrHncXx6bnX7X+Ja0H NxccV3DBtdaaCBODM9bnJ3HbWA3PFX0azA2q2CdOpjyk7UWeRO/RuZ5GZbdWkZfK VrlJxX9fPpvJZp6HQS0a4cVHgJZDJ5hSef+ThwE/Yanm0cf+0vOW5M3enR+1j/xD tsIyno5dj3I0dailhZy5KCChYznWF1DJcJ7spm5AAejXV+iSAX1q29zQ4q6yT/18 9zfuinaz3zrg0eN7qNpU5XziNv0Dbr06VBWM5Tfiio4DL7iM5jePA1LjWrvmH2Sk NC1Kjke3ahl7illudSHUhtmLwtYh7dpRElf6saZBPMP+OpKF+hiAEog/2w== =ja0d -----END PGP SIGNATURE----- Merge tag 'imx-dt-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/dt i.MX device tree changes for 5.14: - New board support: i.MX6Q DaSheng COM-9XX SBC board, i.MX28 based XEA board, GE B1x5v2 boards. - A series from Christoph Niedermaier to correct imx6q-dhcom descriptions, add device aliases and ethernet VIO regulator. - Correct Ethernet node name for imx51-digi-connectcore-som and imx53-ard board to comply DT schema. - A couple of update on imx6dl-yapp4 board, configuring OLED display segment offset, and using aliases to set custom MMC device indexes. - A series from Oleksij Rempel and Robin van der Gracht to update Protonic boards: imx6dl-prtvt7, imx6dl-plym2m and imx6qdl-vicut1. - A series from Shengjiu Wang to improve various audio support on NXP reference boards. - Rename pinfunc for i.MX25 GPIO_[A-F] pads for consistency. * tag 'imx-dt-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (30 commits) ARM: dts: imx6: Add GE B1x5v2 ARM: dts: imx6q-dhcom: Add ethernet VIO regulator ARM: dts: imx6q-dhcom: Add aliases for i2c, serial and rtc ARM: dts: imx6q-dhcom: Add gpios pinctrl for i2c bus recovery ARM: dts: imx6q-dhcom: Fix ethernet plugin detection problems ARM: dts: imx6q-dhcom: Fix ethernet reset time properties ARM: dts: imx6dl-prtvt7: Remove unused 'sound-dai-cells' from ssi1 node ARM: dts: imx6dl-prtvt7: The sgtl5000 uses i2s not ac97 ARM: dts: imx6qdl-vicut1: add interrupt-counter nodes ARM: dts: imx6dl-prtvt7: Enable the VPU ARM: dts: imx6dl: enable touchscreen debounce filter on PLYM2M and PRTVT7 boards ARM: dts: imx6dl-plym2m: remove touchscreen-size-* properties ARM: dts: imx6dl-prtvt7: fix PWM cell count for the backlight node. ARM: dts: imx6dl-prtvt7: Remove backlight enable gpio ARM: dts: imx6dl-prtvt7: add TSC2046 touchscreen node ARM: dts: imx53-ard: Correct Ethernet node name ARM: dts: i.MX51: digi-connectcore-som: Correct Ethernet node name ARM: dts: imx6dl-riotboard: configure PHY clock and set proper EEE value ARM: dts: imx6: edmqmx6: set phy-mode to RGMII-ID ARM: dts: imx6qdl-sabresd: Configure the gpio for hp detect ... Link: https://lore.kernel.org/r/20210613082544.16067-4-shawnguo@kernel.org Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
970d180b8b
|
@ -515,8 +515,14 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
|
|||
imx6q-display5-tianma-tm070-1280x768.dtb \
|
||||
imx6q-dmo-edmqmx6.dtb \
|
||||
imx6q-dms-ba16.dtb \
|
||||
imx6q-ds.dtb \
|
||||
imx6q-emcon-avari.dtb \
|
||||
imx6q-evi.dtb \
|
||||
imx6dl-b105pv2.dtb \
|
||||
imx6dl-b105v2.dtb \
|
||||
imx6dl-b125v2.dtb \
|
||||
imx6dl-b125pv2.dtb \
|
||||
imx6dl-b155v2.dtb \
|
||||
imx6q-gk802.dtb \
|
||||
imx6q-gw51xx.dtb \
|
||||
imx6q-gw52xx.dtb \
|
||||
|
@ -727,7 +733,8 @@ dtb-$(CONFIG_ARCH_MXS) += \
|
|||
imx28-m28evk.dtb \
|
||||
imx28-sps1.dtb \
|
||||
imx28-ts4600.dtb \
|
||||
imx28-tx28.dtb
|
||||
imx28-tx28.dtb \
|
||||
imx28-xea.dtb
|
||||
dtb-$(CONFIG_ARCH_NOMADIK) += \
|
||||
ste-nomadik-s8815.dtb \
|
||||
ste-nomadik-nhk15.dtb
|
||||
|
|
|
@ -563,15 +563,15 @@
|
|||
#define MX25_PAD_DE_B__DE_B 0x1f0 0x3ec 0x000 0x00 0x000
|
||||
#define MX25_PAD_DE_B__GPIO_2_20 0x1f0 0x3ec 0x000 0x05 0x000
|
||||
|
||||
#define MX25_PAD_GPIO_A__GPIO_A 0x1f4 0x3f0 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_A__GPIO_1_0 0x1f4 0x3f0 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_A__CAN1_TX 0x1f4 0x3f0 0x000 0x06 0x000
|
||||
#define MX25_PAD_GPIO_A__USBOTG_PWR 0x1f4 0x3f0 0x000 0x02 0x000
|
||||
|
||||
#define MX25_PAD_GPIO_B__GPIO_B 0x1f8 0x3f4 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_B__GPIO_1_1 0x1f8 0x3f4 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_B__USBOTG_OC 0x1f8 0x3f4 0x57c 0x02 0x001
|
||||
#define MX25_PAD_GPIO_B__CAN1_RX 0x1f8 0x3f4 0x480 0x06 0x001
|
||||
|
||||
#define MX25_PAD_GPIO_C__GPIO_C 0x1fc 0x3f8 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_C__GPIO_1_2 0x1fc 0x3f8 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_C__PWM4_PWMO 0x1fc 0x3f8 0x000 0x01 0x000
|
||||
#define MX25_PAD_GPIO_C__I2C2_SCL 0x1fc 0x3f8 0x51c 0x02 0x001
|
||||
#define MX25_PAD_GPIO_C__KPP_COL4 0x1fc 0x3f8 0x52c 0x03 0x001
|
||||
|
@ -580,18 +580,18 @@
|
|||
#define MX25_PAD_GPIO_C__CAN2_TX 0x1fc 0x3f8 0x000 0x06 0x000
|
||||
#define MX25_PAD_GPIO_C__CSPI2_SS2 0x1fc 0x3f8 0x000 0x07 0x000
|
||||
|
||||
#define MX25_PAD_GPIO_D__GPIO_D 0x200 0x3fc 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_D__GPIO_1_3 0x200 0x3fc 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_D__I2C2_SDA 0x200 0x3fc 0x520 0x02 0x001
|
||||
#define MX25_PAD_GPIO_D__CAN2_RX 0x200 0x3fc 0x484 0x06 0x001
|
||||
#define MX25_PAD_GPIO_D__CSPI3_SS2 0x200 0x3fc 0x4c4 0x07 0x001
|
||||
|
||||
#define MX25_PAD_GPIO_E__GPIO_E 0x204 0x400 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_E__GPIO_1_4 0x204 0x400 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_E__I2C3_CLK 0x204 0x400 0x524 0x01 0x002
|
||||
#define MX25_PAD_GPIO_E__LD16 0x204 0x400 0x000 0x02 0x000
|
||||
#define MX25_PAD_GPIO_E__AUD7_TXD 0x204 0x400 0x000 0x04 0x000
|
||||
#define MX25_PAD_GPIO_E__UART4_RXD 0x204 0x400 0x570 0x06 0x002
|
||||
|
||||
#define MX25_PAD_GPIO_F__GPIO_F 0x208 0x404 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_F__GPIO_1_5 0x208 0x404 0x000 0x00 0x000
|
||||
#define MX25_PAD_GPIO_F__LD17 0x208 0x404 0x000 0x02 0x000
|
||||
#define MX25_PAD_GPIO_F__AUD7_TXC 0x208 0x404 0x000 0x04 0x000
|
||||
#define MX25_PAD_GPIO_F__UART4_TXD 0x208 0x404 0x000 0x06 0x000
|
||||
|
|
|
@ -0,0 +1,170 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2021
|
||||
* Lukasz Majewski, DENX Software Engineering, lukma@denx.de
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx28.dtsi"
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
spi2 = &ssp3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "root=/dev/mmcblk0p2 rootfstype=ext4 ro rootwait console=ttyAMA0,115200 panic=1";
|
||||
};
|
||||
|
||||
memory@40000000 {
|
||||
reg = <0x40000000 0x08000000>;
|
||||
};
|
||||
|
||||
reg_3v3: regulator-reg-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
reg_usb_5v: regulator-reg-usb-5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_fec_3v3: regulator-reg-fec-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "fec-phy";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
|
||||
&duart {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&duart_pins_a>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c0_pins_a>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saif0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&saif0_pins_a>;
|
||||
#sound-dai-cells = <0>;
|
||||
assigned-clocks = <&clks 53>;
|
||||
assigned-clock-rates = <12000000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saif1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&saif1_pins_a>;
|
||||
fsl,saif-master = <&saif0>;
|
||||
#sound-dai-cells = <0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spi3_pins_a {
|
||||
fsl,pinmux-ids = <
|
||||
MX28_PAD_AUART2_RX__SSP3_D4
|
||||
MX28_PAD_AUART2_TX__SSP3_D5
|
||||
MX28_PAD_SSP3_SCK__SSP3_SCK
|
||||
MX28_PAD_SSP3_MOSI__SSP3_CMD
|
||||
MX28_PAD_SSP3_MISO__SSP3_D0
|
||||
MX28_PAD_SSP3_SS0__SSP3_D3
|
||||
MX28_PAD_AUART2_TX__GPIO_3_9
|
||||
>;
|
||||
};
|
||||
|
||||
&ssp0 {
|
||||
compatible = "fsl,imx28-mmc";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mmc0_8bit_pins_a>;
|
||||
bus-width = <8>;
|
||||
vmmc-supply = <®_3v3>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssp2 {
|
||||
compatible = "fsl,imx28-spi";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi2_pins_a>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssp3 {
|
||||
compatible = "fsl,imx28-spi";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi3_pins_a>;
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
spi-max-frequency = <40000000>;
|
||||
reg = <0>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@80000 {
|
||||
label = "env0";
|
||||
reg = <0x80000 0x10000>;
|
||||
};
|
||||
|
||||
partition@90000 {
|
||||
label = "env1";
|
||||
reg = <0x90000 0x10000>;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
label = "kernel";
|
||||
reg = <0x100000 0x400000>;
|
||||
};
|
||||
|
||||
partition@500000 {
|
||||
label = "swupdate";
|
||||
reg = <0x500000 0x800000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usb0 {
|
||||
vbus-supply = <®_usb_5v>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&usb0_pins_b>, <&usb0_id_pins_a>;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbphy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb1 {
|
||||
vbus-supply = <®_usb_5v>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&usb1_pins_b>;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbphy1 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,99 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2021
|
||||
* Lukasz Majewski, DENX Software Engineering, lukma@denx.de
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx28-lwe.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "lwn,imx28-xea", "fsl,imx28";
|
||||
};
|
||||
|
||||
&can0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&can1_pins_a>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c1_pins_b>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hog_pins_a &hog_pins_tiva>;
|
||||
|
||||
hog_pins_a: hog@0 {
|
||||
reg = <0>;
|
||||
fsl,pinmux-ids = <
|
||||
MX28_PAD_GPMI_D00__GPIO_0_0
|
||||
MX28_PAD_GPMI_D02__GPIO_0_2
|
||||
MX28_PAD_GPMI_D05__GPIO_0_5
|
||||
MX28_PAD_GPMI_CE1N__GPIO_0_17
|
||||
MX28_PAD_GPMI_RDY0__GPIO_0_20
|
||||
MX28_PAD_GPMI_RDY1__GPIO_0_21
|
||||
MX28_PAD_GPMI_RDY2__GPIO_0_22
|
||||
MX28_PAD_GPMI_RDN__GPIO_0_24
|
||||
MX28_PAD_GPMI_CLE__GPIO_0_27
|
||||
MX28_PAD_LCD_VSYNC__GPIO_1_28
|
||||
MX28_PAD_SSP1_SCK__GPIO_2_12
|
||||
MX28_PAD_SSP1_CMD__GPIO_2_13
|
||||
MX28_PAD_SSP2_SS1__GPIO_2_20
|
||||
MX28_PAD_SSP2_SS2__GPIO_2_21
|
||||
MX28_PAD_LCD_D00__GPIO_1_0
|
||||
MX28_PAD_LCD_D01__GPIO_1_1
|
||||
MX28_PAD_LCD_D02__GPIO_1_2
|
||||
MX28_PAD_LCD_D03__GPIO_1_3
|
||||
MX28_PAD_LCD_D04__GPIO_1_4
|
||||
MX28_PAD_LCD_D05__GPIO_1_5
|
||||
MX28_PAD_LCD_D06__GPIO_1_6
|
||||
>;
|
||||
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
||||
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
||||
fsl,pull-up = <MXS_PULL_DISABLE>;
|
||||
};
|
||||
|
||||
hog_pins_tiva: hog@1 {
|
||||
reg = <1>;
|
||||
fsl,pinmux-ids = <
|
||||
MX28_PAD_GPMI_RDY3__GPIO_0_23
|
||||
MX28_PAD_GPMI_WRN__GPIO_0_25
|
||||
>;
|
||||
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
||||
fsl,pull-up = <MXS_PULL_DISABLE>;
|
||||
};
|
||||
|
||||
hog_pins_coding: hog@2 {
|
||||
reg = <2>;
|
||||
fsl,pinmux-ids = <
|
||||
MX28_PAD_GPMI_D01__GPIO_0_1
|
||||
MX28_PAD_GPMI_D03__GPIO_0_3
|
||||
MX28_PAD_GPMI_D04__GPIO_0_4
|
||||
MX28_PAD_GPMI_D06__GPIO_0_6
|
||||
MX28_PAD_GPMI_D07__GPIO_0_7
|
||||
>;
|
||||
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
||||
fsl,pull-up = <MXS_PULL_DISABLE>;
|
||||
};
|
||||
};
|
||||
|
||||
®_fec_3v3 {
|
||||
gpio = <&gpio0 0 0>;
|
||||
};
|
||||
|
||||
®_usb_5v {
|
||||
gpio = <&gpio0 2 0>;
|
||||
};
|
||||
|
||||
&spi2_pins_a {
|
||||
fsl,pinmux-ids = <
|
||||
MX28_PAD_SSP2_SCK__SSP2_SCK
|
||||
MX28_PAD_SSP2_MOSI__SSP2_CMD
|
||||
MX28_PAD_SSP2_MISO__SSP2_D0
|
||||
MX28_PAD_SSP2_SS0__GPIO_2_19
|
||||
>;
|
||||
};
|
|
@ -206,7 +206,7 @@
|
|||
pinctrl-0 = <&pinctrl_weim>;
|
||||
status = "okay";
|
||||
|
||||
lan9221: lan9221@5,0 {
|
||||
lan9221: ethernet@5,0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lan9221>;
|
||||
compatible = "smsc,lan9221", "smsc,lan9115";
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
reg = <0xf4000000 0x3ff0000>;
|
||||
ranges;
|
||||
|
||||
lan9220@f4000000 {
|
||||
ethernet@f4000000 {
|
||||
compatible = "smsc,lan9220", "smsc,lan9115";
|
||||
reg = <0xf4000000 0x2000000>;
|
||||
phy-mode = "mii";
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B105Pv2
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6dl-b1x5pv2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "General Electric B105Pv2";
|
||||
compatible = "ge,imx6dl-b105pv2", "congatec,qmx6", "fsl,imx6dl";
|
||||
|
||||
panel {
|
||||
compatible = "auo,g101evn010";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
touchscreen@41 {
|
||||
compatible = "ilitek,ili251x";
|
||||
reg = <0x41>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 =<&pinctrl_q7_gpio0>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&tca6424a 21 GPIO_ACTIVE_LOW>;
|
||||
touchscreen-size-x = <1280>;
|
||||
touchscreen-size-y = <800>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B105v2
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6dl-b1x5v2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "General Electric B105v2";
|
||||
compatible = "ge,imx6dl-b105v2", "congatec,qmx6", "fsl,imx6dl";
|
||||
|
||||
panel {
|
||||
compatible = "auo,g101evn010";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
touchscreen@41 {
|
||||
compatible = "ilitek,ili251x";
|
||||
reg = <0x41>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 =<&pinctrl_q7_gpio0>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&tca6424a 21 GPIO_ACTIVE_LOW>;
|
||||
touchscreen-size-x = <1280>;
|
||||
touchscreen-size-y = <800>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,30 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B125Pv2
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6dl-b1x5pv2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "General Electric B125Pv2";
|
||||
compatible = "ge,imx6dl-b125pv2", "congatec,qmx6", "fsl,imx6dl";
|
||||
|
||||
panel {
|
||||
compatible = "auo,g121ean01";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
touchscreen@2a {
|
||||
compatible = "eeti,exc80h60";
|
||||
reg = <0x2a>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 =<&pinctrl_q7_gpio0>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
reset-gpios = <&tca6424a 21 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,30 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B125v2
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6dl-b1x5v2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "General Electric B125v2";
|
||||
compatible = "ge,imx6dl-b125v2", "congatec,qmx6", "fsl,imx6dl";
|
||||
|
||||
panel {
|
||||
compatible = "auo,g121ean01";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
touchscreen@2a {
|
||||
compatible = "eeti,exc80h60";
|
||||
reg = <0x2a>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 =<&pinctrl_q7_gpio0>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
reset-gpios = <&tca6424a 21 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B155v2
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6dl-b1x5v2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "General Electric B155v2";
|
||||
compatible = "ge,imx6dl-b155v2", "congatec,qmx6", "fsl,imx6dl";
|
||||
|
||||
panel {
|
||||
compatible = "auo,g156xtn01";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
touchscreen@2a {
|
||||
compatible = "eeti,exc80h84";
|
||||
reg = <0x2a>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 =<&pinctrl_q7_gpio0>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
reset-gpios = <&tca6424a 21 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,413 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B1x5Pv2
|
||||
// patient monitor series
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include "imx6dl-qmx6.dtsi"
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = &uart3;
|
||||
};
|
||||
|
||||
/* Do not allow frequencies above 800MHz */
|
||||
cpus {
|
||||
cpu@0 {
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
792000 1175000
|
||||
396000 1150000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC-PU uV */
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
>;
|
||||
};
|
||||
|
||||
cpu@1 {
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
792000 1175000
|
||||
396000 1150000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC-PU uV */
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
reg_syspwr: regulator-12v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "SYS_PWR";
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
};
|
||||
|
||||
reg_5v_pmc: regulator-5v-pmc {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V PMC";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <®_syspwr>;
|
||||
};
|
||||
|
||||
reg_5v: regulator-5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <®_syspwr>;
|
||||
};
|
||||
|
||||
reg_3v3: regulator-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <®_syspwr>;
|
||||
};
|
||||
|
||||
reg_5v0_audio: regulator-5v0-audio {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V0_AUDIO";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <®_5v>;
|
||||
gpio = <&tca6424a 16 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
/*
|
||||
* This must be always-on for da7212, which has some not
|
||||
* properly documented dependencies for it's speaker supply
|
||||
* pin. The issue manifests as speaker volume being very low.
|
||||
*/
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
|
||||
reg_3v3_audio: regulator-3v3-audio {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3_AUDIO";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <®_3v3>;
|
||||
pinctrl-0 = <&pinctrl_q7_hda_reset>;
|
||||
pinctrl-names = "default";
|
||||
gpio = <&gpio6 8 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_2v5_audio: regulator-2v5-audio {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "2V5_AUDIO";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-always-on;
|
||||
vin-supply = <®_3v3_audio>;
|
||||
|
||||
};
|
||||
|
||||
reg_wlan: regulator-wlan {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "WLAN";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <®_3v3>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_sdio_power>;
|
||||
gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
startup-delay-us = <70000>;
|
||||
};
|
||||
|
||||
reg_bl: regulator-backlight {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "LED_VCC";
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
vin-supply = <®_syspwr>;
|
||||
pinctrl-0 = <&pinctrl_q7_lcd_power>;
|
||||
pinctrl-names = "default";
|
||||
gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_lcd: regulator-lcd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "LCD_5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <®_5v>;
|
||||
};
|
||||
|
||||
usb_power: regulator-usb-power {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB POWER";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <®_5v>;
|
||||
};
|
||||
|
||||
charger: battery-charger {
|
||||
compatible = "gpio-charger"; /* ti,bq24172 */
|
||||
charger-type = "mains";
|
||||
gpios = <&tca6424a 3 GPIO_ACTIVE_LOW>;
|
||||
charge-current-limit-gpios = <&tca6424a 11 GPIO_ACTIVE_HIGH>,
|
||||
<&tca6424a 12 GPIO_ACTIVE_HIGH>;
|
||||
charge-current-limit-mapping = <1300000 0x0>,
|
||||
<700000 0x1>,
|
||||
<0 0x2>;
|
||||
charge-status-gpios = <&tca6424a 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
poweroff {
|
||||
compatible = "gpio-poweroff";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_spi_cs1>;
|
||||
gpios = <&gpio4 25 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
power-button-key {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_sleep_button>;
|
||||
|
||||
power-button {
|
||||
label = "power button";
|
||||
gpios = <&gpio4 7 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_POWER>;
|
||||
};
|
||||
};
|
||||
|
||||
rotary-encoder-key {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
rotary-encoder-press {
|
||||
label = "rotary-encoder press";
|
||||
gpios = <&tca6424a 0 GPIO_ACTIVE_HIGH>;
|
||||
linux,code = <KEY_ENTER>;
|
||||
linux,can-disable;
|
||||
};
|
||||
};
|
||||
|
||||
rotary-encoder {
|
||||
compatible = "rotary-encoder";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_gpio2 &pinctrl_q7_gpio4>;
|
||||
gpios = <&gpio4 26 GPIO_ACTIVE_LOW>, <&gpio1 0 GPIO_ACTIVE_LOW>;
|
||||
rotary-encoder,relative-axis;
|
||||
rotary-encoder,steps-per-period = <2>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_gpio1 &pinctrl_q7_gpio3 &pinctrl_q7_gpio5>;
|
||||
|
||||
alarm1 {
|
||||
label = "alarm:red";
|
||||
gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
alarm2 {
|
||||
label = "alarm:yellow";
|
||||
gpios = <&gpio4 27 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
alarm3 {
|
||||
label = "alarm:blue";
|
||||
gpios = <&gpio4 15 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_backlight_enable>;
|
||||
power-supply = <®_bl>;
|
||||
pwms = <&pwm4 0 5000000 0>;
|
||||
brightness-levels = <0 255>;
|
||||
num-interpolated-steps = <255>;
|
||||
default-brightness-level = <179>;
|
||||
enable-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
panel {
|
||||
backlight = <&backlight>;
|
||||
power-supply = <®_lcd>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "audio-card";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,bitclock-master = <&dailink_master>;
|
||||
simple-audio-card,frame-master = <&dailink_master>;
|
||||
simple-audio-card,widgets = "Speaker", "Ext Spk";
|
||||
simple-audio-card,audio-routing = "Ext Spk", "LINE";
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&ssi1>;
|
||||
};
|
||||
|
||||
dailink_master: simple-audio-card,codec {
|
||||
sound-dai = <&codec>;
|
||||
};
|
||||
};
|
||||
|
||||
clk_ext_audio_codec: clock-codec {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <12288000>;
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
battery: battery@b {
|
||||
compatible = "ti,bq20z65", "sbs,sbs-battery";
|
||||
reg = <0x0b>;
|
||||
sbs,battery-detect-gpios = <&tca6424a 5 GPIO_ACTIVE_LOW>;
|
||||
sbs,i2c-retry-count = <5>;
|
||||
power-supplies = <&charger>;
|
||||
};
|
||||
|
||||
codec: audio-codec@1a {
|
||||
compatible = "dlg,da7212";
|
||||
reg = <0x1a>;
|
||||
#sound-dai-cells = <0>;
|
||||
VDDA-supply = <®_2v5_audio>;
|
||||
VDDSP-supply = <®_5v0_audio>;
|
||||
VDDMIC-supply = <®_3v3_audio>;
|
||||
VDDIO-supply = <®_3v3_audio>;
|
||||
clocks = <&clk_ext_audio_codec>;
|
||||
clock-names = "mclk";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c5 {
|
||||
tca6424a: gpio-controller@22 {
|
||||
compatible = "ti,tca6424";
|
||||
reg = <0x22>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
vcc-supply = <®_3v3>;
|
||||
interrupt-parent = <&gpio7>;
|
||||
interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_gpio6>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
gpio-line-names = "GPIO_ROTOR#", "ACM_IO_INT", "TMP_SENSOR_IRQ", "AC_IN",
|
||||
"TF_S", "BATT_T", "LED_INC_CHAR", "ACM1_OCF",
|
||||
"ACM2_OCF", "ACM_IO_RST", "USB1_POWER_EN", "EGPIO_CC_CTL0",
|
||||
"EGPIO_CC_CTL1", "12V_OEMNBP_EN", "CP2105_RST", "",
|
||||
"SPEAKER_PA_EN", "ARM7_UPI_RESET", "ARM7_PWR_RST", "NURSE_CALL",
|
||||
"MARKER_EN", "EGPIO_TOUCH_RST", "PRESSURE_INT1", "PRESSURE_INT2";
|
||||
|
||||
};
|
||||
|
||||
tmp75: temperature-sensor@48 {
|
||||
compatible = "ti,tmp75";
|
||||
reg = <0x48>;
|
||||
vs-supply = <®_3v3>;
|
||||
interrupt-parent = <&tca6424a>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
|
||||
};
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
lvds0: lvds-channel@0 {
|
||||
status = "okay";
|
||||
fsl,data-mapping = "spwg";
|
||||
fsl,data-width = <24>;
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi1 {
|
||||
fsl,mode = "i2s-slave";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <&usb_power>;
|
||||
disable-over-current;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
|
||||
/*
|
||||
* TPS2051BDGN fault-gpio is connected to Q7[86] USB_0_1_OC_N.
|
||||
* On QMX6 this is not connceted to the i.MX6, but to the USB Hub
|
||||
* from &usbh1. This means, that we cannot easily detect and handle
|
||||
* over-current events. Fortunately the regulator limits the current
|
||||
* automatically, so the hardware is still protected.
|
||||
*/
|
||||
};
|
||||
|
||||
&usdhc4 {
|
||||
/* WiFi module */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc4>;
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
wakeup-source;
|
||||
keep-power-in-suspend;
|
||||
cap-power-off-card;
|
||||
max-frequency = <25000000>;
|
||||
vmmc-supply = <®_wlan>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
wlcore: wlcore@2 {
|
||||
compatible = "ti,wl1837";
|
||||
reg = <2>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_q7_gpio7>;
|
||||
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
tcxo-clock-frequency = <26000000>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,58 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for General Electric B1x5v2
|
||||
// patient monitor series
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include "imx6dl-b1x5pv2.dtsi"
|
||||
|
||||
/ {
|
||||
reg_3v3_acm: regulator-3v3-acm {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3 ACM";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
vin-supply = <®_3v3>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
tca6416: gpio-controller@21 {
|
||||
compatible = "ti,tca6416";
|
||||
reg = <0x21>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
reset-gpios = <&tca6424a 9 GPIO_ACTIVE_LOW>;
|
||||
vcc-supply = <®_3v3_acm>;
|
||||
gpio-line-names = "ACM1_EN", "ACM1_CL0", "ACM1_CL1", "ACM1_CL2",
|
||||
"", "ACM2_EN", "ACM2_CL0", "ACM2_CL1",
|
||||
"ACM2_CL2", "", "", "",
|
||||
"", "", "", "";
|
||||
|
||||
/*
|
||||
* The interrupt pin is connected to &tca6424a pin 1, but the Linux
|
||||
* TCA6424 driver cannot handle low type interrupts at the moment
|
||||
* (and support cannot be added without some ugly hacks). Since this
|
||||
* controller does not have any input type GPIOs, just pretend
|
||||
* that the interrupt pin is unconnected.
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
&i2c5 {
|
||||
mpl3115a2: pressure-sensor@60 {
|
||||
compatible = "fsl,mpl3115";
|
||||
reg = <0x60>;
|
||||
vcc-supply = <®_3v3_acm>;
|
||||
|
||||
/*
|
||||
* The MPL3115 interrupts are connected to pin 22 and 23
|
||||
* of &tca6424a, but the binding does not yet support
|
||||
* interrupts.
|
||||
*/
|
||||
};
|
||||
};
|
|
@ -138,8 +138,6 @@
|
|||
interrupts-extended = <&gpio3 20 IRQ_TYPE_EDGE_FALLING>;
|
||||
pendown-gpio = <&gpio3 20 GPIO_ACTIVE_LOW>;
|
||||
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <480>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
touchscreen-max-pressure = <4095>;
|
||||
|
@ -147,7 +145,9 @@
|
|||
ti,vref-delay-usecs = /bits/ 16 <100>;
|
||||
ti,x-plate-ohms = /bits/ 16 <800>;
|
||||
ti,y-plate-ohms = /bits/ 16 <300>;
|
||||
|
||||
ti,debounce-max = /bits/ 16 <3>;
|
||||
ti,debounce-tol = /bits/ 16 <70>;
|
||||
ti,debounce-rep = /bits/ 16 <3>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -21,14 +21,11 @@
|
|||
|
||||
backlight_lcd: backlight-lcd {
|
||||
compatible = "pwm-backlight";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_backlight>;
|
||||
pwms = <&pwm1 0 500000>;
|
||||
pwms = <&pwm1 0 500000 0>;
|
||||
brightness-levels = <0 20 81 248 1000>;
|
||||
default-brightness-level = <20>;
|
||||
num-interpolated-steps = <21>;
|
||||
power-supply = <®_bl_12v0>;
|
||||
enable-gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
keys {
|
||||
|
@ -223,6 +220,24 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi2>;
|
||||
status = "okay";
|
||||
|
||||
touchscreen@0 {
|
||||
compatible = "ti,tsc2046";
|
||||
reg = <0>;
|
||||
pinctrl-0 = <&pinctrl_tsc>;
|
||||
pinctrl-names ="default";
|
||||
spi-max-frequency = <100000>;
|
||||
interrupts-extended = <&gpio3 20 IRQ_TYPE_EDGE_FALLING>;
|
||||
pendown-gpio = <&gpio3 20 GPIO_ACTIVE_LOW>;
|
||||
touchscreen-max-pressure = <4095>;
|
||||
ti,vref-delay-usecs = /bits/ 16 <100>;
|
||||
ti,x-plate-ohms = /bits/ 16 <800>;
|
||||
ti,y-plate-ohms = /bits/ 16 <300>;
|
||||
ti,debounce-max = /bits/ 16 <3>;
|
||||
ti,debounce-tol = /bits/ 16 <70>;
|
||||
ti,debounce-rep = /bits/ 16 <3>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
|
@ -261,7 +276,6 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
|
@ -276,8 +290,6 @@
|
|||
};
|
||||
|
||||
&ssi1 {
|
||||
#sound-dai-cells = <0>;
|
||||
fsl,mode = "ac97-slave";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -285,10 +297,6 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
&vpu {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
|
@ -300,12 +308,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_backlight: backlightgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT7__GPIO4_IO28 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can1phy: can1phy {
|
||||
fsl,pins = <
|
||||
/* CAN1_SR */
|
||||
|
|
|
@ -0,0 +1,612 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 or MIT
|
||||
//
|
||||
// Device Tree Source for i.MX6DL based congatec QMX6
|
||||
// System on Module
|
||||
//
|
||||
// Copyright 2018-2021 General Electric Company
|
||||
// Copyright 2018-2021 Collabora
|
||||
// Copyright 2016 congatec AG
|
||||
|
||||
#include "imx6dl.dtsi"
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/sound/fsl-imx-audmux.h>
|
||||
|
||||
/ {
|
||||
memory@10000000 {
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
reg_3p3v: 3p3v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
i2cmux {
|
||||
compatible = "i2c-mux-gpio";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
mux-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>;
|
||||
i2c-parent = <&i2c2>;
|
||||
|
||||
i2c5: i2c@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
i2c6: i2c@1 {
|
||||
reg = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux>;
|
||||
|
||||
audmux_ssi1 {
|
||||
fsl,audmux-port = <MX51_AUDMUX_PORT1_SSI0>;
|
||||
fsl,port-config = <
|
||||
(IMX_AUDMUX_V2_PTCR_TFSDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT6) |
|
||||
IMX_AUDMUX_V2_PTCR_TCLKDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT6) |
|
||||
IMX_AUDMUX_V2_PTCR_SYN)
|
||||
IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT6)
|
||||
>;
|
||||
};
|
||||
|
||||
audmux_aud6 {
|
||||
fsl,audmux-port = <MX51_AUDMUX_PORT6>;
|
||||
fsl,port-config = <
|
||||
IMX_AUDMUX_V2_PTCR_SYN
|
||||
IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT1_SSI0)
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&clks {
|
||||
clocks = <&rtc_sqw>;
|
||||
clock-names = "ckil";
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL2_PFD0_352M>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD0_352M>;
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_spi1>;
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "sst,sst25vf032b", "jedec,spi-nor";
|
||||
spi-max-frequency = <20000000>;
|
||||
reg = <0>;
|
||||
|
||||
partition@0 {
|
||||
label = "bootloader";
|
||||
reg = <0x0000000 0x100000>;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
label = "user";
|
||||
reg = <0x0100000 0x2fc000>;
|
||||
};
|
||||
|
||||
partition@3fc000 {
|
||||
label = "reserved";
|
||||
reg = <0x03fc000 0x4000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet &pinctrl_phy_reset>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
|
||||
fsl,magic-packet;
|
||||
phy-handle = <&phy0>;
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy0: ethernet-phy@6 {
|
||||
reg = <6>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
pinctrl-1 = <&pinctrl_i2c1_gpio>;
|
||||
scl-gpios = <&gpio3 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio3 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
pinctrl-1 = <&pinctrl_i2c2_gpio>;
|
||||
scl-gpios = <&gpio4 12 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio4 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_gpio>;
|
||||
scl-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
|
||||
rtc: m41t62@68 {
|
||||
compatible = "st,m41t62";
|
||||
reg = <0x68>;
|
||||
|
||||
rtc_sqw: clock {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c6 {
|
||||
pmic@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw1c_reg: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
/*
|
||||
* keep VGEN3, VGEN4 and VGEN5 enabled in order to
|
||||
* maintain backward compatibility with hw-rev. A.0
|
||||
*/
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
/* supply voltage for eMMC */
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
reset-gpio = <&gpio1 20 0>;
|
||||
};
|
||||
|
||||
&pwm4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm4>;
|
||||
};
|
||||
|
||||
®_arm {
|
||||
vin-supply = <&sw1a_reg>;
|
||||
};
|
||||
|
||||
®_pu {
|
||||
vin-supply = <&sw1c_reg>;
|
||||
};
|
||||
|
||||
®_soc {
|
||||
vin-supply = <&sw1c_reg>;
|
||||
};
|
||||
|
||||
&snvs_poweroff {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
/* Connected to USB-Hub SMSC USB2514, provides P0, P2, P3, P4 on Qseven connector */
|
||||
vbus-supply = <®_5v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
/* MicroSD card slot */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
wakeup-source;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
/* eMMC module */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
non-removable;
|
||||
bus-width = <8>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
wakeup-source;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wdog1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wdog>;
|
||||
fsl,ext-reset-output;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
qmx6mux: imx6qdl-qmx6 {
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_PIN2__AUD6_TXD 0x110b0 /* Q7[67] HDA_SDO */
|
||||
MX6QDL_PAD_DI0_PIN3__AUD6_TXFS 0x30b0 /* Q7[59] HDA_SYNC */
|
||||
MX6QDL_PAD_DI0_PIN4__AUD6_RXD 0x30b0 /* Q7[65] HDA_SDI */
|
||||
MX6QDL_PAD_DI0_PIN15__AUD6_TXC 0x30b0 /* Q7[63] HDA_BITCLK */
|
||||
>;
|
||||
};
|
||||
|
||||
/* PHY is on System on Module, Q7[3-15] have Ethernet lines */
|
||||
pinctrl_enet: enet {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
|
||||
MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* PCIE_WAKE_B */
|
||||
MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 0x80000000 /* I2C multiplexer */
|
||||
MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x80000000 /* SD4_CD# */
|
||||
MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x80000000 /* SD4_WP */
|
||||
MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x80000000 /* Camera MCLK */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 /* Q7[66] I2C_CLK */
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 /* Q7[68] I2C_DAT */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_gpio: i2c1-gpio {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x1b0b0 /* Q7[66] I2C_CLK */
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x1b0b0 /* Q7[68] I2C_DAT */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 /* Q7[152] SDVO_CTRL_CLK */
|
||||
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 /* Q7[150] SDVO_CTRL_DAT */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_gpio: i2c2-gpio {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x1b0b0 /* Q7[152] SDVO_CTRL_CLK */
|
||||
MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x1b0b0 /* Q7[150] SDVO_CTRL_DAT */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 /* Q7[60] SMB_CLK */
|
||||
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 /* Q7[62] SMB_DAT */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_gpio: i2c3-gpio {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__GPIO1_IO03 0x1b0b0 /* Q7[60] SMB_CLK */
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x1b0b0 /* Q7[62] SMB_DAT */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_phy_reset: phy-reset {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x1b0b0 /* RGMII Phy Reset */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1 /* Q7[123] LVDS_BLT_CTRL */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_backlight_enable: q7-backlight-enable {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0 /* Q7[112] LVDS_BLEN */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio0: q7-gpio0 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x1b0b0 /* Q7[185] GPIO0 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio1: q7-gpio1 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 /* Q7[186] GPIO1 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio2: q7-gpio2 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26 0x1b0b0 /* Q7[187] GPIO2 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio3: q7-gpio3 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT6__GPIO4_IO27 0x1b0b0 /* Q7[188] GPIO3 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio4: q7-gpio4 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 /* Q7[189] GPIO4 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio5: q7-gpio5 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x1b0b0 /* Q7[190] GPIO5 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio6: q7-gpio6 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_16__GPIO7_IO11 0x1b0b0 /* Q7[191] GPIO6 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_gpio7: q7-gpio7 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0 /* Q7[192] GPIO7 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_hda_reset: q7-hda-reset {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x1b0b0 /* Q7[61] HDA_RST_N */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_lcd_power: lcd-power {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x1b0b0 /* Q7[111] LVDS_PPEN */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_sdio_power: q7-sdio-power {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 /* Q7[47] SDIO_PWR# */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_sleep_button: q7-sleep-button {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x1b0b0 /* Q7[21] SLP_BTN# */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_q7_spi_cs1: spi-cs1 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT4__GPIO4_IO25 0x1b0b0 /* Q7[202] SPI_CS1# */
|
||||
>;
|
||||
};
|
||||
|
||||
/* SPI1 bus does not leave System on Module */
|
||||
pinctrl_spi1: spi1 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
/* Debug connector on Q7 module */
|
||||
pinctrl_uart2: uart2 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart3: uart3 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 /* Q7[177] UART0_RX */
|
||||
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 /* Q7[171] UART0_TX */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotg {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 /* Q7[92] USB_ID */
|
||||
>;
|
||||
};
|
||||
|
||||
/* µSD card slot on Q7 module */
|
||||
pinctrl_usdhc2: usdhc2 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1b0b0 /* SD2_CD */
|
||||
>;
|
||||
};
|
||||
|
||||
/* eMMC module on Q7 module */
|
||||
pinctrl_usdhc3: usdhc3 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
|
||||
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
|
||||
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
|
||||
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
|
||||
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
|
||||
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
|
||||
MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059
|
||||
MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059
|
||||
MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059
|
||||
MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4: usdhc4 {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 /* Q7[45] SDIO_CMD */
|
||||
MX6QDL_PAD_SD4_CLK__SD4_CLK 0x17059 /* Q7[42] SDIO_CLK */
|
||||
MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 /* Q7[48] SDIO_DAT1 */
|
||||
MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 /* Q7[49] SDIO_DAT0 */
|
||||
MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 /* Q7[50] SDIO_DAT3 */
|
||||
MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 /* Q7[51] SDIO_DAT2 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_wdog: wdog {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT8__WDOG1_B 0x1b0b0 /* Watchdog output signal */
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -106,6 +106,8 @@
|
|||
reset-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
|
||||
reset-assert-us = <10000>;
|
||||
reset-deassert-us = <1000>;
|
||||
qca,smarteee-tw-us-1g = <24>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
aliases: aliases {
|
||||
ethernet1 = ð1;
|
||||
ethernet2 = ð2;
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc4;
|
||||
};
|
||||
|
||||
backlight: backlight {
|
||||
|
@ -341,6 +343,7 @@
|
|||
solomon,height = <64>;
|
||||
solomon,width = <128>;
|
||||
solomon,page-offset = <0>;
|
||||
solomon,col-offset = <4>;
|
||||
solomon,prechargep2 = <15>;
|
||||
reset-gpios = <&gpio_oled 1 GPIO_ACTIVE_LOW>;
|
||||
vbat-supply = <&sw2_reg>;
|
||||
|
|
|
@ -12,10 +12,20 @@
|
|||
|
||||
/ {
|
||||
aliases {
|
||||
i2c0 = &i2c2;
|
||||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c3;
|
||||
mmc0 = &usdhc2;
|
||||
mmc1 = &usdhc3;
|
||||
mmc2 = &usdhc4;
|
||||
mmc3 = &usdhc1;
|
||||
rtc0 = &rtc_i2c;
|
||||
rtc1 = &snvs_rtc;
|
||||
serial0 = &uart1;
|
||||
serial1 = &uart5;
|
||||
serial2 = &uart4;
|
||||
serial3 = &uart2;
|
||||
serial4 = &uart3;
|
||||
};
|
||||
|
||||
memory@10000000 {
|
||||
|
@ -23,6 +33,19 @@
|
|||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
reg_eth_vio: regulator-eth-vio {
|
||||
compatible = "regulator-fixed";
|
||||
gpio = <&gpio1 7 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-0 = <&pinctrl_enet_vio>;
|
||||
pinctrl-names = "default";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "eth_vio";
|
||||
vin-supply = <&sw2_reg>;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
|
@ -96,30 +119,40 @@
|
|||
reg = <0>;
|
||||
max-speed = <100>;
|
||||
reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
|
||||
reset-delay-us = <1000>;
|
||||
reset-post-delay-us = <1000>;
|
||||
reset-assert-us = <1000>;
|
||||
reset-deassert-us = <1000>;
|
||||
smsc,disable-energy-detect; /* Make plugin detection reliable */
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
pinctrl-1 = <&pinctrl_i2c1_gpio>;
|
||||
scl-gpios = <&gpio3 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio3 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
pinctrl-1 = <&pinctrl_i2c2_gpio>;
|
||||
scl-gpios = <&gpio4 12 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio4 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_gpio>;
|
||||
scl-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
|
||||
ltc3676: pmic@3c {
|
||||
|
@ -203,7 +236,7 @@
|
|||
pagesize = <16>;
|
||||
};
|
||||
|
||||
rtc@56 {
|
||||
rtc_i2c: rtc@56 {
|
||||
compatible = "microcrystal,rv3029";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_rtc_hw300>;
|
||||
|
@ -260,6 +293,11 @@
|
|||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_EIM_WAIT__GPIO5_IO00 0x000b0
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet_vio: enet-vio-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x120b0
|
||||
>;
|
||||
};
|
||||
|
@ -285,6 +323,13 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_gpio: i2c1-gpio-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
||||
|
@ -292,6 +337,13 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_gpio: i2c2-gpio-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
|
||||
|
@ -299,6 +351,13 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_gpio: i2c3-gpio-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__GPIO1_IO03 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pmic_hw300: pmic-hw300-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x1B0B0
|
||||
|
|
|
@ -112,7 +112,7 @@
|
|||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii";
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
phy-supply = <&vgen2_1v2_eth>;
|
||||
status = "okay";
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright 2021 Dillon Min <dillon.minfei@gmail.com>
|
||||
//
|
||||
// Based on imx6qdl-sabresd.dtsi which is:
|
||||
// Copyright 2012 Freescale Semiconductor, Inc.
|
||||
// Copyright 2011 Linaro Ltd.
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-ds.dtsi"
|
||||
|
||||
/ {
|
||||
model = "DaSheng i.MX6 Quad Com-9xx Board";
|
||||
compatible = "ds,imx6q-sbc", "fsl,imx6q";
|
||||
};
|
|
@ -0,0 +1,458 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright 2021 Dillon Min <dillon.minfei@gmail.com>
|
||||
//
|
||||
// Based on imx6qdl-sabresd.dtsi which is:
|
||||
// Copyright 2012 Freescale Semiconductor, Inc.
|
||||
// Copyright 2011 Linaro Ltd.
|
||||
|
||||
#include <dt-bindings/clock/imx6qdl-clock.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = &uart4;
|
||||
};
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator-usb-h1-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpio_leds>;
|
||||
|
||||
led-0 {
|
||||
gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>;
|
||||
default-state = "on";
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ipu1_csi0_from_ipu1_csi0_mux {
|
||||
bus-width = <8>;
|
||||
data-shift = <12>; /* Lines 19:12 used */
|
||||
hsync-active = <1>;
|
||||
vsync-active = <1>;
|
||||
};
|
||||
|
||||
&ipu1_csi0_mux_from_parallel_sensor {
|
||||
remote-endpoint = <&ov2659_to_ipu1_csi0_mux>;
|
||||
};
|
||||
|
||||
&ipu1_csi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ipu1_csi0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio4 9 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>, <&pinctrl_ecspi1_gpio>;
|
||||
status = "okay";
|
||||
|
||||
m25p80: flash@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "st,m25p80", "jedec,spi-nor";
|
||||
spi-max-frequency = <20000000>;
|
||||
reg = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-handle = <&phy>;
|
||||
fsl,magic-packet;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
reset-gpios = <&gpio4 10 GPIO_ACTIVE_LOW>;
|
||||
reset-assert-us = <10000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hdmi_cec>;
|
||||
ddc-i2c-bus = <&i2c3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
|
||||
pfuze100: pmic@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
regulators {
|
||||
sw1a_reg: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw1c_reg: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw2_reg: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <6250>;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw3b_reg: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
};
|
||||
|
||||
snvs_reg: vsnvs {
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vref_reg: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen1_reg: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
|
||||
ov2659: camera@30 {
|
||||
compatible = "ovti,ov2659";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ov2659>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
clock-names = "xvclk";
|
||||
reg = <0x30>;
|
||||
powerdown-gpios = <&gpio7 11 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
|
||||
port {
|
||||
ov2659_to_ipu1_csi0_mux: endpoint {
|
||||
remote-endpoint = <&ipu1_csi0_mux_from_parallel_sensor>;
|
||||
link-frequencies = /bits/ 64 <70000000>;
|
||||
bus-width = <8>;
|
||||
hsync-active = <1>;
|
||||
vsync-active = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1_gpio: ecspi1grpgpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RXD0__GPIO1_IO27 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
|
||||
MX6QDL_PAD_KEY_COL2__GPIO4_IO10 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hdmi_cec: hdmicecgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE 0x1f8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1_csi0: ipu1csi0grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov2659: ov2659grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_16__GPIO7_IO11 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart4: uart4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17059
|
||||
MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10059
|
||||
MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17059
|
||||
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17059
|
||||
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17059
|
||||
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_gpio: usdhc1grpgpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_gpio: usdhc2grpgpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x1b0b0
|
||||
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3: usdhc3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
|
||||
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
|
||||
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
|
||||
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
|
||||
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
|
||||
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
|
||||
MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059
|
||||
MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059
|
||||
MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059
|
||||
MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_wdog: wdoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__WDOG2_B 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_leds: gpioledsgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>, <&pinctrl_usdhc1_gpio>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
|
||||
wp-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
no-1-8-v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wdog1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&wdog2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wdog>;
|
||||
fsl,ext-reset-output;
|
||||
status = "okay";
|
||||
};
|
|
@ -322,8 +322,8 @@
|
|||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D30__UART3_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D31__UART3_CTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D31__UART3_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D30__UART3_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -410,6 +410,7 @@
|
|||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
uart-has-rtscts;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
|
|
@ -97,8 +97,11 @@
|
|||
compatible = "fsl,imx6q-sabresd-wm8962",
|
||||
"fsl,imx-audio-wm8962";
|
||||
model = "wm8962-audio";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hp>;
|
||||
ssi-controller = <&ssi2>;
|
||||
audio-codec = <&codec>;
|
||||
audio-asrc = <&asrc>;
|
||||
audio-routing =
|
||||
"Headphone Jack", "HPOUTL",
|
||||
"Headphone Jack", "HPOUTR",
|
||||
|
@ -545,6 +548,13 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_hp: hpgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1
|
||||
|
|
|
@ -40,6 +40,27 @@
|
|||
};
|
||||
};
|
||||
|
||||
counter-0 {
|
||||
compatible = "interrupt-counter";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_counter0>;
|
||||
gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
counter-1 {
|
||||
compatible = "interrupt-counter";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_counter1>;
|
||||
gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
counter-2 {
|
||||
compatible = "interrupt-counter";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_counter2>;
|
||||
gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
autorepeat;
|
||||
|
@ -254,7 +275,7 @@
|
|||
|
||||
&gpio2 {
|
||||
gpio-line-names =
|
||||
"", "", "", "", "", "", "", "",
|
||||
"count0", "count1", "count2", "", "", "", "", "",
|
||||
"REV_ID0", "REV_ID1", "REV_ID2", "REV_ID3", "REV_ID4",
|
||||
"BOARD_ID0", "BOARD_ID1", "BOARD_ID2",
|
||||
"", "", "", "", "", "", "", "ON_SWITCH",
|
||||
|
@ -572,6 +593,24 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_counter0: counter0grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x1b000
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_counter1: counter1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1b000
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_counter2: counter2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b000
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
|
|
|
@ -142,7 +142,6 @@
|
|||
imx6qdl-wandboard {
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D22__USB_OTG_PWR 0x80000000 /* USB Power Enable */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* USDHC1 CD */
|
||||
MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000 /* uSDHC3 CD */
|
||||
MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x1f0b1 /* RGMII PHY reset */
|
||||
|
|
|
@ -60,38 +60,26 @@
|
|||
gpios = <&gpio_spi 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "mx6ul-wm8960";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,bitclock-master = <&dailink_master>;
|
||||
simple-audio-card,frame-master = <&dailink_master>;
|
||||
simple-audio-card,widgets =
|
||||
"Microphone", "Mic Jack",
|
||||
"Line", "Line In",
|
||||
"Line", "Line Out",
|
||||
"Speaker", "Speaker",
|
||||
"Headphone", "Headphone Jack";
|
||||
simple-audio-card,routing =
|
||||
sound-wm8960 {
|
||||
compatible = "fsl,imx-audio-wm8960";
|
||||
model = "wm8960-audio";
|
||||
audio-cpu = <&sai2>;
|
||||
audio-codec = <&codec>;
|
||||
audio-asrc = <&asrc>;
|
||||
hp-det-gpio = <&gpio5 4 0>;
|
||||
audio-routing =
|
||||
"Headphone Jack", "HP_L",
|
||||
"Headphone Jack", "HP_R",
|
||||
"Speaker", "SPK_LP",
|
||||
"Speaker", "SPK_LN",
|
||||
"Speaker", "SPK_RP",
|
||||
"Speaker", "SPK_RN",
|
||||
"LINPUT1", "Mic Jack",
|
||||
"Ext Spk", "SPK_LP",
|
||||
"Ext Spk", "SPK_LN",
|
||||
"Ext Spk", "SPK_RP",
|
||||
"Ext Spk", "SPK_RN",
|
||||
"LINPUT2", "Mic Jack",
|
||||
"LINPUT3", "Mic Jack",
|
||||
"RINPUT1", "Mic Jack",
|
||||
"RINPUT2", "Mic Jack";
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&sai2>;
|
||||
};
|
||||
|
||||
dailink_master: simple-audio-card,codec {
|
||||
sound-dai = <&codec>;
|
||||
clocks = <&clks IMX6UL_CLK_SAI2>;
|
||||
};
|
||||
"RINPUT1", "AMIC",
|
||||
"RINPUT2", "AMIC",
|
||||
"Mic Jack", "MICB",
|
||||
"AMIC", "MICB";
|
||||
};
|
||||
|
||||
spi4 {
|
||||
|
@ -145,6 +133,10 @@
|
|||
compatible = "wlf,wm8960";
|
||||
reg = <0x1a>;
|
||||
wlf,shared-lrclk;
|
||||
wlf,hp-cfg = <3 2 3>;
|
||||
wlf,gpio-cfg = <1 3>;
|
||||
clocks = <&clks IMX6UL_CLK_SAI2>;
|
||||
clock-names = "mclk";
|
||||
};
|
||||
|
||||
camera@3c {
|
||||
|
|
|
@ -164,6 +164,13 @@
|
|||
"LINPUT1", "AMIC",
|
||||
"AMIC", "MICB";
|
||||
};
|
||||
|
||||
sound-hdmi {
|
||||
compatible = "fsl,imx-audio-sii902x";
|
||||
model = "sii902x-audio";
|
||||
audio-cpu = <&sai3>;
|
||||
hdmi-out;
|
||||
};
|
||||
};
|
||||
|
||||
&adc1 {
|
||||
|
|
Loading…
Reference in New Issue