mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-24 21:54:01 +00:00
u-boot-imx-20220726
------------------- i.MX for 2022.10 - Added i.MX93 architecture CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/12891 -----BEGIN PGP SIGNATURE----- iG0EABECAC0WIQS2TmnA27QKhpKSZe309WXkmmjvpgUCYt/zWg8cc2JhYmljQGRl bnguZGUACgkQ9PVl5Jpo76YODwCgh3JIzIi9pktCxKumx4JRS6UzwgsAn3HoXKI/ 2OEUjST1X/TI/lMFp0bw =EWT6 -----END PGP SIGNATURE----- Merge tag 'u-boot-imx-20220726' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx u-boot-imx-20220726 ------------------- i.MX for 2022.10 - Added i.MX93 architecture CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/12891
This commit is contained in:
commit
86feeab3dc
388 changed files with 31889 additions and 8547 deletions
|
@ -259,7 +259,7 @@ F: arch/arm/cpu/arm926ejs/mx*/
|
|||
F: arch/arm/cpu/armv7/vf610/
|
||||
F: arch/arm/dts/*imx*
|
||||
F: arch/arm/mach-imx/
|
||||
F: arch/arm/include/asm/arch-imx/
|
||||
F: arch/arm/include/asm/arch-imx*/
|
||||
F: arch/arm/include/asm/arch-mx*/
|
||||
F: arch/arm/include/asm/arch-vf610/
|
||||
F: arch/arm/include/asm/mach-imx/
|
||||
|
|
|
@ -905,6 +905,20 @@ config ARCH_IMX8ULP
|
|||
select OF_CONTROL
|
||||
select SUPPORT_SPL
|
||||
select GPIO_EXTRA_HEADER
|
||||
select MISC
|
||||
select IMX_SENTINEL
|
||||
imply CMD_DM
|
||||
imply DM_EVENT
|
||||
|
||||
config ARCH_IMX9
|
||||
bool "NXP i.MX9 platform"
|
||||
select ARM64
|
||||
select DM
|
||||
select MACH_IMX
|
||||
select SUPPORT_SPL
|
||||
select GPIO_EXTRA_HEADER
|
||||
select MISC
|
||||
select IMX_SENTINEL
|
||||
imply CMD_DM
|
||||
imply DM_EVENT
|
||||
|
||||
|
@ -2213,6 +2227,8 @@ source "arch/arm/mach-imx/imx8m/Kconfig"
|
|||
|
||||
source "arch/arm/mach-imx/imx8ulp/Kconfig"
|
||||
|
||||
source "arch/arm/mach-imx/imx9/Kconfig"
|
||||
|
||||
source "arch/arm/mach-imx/imxrt/Kconfig"
|
||||
|
||||
source "arch/arm/mach-imx/mxs/Kconfig"
|
||||
|
|
|
@ -92,6 +92,8 @@ machine-$(CONFIG_ARCH_ZYNQ) += zynq
|
|||
machine-$(CONFIG_ARCH_ZYNQMP) += zynqmp
|
||||
machine-$(CONFIG_ARCH_ZYNQMP_R5) += zynqmp-r5
|
||||
|
||||
machine-$(CONFIG_MACH_IMX) += imx
|
||||
|
||||
machdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y))
|
||||
|
||||
PLATFORM_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs))
|
||||
|
@ -110,16 +112,6 @@ libs-y += arch/arm/cpu/$(CPU)/
|
|||
libs-y += arch/arm/cpu/
|
||||
libs-y += arch/arm/lib/
|
||||
|
||||
ifeq ($(CONFIG_SPL_BUILD),y)
|
||||
ifneq (,$(CONFIG_MX23)$(CONFIG_MX28)$(filter $(SOC), mx25 mx5 mx6 mx7 mx35 imx8m imx8 imx8ulp imxrt))
|
||||
libs-y += arch/arm/mach-imx/
|
||||
endif
|
||||
else
|
||||
ifneq (,$(filter $(SOC), mx25 mx27 mx5 mx6 mx7 mx7ulp mx31 mx35 mxs imx8m imx8 imx8ulp imxrt vf610))
|
||||
libs-y += arch/arm/mach-imx/
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq (,$(filter $(SOC), kirkwood))
|
||||
libs-y += arch/arm/mach-mvebu/
|
||||
endif
|
||||
|
|
|
@ -729,8 +729,7 @@ dtb-$(CONFIG_MACH_SUN9I) += \
|
|||
sun9i-a80-cubieboard4.dtb \
|
||||
sun9i-a80-cx-a99.dtb
|
||||
|
||||
dtb-$(CONFIG_VF610) += vf500-colibri.dtb \
|
||||
vf610-colibri.dtb \
|
||||
dtb-$(CONFIG_VF610) += vf610-colibri-eval-v3.dtb \
|
||||
vf610-twr.dtb \
|
||||
vf610-pcm052.dtb \
|
||||
vf610-bk4r1.dtb
|
||||
|
@ -803,7 +802,7 @@ endif
|
|||
|
||||
ifneq ($(CONFIG_MX6Q)$(CONFIG_MX6QDL),)
|
||||
dtb-y += \
|
||||
imx6-apalis.dtb \
|
||||
imx6q-apalis-eval.dtb \
|
||||
imx6q-bosch-acc.dtb \
|
||||
imx6q-cm-fx6.dtb \
|
||||
imx6q-cubox-i.dtb \
|
||||
|
@ -885,8 +884,8 @@ dtb-$(CONFIG_MX6UL) += \
|
|||
|
||||
dtb-$(CONFIG_MX6ULL) += \
|
||||
imx6ull-14x14-evk.dtb \
|
||||
imx6ull-colibri.dtb \
|
||||
imx6ull-colibri-emmc.dtb \
|
||||
imx6ull-colibri-emmc-eval-v3.dtb \
|
||||
imx6ull-colibri-eval-v3.dtb \
|
||||
imx6ull-myir-mys-6ulx-eval.dtb \
|
||||
imx6ull-seeed-npi-imx6ull-dev-board.dtb \
|
||||
imx6ull-phytec-segin-ff-rdk-emmc.dtb \
|
||||
|
@ -895,8 +894,8 @@ dtb-$(CONFIG_MX6ULL) += \
|
|||
imx6ulz-14x14-evk.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_MX6) += \
|
||||
imx6-apalis.dtb \
|
||||
imx6-colibri.dtb
|
||||
imx6q-apalis-eval.dtb \
|
||||
imx6dl-colibri-eval-v3.dtb
|
||||
|
||||
dtb-$(CONFIG_O4_IMX_NANO) += \
|
||||
o4-imx-nano.dtb
|
||||
|
@ -907,8 +906,8 @@ dtb-$(CONFIG_EV_IMX280_NANO_X_MB) += \
|
|||
dtb-$(CONFIG_MX7) += imx7d-sdb.dtb \
|
||||
imx7d-sdb-qspi.dtb \
|
||||
imx7-cm.dtb \
|
||||
imx7-colibri-emmc.dtb \
|
||||
imx7-colibri-rawnand.dtb \
|
||||
imx7d-colibri-emmc-eval-v3.dtb \
|
||||
imx7d-colibri-eval-v3.dtb \
|
||||
imx7s-warp.dtb \
|
||||
imx7d-meerkat96.dtb \
|
||||
imx7d-pico-pi.dtb \
|
||||
|
@ -949,7 +948,7 @@ dtb-$(CONFIG_ARCH_IMX8M) += \
|
|||
imx8mm-venice-gw7901.dtb \
|
||||
imx8mm-venice-gw7902.dtb \
|
||||
imx8mm-venice-gw7903.dtb \
|
||||
imx8mm-verdin.dtb \
|
||||
imx8mm-verdin-wifi-dev.dtb \
|
||||
phycore-imx8mm.dtb \
|
||||
imx8mn-bsh-smm-s2.dtb \
|
||||
imx8mn-bsh-smm-s2pro.dtb \
|
||||
|
@ -969,10 +968,13 @@ dtb-$(CONFIG_ARCH_IMX8M) += \
|
|||
imx8mp-phyboard-pollux-rdk.dtb \
|
||||
imx8mp-venice.dtb \
|
||||
imx8mp-venice-gw74xx.dtb \
|
||||
imx8mp-verdin.dtb \
|
||||
imx8mp-verdin-wifi-dev.dtb \
|
||||
imx8mq-pico-pi.dtb \
|
||||
imx8mq-kontron-pitx-imx8m.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_IMX9) += \
|
||||
imx93-11x11-evk.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_IMXRT) += imxrt1050-evk.dtb \
|
||||
imxrt1020-evk.dtb
|
||||
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2020 Foundries.IO
|
||||
*/
|
||||
|
||||
#include "imx6qdl-u-boot.dtsi"
|
||||
|
||||
&wdog1 {
|
||||
status = "okay";
|
||||
u-boot,dm-spl;
|
||||
};
|
|
@ -1,752 +0,0 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2019 Toradex AG
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include "imx6q.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Apalis iMX6Q/D";
|
||||
compatible = "toradex,apalis_imx6q", "fsl,imx6q";
|
||||
|
||||
/* Will be filled by the bootloader */
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0>;
|
||||
};
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc1;
|
||||
mmc2 = &usdhc2;
|
||||
usb0 = &usbotg; /* required for ums */
|
||||
ethernet0 = &fec;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
reg_module_3v3: regulator-module-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "+V3.3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_regulator_usbotg_pwr>;
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; /* USBO1_EN */
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
/* on-module USB hub */
|
||||
reg_usb_host_vbus_hub: regulator-usb-host-vbus-hub {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_regulator_usbhub_pwr>;
|
||||
regulator-name = "usb_host_vbus_hub";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 28 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <2000>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usb_host_vbus: regulator-usb-host-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_regulator_usbh_pwr>;
|
||||
regulator-name = "usb_host_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; /* USBH_EN */
|
||||
enable-active-high;
|
||||
vin-supply = <®_usb_host_vbus_hub>;
|
||||
};
|
||||
};
|
||||
|
||||
/* I2C1_SDA/SCL on MXM3 209/211 (e.g. RTC on carrier board) */
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* PWR_I2C: power I2C to audio codec, PMIC, temperature sensor and
|
||||
* touch screen controller
|
||||
*/
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pfuze100@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>;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
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>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen3_reg: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* I2C3_SDA/SCL (CAM) on MXM3 pin 201/203 (e.g. camera sensor on carrier
|
||||
* board)
|
||||
*/
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_recovery>;
|
||||
scl-gpios = <&gpio3 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio3 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii";
|
||||
phy-handle = <ðphy>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy: ethernet-phy@7 {
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
|
||||
reg = <7>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* Apalis Serial ATA */
|
||||
&sata {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART1 */
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1_dte &pinctrl_uart1_ctrl>;
|
||||
fsl,dte-mode;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART2 */
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2_dte>;
|
||||
fsl,dte-mode;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART3 */
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4_dte>;
|
||||
fsl,dte-mode;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis UART4 */
|
||||
&uart5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart5_dte>;
|
||||
fsl,dte-mode;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis USBH[2|3|4] */
|
||||
&usbh1 {
|
||||
dr_mode = "host";
|
||||
vbus-supply = <®_usb_host_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis USBO1 */
|
||||
&usbotg {
|
||||
dr_mode = "host";
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis MMC1 */
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1_4bit &pinctrl_usdhc1_8bit &pinctrl_mmc_cd>;
|
||||
cd-gpios = <&gpio4 20 GPIO_ACTIVE_LOW>; /* MMC1_CD */
|
||||
disable-wp;
|
||||
no-1-8-v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Apalis SD1 */
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2 &pinctrl_sd_cd>;
|
||||
cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; /* SD1_CD */
|
||||
disable-wp;
|
||||
no-1-8-v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
vqmmc-supply = <®_module_3v3>;
|
||||
bus-width = <8>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_apalis_gpio1: gpio2io04grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio2: gpio2io05grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio3: gpio2io06grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio4: gpio2io07grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio5: gpio6io10grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio6: gpio6io09grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio7: gpio1io02grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_apalis_gpio8: gpio1io06grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DISP0_DAT20__AUD4_TXC 0x130b0
|
||||
MX6QDL_PAD_DISP0_DAT21__AUD4_TXD 0x130b0
|
||||
MX6QDL_PAD_DISP0_DAT22__AUD4_TXFS 0x130b0
|
||||
MX6QDL_PAD_DISP0_DAT23__AUD4_RXD 0x130b0
|
||||
/* SGTL5000 sys_mclk */
|
||||
MX6QDL_PAD_GPIO_5__CCM_CLKO1 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_cam_mclk: cammclkgrp {
|
||||
fsl,pins = <
|
||||
/* CAM sys_mclk */
|
||||
MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x00b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT6__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_CSI0_DAT5__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_CSI0_DAT4__ECSPI1_SCLK 0x100b1
|
||||
/* SPI1 cs */
|
||||
MX6QDL_PAD_CSI0_DAT7__GPIO5_IO25 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi2: ecspi2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1
|
||||
/* SPI2 cs */
|
||||
MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x100b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x100b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
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
|
||||
/* Ethernet PHY reset */
|
||||
MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x000b0
|
||||
/* Ethernet PHY interrupt */
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan1: flexcan1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_8__FLEXCAN1_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan2: flexcan2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x1b0b0
|
||||
MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_bl_on: gpioblon {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_DA13__GPIO3_IO13 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys: gpio1io04grp {
|
||||
fsl,pins = <
|
||||
/* Power button */
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hdmi_cec: hdmicecgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hdmi_ddc: hdmiddcgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_EB2__HDMI_TX_DDC_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D16__HDMI_TX_DDC_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1
|
||||
MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_recovery: i2c3recoverygrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__GPIO3_IO17 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D18__GPIO3_IO18 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1_lcdif: ipu1lcdifgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A16__IPU1_DI1_DISP_CLK 0x61
|
||||
/* DE */
|
||||
MX6QDL_PAD_EIM_DA10__IPU1_DI1_PIN15 0x61
|
||||
/* HSync */
|
||||
MX6QDL_PAD_EIM_DA11__IPU1_DI1_PIN02 0x61
|
||||
/* VSync */
|
||||
MX6QDL_PAD_EIM_DA12__IPU1_DI1_PIN03 0x61
|
||||
MX6QDL_PAD_EIM_DA9__IPU1_DISP1_DATA00 0x61
|
||||
MX6QDL_PAD_EIM_DA8__IPU1_DISP1_DATA01 0x61
|
||||
MX6QDL_PAD_EIM_DA7__IPU1_DISP1_DATA02 0x61
|
||||
MX6QDL_PAD_EIM_DA6__IPU1_DISP1_DATA03 0x61
|
||||
MX6QDL_PAD_EIM_DA5__IPU1_DISP1_DATA04 0x61
|
||||
MX6QDL_PAD_EIM_DA4__IPU1_DISP1_DATA05 0x61
|
||||
MX6QDL_PAD_EIM_DA3__IPU1_DISP1_DATA06 0x61
|
||||
MX6QDL_PAD_EIM_DA2__IPU1_DISP1_DATA07 0x61
|
||||
MX6QDL_PAD_EIM_DA1__IPU1_DISP1_DATA08 0x61
|
||||
MX6QDL_PAD_EIM_DA0__IPU1_DISP1_DATA09 0x61
|
||||
MX6QDL_PAD_EIM_EB1__IPU1_DISP1_DATA10 0x61
|
||||
MX6QDL_PAD_EIM_EB0__IPU1_DISP1_DATA11 0x61
|
||||
MX6QDL_PAD_EIM_A17__IPU1_DISP1_DATA12 0x61
|
||||
MX6QDL_PAD_EIM_A18__IPU1_DISP1_DATA13 0x61
|
||||
MX6QDL_PAD_EIM_A19__IPU1_DISP1_DATA14 0x61
|
||||
MX6QDL_PAD_EIM_A20__IPU1_DISP1_DATA15 0x61
|
||||
MX6QDL_PAD_EIM_A21__IPU1_DISP1_DATA16 0x61
|
||||
MX6QDL_PAD_EIM_A22__IPU1_DISP1_DATA17 0x61
|
||||
MX6QDL_PAD_EIM_A23__IPU1_DISP1_DATA18 0x61
|
||||
MX6QDL_PAD_EIM_A24__IPU1_DISP1_DATA19 0x61
|
||||
MX6QDL_PAD_EIM_D31__IPU1_DISP1_DATA20 0x61
|
||||
MX6QDL_PAD_EIM_D30__IPU1_DISP1_DATA21 0x61
|
||||
MX6QDL_PAD_EIM_D26__IPU1_DISP1_DATA22 0x61
|
||||
MX6QDL_PAD_EIM_D27__IPU1_DISP1_DATA23 0x61
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu2_vdac: ipu2vdacgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU2_DI0_DISP_CLK 0xd1
|
||||
MX6QDL_PAD_DI0_PIN15__IPU2_DI0_PIN15 0xd1
|
||||
MX6QDL_PAD_DI0_PIN2__IPU2_DI0_PIN02 0xd1
|
||||
MX6QDL_PAD_DI0_PIN3__IPU2_DI0_PIN03 0xd1
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU2_DISP0_DATA00 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU2_DISP0_DATA01 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU2_DISP0_DATA02 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU2_DISP0_DATA03 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU2_DISP0_DATA04 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU2_DISP0_DATA05 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU2_DISP0_DATA06 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU2_DISP0_DATA07 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU2_DISP0_DATA08 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU2_DISP0_DATA09 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU2_DISP0_DATA10 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU2_DISP0_DATA11 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU2_DISP0_DATA12 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU2_DISP0_DATA13 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU2_DISP0_DATA14 0xf9
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU2_DISP0_DATA15 0xf9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mmc_cd: gpiommccdgrp {
|
||||
fsl,pins = <
|
||||
/* MMC1 CD */
|
||||
MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm2: pwm2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__PWM2_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT2__PWM4_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_regulator_usbh_pwr: gpioregusbhpwrgrp {
|
||||
fsl,pins = <
|
||||
/* USBH_EN */
|
||||
MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x0f058
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_regulator_usbhub_pwr: gpioregusbhubpwrgrp {
|
||||
fsl,pins = <
|
||||
/* USBH_HUB_EN */
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x0f058
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_regulator_usbotg_pwr: gpioregusbotgpwrgrp {
|
||||
fsl,pins = <
|
||||
/* USBO1 power en */
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x0f058
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reset_moci: gpioresetmocigrp {
|
||||
fsl,pins = <
|
||||
/* RESET_MOCI control */
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x0f058
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sd_cd: gpiosdcdgrp {
|
||||
fsl,pins = <
|
||||
/* SD1 CD */
|
||||
MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_spdif: spdifgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_16__SPDIF_IN 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_touch_int: gpiotouchintgrp {
|
||||
fsl,pins = <
|
||||
/* STMPE811 interrupt */
|
||||
MX6QDL_PAD_KEY_COL2__GPIO4_IO10 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1_dce: uart1dcegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* DTE mode */
|
||||
pinctrl_uart1_dte: uart1dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT11__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D19__UART1_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D20__UART1_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* Additional DTR, DSR, DCD */
|
||||
pinctrl_uart1_ctrl: uart1ctrlgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D23__UART1_DCD_B 0x1b0b0
|
||||
MX6QDL_PAD_EIM_D24__UART1_DTR_B 0x1b0b0
|
||||
MX6QDL_PAD_EIM_D25__UART1_DSR_B 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2_dce: uart2dcegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* DTE mode */
|
||||
pinctrl_uart2_dte: uart2dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT4__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT7__UART2_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT6__UART2_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT5__UART2_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart4_dce: uart4dcegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* DTE mode */
|
||||
pinctrl_uart4_dte: uart4dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL0__UART4_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW0__UART4_TX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart5_dce: uart5dcegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* DTE mode */
|
||||
pinctrl_uart5_dte: uart5dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL1__UART5_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW1__UART5_TX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_4bit: usdhc1grp_4bit {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17071
|
||||
MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10071
|
||||
MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17071
|
||||
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17071
|
||||
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17071
|
||||
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17071
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_8bit: usdhc1grp_8bit {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D0__SD1_DATA4 0x17071
|
||||
MX6QDL_PAD_NANDF_D1__SD1_DATA5 0x17071
|
||||
MX6QDL_PAD_NANDF_D2__SD1_DATA6 0x17071
|
||||
MX6QDL_PAD_NANDF_D3__SD1_DATA7 0x17071
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17071
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10071
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17071
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17071
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17071
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17071
|
||||
>;
|
||||
};
|
||||
|
||||
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
|
||||
/* eMMC reset */
|
||||
MX6QDL_PAD_SD3_RST__SD3_RESET 0x17059
|
||||
>;
|
||||
};
|
||||
};
|
|
@ -1,431 +0,0 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2019 Toradex AG
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include "imx6dl.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX6DL/S";
|
||||
compatible = "toradex,colibri_imx6dl", "fsl,imx6dl";
|
||||
|
||||
/* Will be filled by the bootloader */
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0>;
|
||||
};
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc1;
|
||||
usb0 = &usbotg; /* required for ums */
|
||||
ethernet0 = &fec;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
reg_module_3v3: regulator-module-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "+V3.3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_host_vbus: regulator-usb-host-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_regulator_usbh_pwr>;
|
||||
regulator-name = "usb_host_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 31 GPIO_ACTIVE_LOW>; /* USBH_PEN */
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy: ethernet-phy@0 {
|
||||
reg = <0>;
|
||||
micrel,led-mode = <0>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* PWR_I2C: power I2C to audio codec, PMIC, temperature sensor and
|
||||
* touch screen controller
|
||||
*/
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pfuze100@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>;
|
||||
};
|
||||
|
||||
sw3a_reg: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
swbst_reg: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
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: unused */
|
||||
|
||||
vgen2_reg: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
/* vgen3: unused */
|
||||
|
||||
vgen4_reg: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen5_reg: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vgen6_reg: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* I2C3_SDA/SCL on SODIMM 194/196 (e.g. RTC on carrier board)
|
||||
*/
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_recovery>;
|
||||
scl-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_A */
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1_dte &pinctrl_uart1_ctrl>;
|
||||
fsl,dte-mode;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_B */
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2_dte>;
|
||||
fsl,dte-mode;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_C */
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3_dte>;
|
||||
fsl,dte-mode;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbh1 {
|
||||
dr_mode = "host";
|
||||
vbus-supply = <®_usb_host_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBC */
|
||||
&usbotg {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri MMC */
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1 &pinctrl_mmc_cd>;
|
||||
cd-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; /* MMCD */
|
||||
disable-wp;
|
||||
vqmmc-supply = <®_module_3v3>;
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
vqmmc-supply = <®_module_3v3>;
|
||||
bus-width = <8>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_ecspi4: ecspi4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D22__ECSPI4_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_D28__ECSPI4_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D21__ECSPI4_SCLK 0x100b1
|
||||
/* SPI CS */
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0
|
||||
MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0
|
||||
MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK ((1<<30) | 0x1b0b0)
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_bl_on: gpioblon {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D26__GPIO3_IO26 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hdmi_ddc: hdmiddcgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__HDMI_TX_DDC_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_recovery: i2c3recoverygrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__GPIO1_IO03 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1_lcdif: ipu1lcdifgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0xa1
|
||||
MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0xa1
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0xa1
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0xa1
|
||||
MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0xa1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mmc_cd: gpiommccd {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm2: pwm2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__PWM2_OUT 0x1b0b1
|
||||
MX6QDL_PAD_EIM_A21__GPIO2_IO17 0x00040
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
|
||||
MX6QDL_PAD_EIM_A22__GPIO2_IO16 0x00040
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT2__PWM4_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_regulator_usbh_pwr: gpioregusbhpwrgrp {
|
||||
fsl,pins = <
|
||||
/* SODIMM 129 USBH_PEN */
|
||||
MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x0f058
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1_dce: uart1dcegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* DTE mode */
|
||||
pinctrl_uart1_dte: uart1dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT11__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D19__UART1_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D20__UART1_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
/* Additional DTR, DSR, DCD */
|
||||
pinctrl_uart1_ctrl: uart1ctrlgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D23__UART1_DCD_B 0x1b0b0
|
||||
MX6QDL_PAD_EIM_D24__UART1_DTR_B 0x1b0b0
|
||||
MX6QDL_PAD_EIM_D25__UART1_DSR_B 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2_dte: uart2dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT4__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT7__UART2_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT6__UART2_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_SD4_DAT5__UART2_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart3_dte: uart3dtegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CLK__UART3_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_CMD__UART3_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17071
|
||||
MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10071
|
||||
MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17071
|
||||
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17071
|
||||
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17071
|
||||
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17071
|
||||
>;
|
||||
};
|
||||
|
||||
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
|
||||
/* eMMC reset */
|
||||
MX6QDL_PAD_SD3_RST__SD3_RESET 0x17059
|
||||
>;
|
||||
};
|
||||
};
|
|
@ -212,6 +212,7 @@
|
|||
&ecspi1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
cs-gpios = <&gpio4 9 GPIO_ACTIVE_LOW>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -237,7 +238,6 @@
|
|||
compatible = "wlf,wm8962";
|
||||
reg = <0x1a>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
clock-names = "xclk";
|
||||
DCVDD-supply = <®_audio>;
|
||||
DBVDD-supply = <®_audio>;
|
||||
AVDD-supply = <®_audio>;
|
||||
|
@ -249,9 +249,9 @@
|
|||
gpio-cfg = <
|
||||
0x0000 /* 0:Default */
|
||||
0x0000 /* 1:Default */
|
||||
0x0013 /* 2:FN_DMICCLK */
|
||||
0x0000 /* 2:FN_DMICCLK */
|
||||
0x0000 /* 3:Default */
|
||||
0x8014 /* 4:FN_DMICCDAT */
|
||||
0x0000 /* 4:FN_DMICCDAT */
|
||||
0x0000 /* 5:Default */
|
||||
>;
|
||||
};
|
||||
|
@ -328,6 +328,10 @@
|
|||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
};
|
||||
|
||||
&snvs_pwrkey {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -379,7 +383,7 @@
|
|||
MX6QDL_PAD_KEY_COL0__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW0__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_KEY_COL1__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW1__ECSPI1_SS0 0x100b1
|
||||
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
|
|
|
@ -207,6 +207,10 @@
|
|||
vin-supply = <&sw1c_reg>;
|
||||
};
|
||||
|
||||
&snvs_poweroff {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
|
|
@ -165,6 +165,7 @@
|
|||
};
|
||||
|
||||
&pwm4 {
|
||||
#pwm-cells = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
20
arch/arm/dts/imx6dl-colibri-eval-v3-u-boot.dtsi
Normal file
20
arch/arm/dts/imx6dl-colibri-eval-v3-u-boot.dtsi
Normal file
|
@ -0,0 +1,20 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
#include "imx6qdl-u-boot.dtsi"
|
||||
|
||||
&{/aliases} {
|
||||
/* U-Boot won't find PMIC otherwise */
|
||||
i2c0 = &i2c3;
|
||||
i2c1 = &i2c2;
|
||||
/* SDHCI instance order: eMMC, 4-bit SD/MMC (U-Boot won't find ConfigBlock otherwise) */
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc1;
|
||||
};
|
||||
|
||||
&wdog1 {
|
||||
status = "okay";
|
||||
u-boot,dm-spl;
|
||||
};
|
157
arch/arm/dts/imx6dl-colibri-eval-v3.dts
Normal file
157
arch/arm/dts/imx6dl-colibri-eval-v3.dts
Normal file
|
@ -0,0 +1,157 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2014-2022 Toradex
|
||||
* Copyright 2012 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include "imx6dl.dtsi"
|
||||
#include "imx6qdl-colibri.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX6DL/S on Colibri Evaluation Board V3";
|
||||
compatible = "toradex,colibri_imx6dl-eval-v3", "toradex,colibri_imx6dl",
|
||||
"fsl,imx6dl";
|
||||
|
||||
aliases {
|
||||
i2c0 = &i2c2;
|
||||
i2c1 = &i2c3;
|
||||
};
|
||||
|
||||
aliases {
|
||||
rtc0 = &rtc_i2c;
|
||||
rtc1 = &snvs_rtc;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
/* Fixed crystal dedicated to mcp251x */
|
||||
clk16m: clock-16m {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <16000000>;
|
||||
clock-output-names = "clk16m";
|
||||
};
|
||||
};
|
||||
|
||||
/* Colibri SSP */
|
||||
&ecspi4 {
|
||||
status = "okay";
|
||||
|
||||
mcp251x0: mcp251x@0 {
|
||||
compatible = "microchip,mcp2515";
|
||||
clocks = <&clk16m>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <27 0x2>;
|
||||
reg = <0>;
|
||||
spi-max-frequency = <10000000>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 (e.g. RTC on carrier board)
|
||||
*/
|
||||
&i2c3 {
|
||||
status = "okay";
|
||||
|
||||
/* M41T0M6 real time clock on carrier board */
|
||||
rtc_i2c: rtc@68 {
|
||||
compatible = "st,m41t0";
|
||||
reg = <0x68>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <
|
||||
&pinctrl_weim_gpio_1 &pinctrl_weim_gpio_2
|
||||
&pinctrl_weim_gpio_3 &pinctrl_weim_gpio_4
|
||||
&pinctrl_weim_gpio_5 &pinctrl_weim_gpio_6
|
||||
&pinctrl_usbh_oc_1 &pinctrl_usbc_id_1
|
||||
>;
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_usb_host_vbus {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_host_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri MMC */
|
||||
&usdhc1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&weim {
|
||||
status = "okay";
|
||||
|
||||
/* weim memory map: 32MB on CS0, CS1, CS2 and CS3 */
|
||||
ranges = <0 0 0x08000000 0x02000000
|
||||
1 0 0x0a000000 0x02000000
|
||||
2 0 0x0c000000 0x02000000
|
||||
3 0 0x0e000000 0x02000000>;
|
||||
|
||||
/* SRAM on Colibri nEXT_CS0 */
|
||||
sram@0,0 {
|
||||
compatible = "cypress,cy7c1019dv33-10zsxi", "mtd-ram";
|
||||
reg = <0 0 0x00010000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
bank-width = <2>;
|
||||
fsl,weim-cs-timing = <0x00010081 0x00000000 0x04000000
|
||||
0x00000000 0x04000040 0x00000000>;
|
||||
};
|
||||
|
||||
/* SRAM on Colibri nEXT_CS1 */
|
||||
sram@1,0 {
|
||||
compatible = "cypress,cy7c1019dv33-10zsxi", "mtd-ram";
|
||||
reg = <1 0 0x00010000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
bank-width = <2>;
|
||||
fsl,weim-cs-timing = <0x00010081 0x00000000 0x04000000
|
||||
0x00000000 0x04000040 0x00000000>;
|
||||
};
|
||||
};
|
|
@ -12,6 +12,156 @@
|
|||
/ {
|
||||
model = "BTicino i.MX6DL Mamoj board";
|
||||
compatible = "bticino,imx6dl-mamoj", "fsl,imx6dl";
|
||||
|
||||
/* Will be filled by the bootloader */
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0>;
|
||||
};
|
||||
|
||||
backlight_lcd: backlight-lcd {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm3 0 25000>; /* 25000ns -> 40kHz */
|
||||
brightness-levels = <0 4 8 16 32 64 128 160 192 224 255>;
|
||||
default-brightness-level = <7>;
|
||||
};
|
||||
|
||||
display: disp0 {
|
||||
compatible = "fsl,imx-parallel-display";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
interface-pix-fmt = "rgb24";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ipu1_lcdif>;
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
lcd_display_in: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_disp0>;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
lcd_display_out: endpoint {
|
||||
remote-endpoint = <&lcd_panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel-lcd {
|
||||
compatible = "rocktech,rk070er9427";
|
||||
backlight = <&backlight_lcd>;
|
||||
power-supply = <®_lcd_lr>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ipu1_lcdif_pwr>;
|
||||
|
||||
port {
|
||||
lcd_panel_in: endpoint {
|
||||
remote-endpoint = <&lcd_display_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
reg_lcd_3v3: regulator-lcd-dvdd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-dvdd";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio3 1 0>;
|
||||
enable-active-high;
|
||||
startup-delay-us = <21000>;
|
||||
};
|
||||
|
||||
reg_lcd_power: regulator-lcd-power {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-enable";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio3 6 0>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_lcd_3v3>;
|
||||
};
|
||||
|
||||
reg_lcd_vgl: regulator-lcd-vgl {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-vgl";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio2 20 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <6000>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_lcd_power>;
|
||||
};
|
||||
|
||||
reg_lcd_vgh: regulator-lcd-vgh {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-vgh";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio3 31 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <6000>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_lcd_avdd>;
|
||||
};
|
||||
|
||||
reg_lcd_vcom: regulator-lcd-vcom {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-vcom";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio4 14 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <11000>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_lcd_vgh>;
|
||||
};
|
||||
|
||||
reg_lcd_lr: regulator-lcd-lr {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-lr";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_lcd_vcom>;
|
||||
};
|
||||
|
||||
reg_lcd_avdd: regulator-lcd-avdd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lcd-avdd";
|
||||
regulator-min-microvolt = <10280000>;
|
||||
regulator-max-microvolt = <10280000>;
|
||||
gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <6000>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_lcd_vgl>;
|
||||
};
|
||||
|
||||
reg_usb_host: regulator-usb-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usbhost-vbus";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbhost>;
|
||||
regulator-min-microvolt = <50000000>;
|
||||
regulator-max-microvolt = <50000000>;
|
||||
gpio = <&gpio6 6 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_wl18xx_vmmc: regulator-wl18xx-vmcc {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vwl1807";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wlan>;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
gpio = <&gpio6 21 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <70000>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
|
@ -34,7 +184,7 @@
|
|||
pinctrl-0 = <&pinctrl_i2c4>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pfuze100@08 {
|
||||
pfuze100: pmic@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
|
||||
|
@ -148,12 +298,57 @@
|
|||
};
|
||||
};
|
||||
|
||||
&ipu1_di0_disp0 {
|
||||
remote-endpoint = <&lcd_display_in>;
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_host>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
dr_mode = "peripheral";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
bus-width = <4>;
|
||||
vmmc-supply = <®_wl18xx_vmmc>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
wakeup-source;
|
||||
keep-power-in-suspend;
|
||||
cap-power-off-card;
|
||||
max-frequency = <25000000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
wlcore: wlcore@2 {
|
||||
compatible = "ti,wl1837";
|
||||
reg = <2>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <23 IRQ_TYPE_LEVEL_HIGH>;
|
||||
tcxo-clock-frequency = <26000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
|
@ -201,6 +396,59 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1_lcdif: pinctrlipu1lcdif { /* parallel port 24-bit */
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10 /* VDOUT_PCLK */
|
||||
MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x10
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10 /* VDOUT_HSYNC */
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10 /* VDOUT_VSYNC */
|
||||
MX6QDL_PAD_DI0_PIN4__IPU1_DI0_PIN04 0x10 /* VDOUT_RESET */
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10
|
||||
MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10
|
||||
MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10
|
||||
MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10
|
||||
MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10
|
||||
MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10
|
||||
MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10
|
||||
MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1_lcdif_pwr: ipu1lcdifpwrgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_DA1__GPIO3_IO01 0x40013058 /* EN_LCD33V */
|
||||
MX6QDL_PAD_SD4_DAT5__GPIO2_IO13 0x4001b0b0 /* EN_AVDD */
|
||||
MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x40013058 /* ENVGH */
|
||||
MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x40013058 /* ENVGL */
|
||||
MX6QDL_PAD_EIM_DA6__GPIO3_IO06 0x40013058 /* LCD_POWER */
|
||||
MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x40013058 /* EN_VCOM_LCD */
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x40013058 /* LCD_L_R */
|
||||
MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0x40013058 /* LCD_U_D */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart3: uart3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
|
||||
|
@ -208,6 +456,23 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbhost: usbhostgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A23__GPIO6_IO06 0x4001b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17069
|
||||
MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10079
|
||||
MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17069
|
||||
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17069
|
||||
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17069
|
||||
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17069
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3: usdhc3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
|
||||
|
@ -222,4 +487,10 @@
|
|||
MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_wlan: wlangrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_RGMII_TD1__GPIO6_IO21 0x4001b0b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
ðphy {
|
||||
rxdv-skew-ps = <180>;
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
|
@ -11,6 +15,7 @@
|
|||
#include "imx6dl-mba6.dtsi"
|
||||
|
||||
/ {
|
||||
model = "TQ TQMa6S on MBa6x";
|
||||
compatible = "tq,mba6a", "tq,tqma6dl", "fsl,imx6dl";
|
||||
model = "TQ TQMa6S/DL on MBa6x";
|
||||
compatible = "tq,imx6dl-mba6x-a", "tq,mba6a",
|
||||
"tq,imx6dl-tqma6dl-a", "fsl,imx6dl";
|
||||
};
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
|
@ -11,6 +15,7 @@
|
|||
#include "imx6dl-mba6.dtsi"
|
||||
|
||||
/ {
|
||||
model = "TQ TQMa6S on MBa6x";
|
||||
compatible = "tq,mba6b", "tq,tqma6dl", "fsl,imx6dl";
|
||||
model = "TQ TQMa6S/DL on MBa6x";
|
||||
compatible = "tq,imx6dl-mba6x-b", "tq,mba6b",
|
||||
"tq,imx6dl-tqma6dl-b", "fsl,imx6dl";
|
||||
};
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright 2013-2019 Boundary Devices, Inc.
|
||||
// Copyright 2012 Freescale Semiconductor, Inc.
|
||||
// Copyright 2011 Linaro Ltd.
|
||||
// SPDX-License-Identifier: GPL-2.0 OR X11
|
||||
/*
|
||||
* Copyright 2013 Boundary Devices, Inc.
|
||||
* Copyright 2012 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6dl.dtsi"
|
||||
#include "imx6qdl-nitrogen6x.dtsi"
|
||||
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright 2013 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DTS_IMX6DL_PINFUNC_H
|
||||
|
@ -668,6 +664,7 @@
|
|||
#define MX6QDL_PAD_ENET_RX_ER__SPDIF_IN 0x1f4 0x5c4 0x8f0 0x3 0x1
|
||||
#define MX6QDL_PAD_ENET_RX_ER__ENET_1588_EVENT2_OUT 0x1f4 0x5c4 0x000 0x4 0x0
|
||||
#define MX6QDL_PAD_ENET_RX_ER__GPIO1_IO24 0x1f4 0x5c4 0x000 0x5 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__OSC32K_32K_OUT 0x1f8 0x5c8 0x000 0x0 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1f8 0x5c8 0x818 0x1 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__ESAI_TX_HF_CLK 0x1f8 0x5c8 0x838 0x2 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__SPDIF_OUT 0x1f8 0x5c8 0x000 0x3 0x0
|
||||
|
|
|
@ -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,3 +11,18 @@
|
|||
model = "Freescale i.MX6 DualLite/Solo SABRE Automotive Board";
|
||||
compatible = "fsl,imx6dl-sabreauto", "fsl,imx6dl";
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
996000 1275000
|
||||
792000 1175000
|
||||
396000 1150000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC-PU uV */
|
||||
996000 1200000
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
>;
|
||||
};
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
* Copyright 2013-2017 Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include "imx6dl.dtsi"
|
||||
#include "imx6qdl-tqma6a.dtsi"
|
||||
#include "imx6qdl-tqma6.dtsi"
|
||||
|
||||
/ {
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x20000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
* Copyright 2013-2017 Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include "imx6dl.dtsi"
|
||||
#include "imx6qdl-tqma6b.dtsi"
|
||||
#include "imx6qdl-tqma6.dtsi"
|
||||
|
||||
/ {
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x20000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
cpu@0 {
|
||||
cpu0: cpu@0 {
|
||||
compatible = "arm,cortex-a9";
|
||||
device_type = "cpu";
|
||||
reg = <0>;
|
||||
|
@ -44,6 +44,8 @@
|
|||
arm-supply = <®_arm>;
|
||||
pu-supply = <®_pu>;
|
||||
soc-supply = <®_soc>;
|
||||
nvmem-cells = <&cpu_speed_grade>;
|
||||
nvmem-cell-names = "speed_grade";
|
||||
};
|
||||
|
||||
cpu@1 {
|
||||
|
@ -64,6 +66,7 @@
|
|||
396000 1175000
|
||||
>;
|
||||
clock-latency = <61036>; /* two CLK32 periods */
|
||||
#cooling-cells = <2>;
|
||||
clocks = <&clks IMX6QDL_CLK_ARM>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
|
||||
<&clks IMX6QDL_CLK_STEP>,
|
||||
|
@ -77,7 +80,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
soc {
|
||||
soc: soc {
|
||||
ocram: sram@900000 {
|
||||
compatible = "mmio-sram";
|
||||
reg = <0x00900000 0x20000>;
|
||||
|
@ -85,10 +88,6 @@
|
|||
};
|
||||
|
||||
aips1: bus@2000000 {
|
||||
iomuxc: iomuxc@20e0000 {
|
||||
compatible = "fsl,imx6dl-iomuxc";
|
||||
};
|
||||
|
||||
pxp: pxp@20f0000 {
|
||||
reg = <0x020f0000 0x4000>;
|
||||
interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -295,6 +294,10 @@
|
|||
compatible = "fsl,imx6dl-hdmi";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
compatible = "fsl,imx6dl-iomuxc";
|
||||
};
|
||||
|
||||
&ipu1_csi1 {
|
||||
ipu1_csi1_from_ipu1_csi1_mux: endpoint {
|
||||
remote-endpoint = <&ipu1_csi1_mux_to_ipu1_csi1>;
|
||||
|
|
25
arch/arm/dts/imx6q-apalis-eval-u-boot.dtsi
Normal file
25
arch/arm/dts/imx6q-apalis-eval-u-boot.dtsi
Normal file
|
@ -0,0 +1,25 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
#include "imx6qdl-u-boot.dtsi"
|
||||
|
||||
&{/aliases} {
|
||||
/* U-Boot won't find PMIC otherwise */
|
||||
i2c0 = &i2c1;
|
||||
i2c1 = &i2c2;
|
||||
i2c2 = &i2c3;
|
||||
/*
|
||||
* SDHCI instance order: eMMC, 8-bit SD/MMC, 4-bit SD
|
||||
* (U-Boot won't find ConfigBlock otherwise)
|
||||
*/
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc1;
|
||||
mmc2 = &usdhc2;
|
||||
};
|
||||
|
||||
&wdog1 {
|
||||
status = "okay";
|
||||
u-boot,dm-spl;
|
||||
};
|
170
arch/arm/dts/imx6q-apalis-eval.dts
Normal file
170
arch/arm/dts/imx6q-apalis-eval.dts
Normal file
|
@ -0,0 +1,170 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2014-2022 Toradex
|
||||
* Copyright 2012 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-apalis.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Apalis iMX6Q/D Module on Apalis Evaluation Board";
|
||||
compatible = "toradex,apalis_imx6q-eval", "toradex,apalis_imx6q",
|
||||
"fsl,imx6q";
|
||||
|
||||
aliases {
|
||||
i2c0 = &i2c1;
|
||||
i2c1 = &i2c3;
|
||||
i2c2 = &i2c2;
|
||||
rtc0 = &rtc_i2c;
|
||||
rtc1 = &snvs_rtc;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
reg_pcie_switch: regulator-pcie-switch {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio1 2 GPIO_ACTIVE_HIGH>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-name = "pcie_switch";
|
||||
startup-delay-us = <100000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
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";
|
||||
};
|
||||
};
|
||||
|
||||
&can1 {
|
||||
xceiver-supply = <®_3v3_sw>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can2 {
|
||||
xceiver-supply = <®_3v3_sw>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* I2C1_SDA/SCL on MXM3 209/211 (e.g. RTC on carrier board) */
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
|
||||
pcie-switch@58 {
|
||||
compatible = "plx,pex8605";
|
||||
reg = <0x58>;
|
||||
};
|
||||
|
||||
/* 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";
|
||||
};
|
||||
|
||||
&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;
|
||||
vpcie-supply = <®_pcie_switch>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&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";
|
||||
};
|
||||
|
||||
&sound_spdif {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spdif {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart5 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_host_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
vbus-supply = <®_usb_otg_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* MMC1 */
|
||||
&usdhc1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* SD1 */
|
||||
&usdhc2 {
|
||||
cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2 &pinctrl_sd_cd>;
|
||||
status = "okay";
|
||||
};
|
|
@ -1,4 +1,3 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2015 Timesys Corporation.
|
||||
* Copyright 2015 General Electric Company
|
||||
|
@ -66,13 +65,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
|
||||
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
|
@ -92,14 +84,19 @@
|
|||
};
|
||||
|
||||
&pca9539 {
|
||||
P04 {
|
||||
gpio-line-names = "AMB_P_INT1#", "AMB_P_INT2#", "BT_EN", "WLAN_EN",
|
||||
"", "SM_D_ACT", "DP1_RST#", "",
|
||||
"WD15S_EN", "WD15S_DIS#", "", "",
|
||||
"", "", "", "";
|
||||
|
||||
P04-hog {
|
||||
gpio-hog;
|
||||
gpios = <4 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P04";
|
||||
};
|
||||
|
||||
P07 {
|
||||
P07-hog {
|
||||
gpio-hog;
|
||||
gpios = <7 0>;
|
||||
output-low;
|
||||
|
@ -158,5 +155,3 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
#include "imx6q-bx50v3-uboot.dtsi"
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2015 Timesys Corporation.
|
||||
* Copyright 2015 General Electric Company
|
||||
|
@ -66,13 +65,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
|
||||
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
|
@ -92,7 +84,12 @@
|
|||
};
|
||||
|
||||
&pca9539 {
|
||||
P07 {
|
||||
gpio-line-names = "AMB_P_INT1#", "AMB_P_INT2#", "BT_EN", "WLAN_EN",
|
||||
"", "SM_D_ACT", "DP1_RST#", "",
|
||||
"WD15S_EN", "WD15S_DIS#", "", "",
|
||||
"", "", "", "";
|
||||
|
||||
P07-hog {
|
||||
gpio-hog;
|
||||
gpios = <7 0>;
|
||||
output-low;
|
||||
|
@ -157,5 +154,3 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
#include "imx6q-bx50v3-uboot.dtsi"
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2015 Timesys Corporation.
|
||||
* Copyright 2015 General Electric Company
|
||||
|
@ -54,17 +53,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>,
|
||||
<&clks IMX6QDL_CLK_IPU1_DI0_PRE_SEL>,
|
||||
<&clks IMX6QDL_CLK_IPU2_DI0_PRE_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
|
||||
<&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>;
|
||||
};
|
||||
|
||||
&ldb {
|
||||
fsl,dual-channel;
|
||||
status = "okay";
|
||||
|
@ -211,14 +199,19 @@
|
|||
};
|
||||
|
||||
&pca9539 {
|
||||
P10 {
|
||||
gpio-line-names = "AMB_P_INT1#", "AMB_P_INT2#", "BT_EN", "WLAN_EN",
|
||||
"REMOTE_ON_PML#", "SM_D_ACT", "DP1_RST#", "DP2_RST#",
|
||||
"", "", "", "",
|
||||
"", "", "", "";
|
||||
|
||||
P10-hog {
|
||||
gpio-hog;
|
||||
gpios = <8 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P10";
|
||||
};
|
||||
|
||||
P11 {
|
||||
P11-hog {
|
||||
gpio-hog;
|
||||
gpios = <9 0>;
|
||||
output-low;
|
||||
|
@ -300,5 +293,3 @@
|
|||
phy-handle = <&switchphy4>;
|
||||
};
|
||||
};
|
||||
|
||||
#include "imx6q-bx50v3-uboot.dtsi"
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Support for imx6 based Advantech DMS-BA16 Qseven module
|
||||
*
|
||||
|
@ -125,6 +124,9 @@
|
|||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
pinctrl-0 = <&pinctrl_usbotg_vbus>;
|
||||
gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -135,12 +137,12 @@
|
|||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>;
|
||||
cs-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
status = "okay";
|
||||
|
||||
flash: n25q032@0 {
|
||||
flash: flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
@ -173,8 +175,9 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
status = "okay";
|
||||
phy-supply = <®_3p3v>;
|
||||
phy-handle = <&phy0>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
|
@ -346,6 +349,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
|
@ -586,6 +590,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg_vbus: usbotgvbusgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
|
||||
|
|
|
@ -554,13 +554,23 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&usbphynop1 {
|
||||
clocks = <&clks IMX6QDL_CLK_USBPHY1>;
|
||||
clock-names = "main_clk";
|
||||
vcc-supply = <®_usb_h1_vbus>;
|
||||
};
|
||||
|
||||
&usbphynop2 {
|
||||
vcc-supply = <®_usb_h2_vbus>;
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
enable-sdio-wakeup;
|
||||
wakeup-source;
|
||||
voltage-ranges = <3300 3300>;
|
||||
vmmc-supply = <®_sw4>;
|
||||
fsl,wp-controller;
|
||||
|
@ -584,7 +594,7 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wdog1>;
|
||||
fsl,ext-reset-output;
|
||||
timeout-sec=<10>;
|
||||
timeout-sec = <10>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR X11
|
||||
/*
|
||||
* Copyright 2015 Timesys Corporation.
|
||||
* Copyright 2015 General Electric Company
|
||||
|
@ -103,10 +102,15 @@
|
|||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
switch@0 {
|
||||
switch: switch@0 {
|
||||
compatible = "marvell,mv88e6085"; /* 88e6240*/
|
||||
reg = <0>;
|
||||
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
|
||||
switch_ports: ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@ -118,22 +122,32 @@
|
|||
|
||||
switchphy0: switchphy@0 {
|
||||
reg = <0>;
|
||||
interrupt-parent = <&switch>;
|
||||
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
switchphy1: switchphy@1 {
|
||||
reg = <1>;
|
||||
interrupt-parent = <&switch>;
|
||||
interrupts = <1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
switchphy2: switchphy@2 {
|
||||
reg = <2>;
|
||||
interrupt-parent = <&switch>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
switchphy3: switchphy@3 {
|
||||
reg = <3>;
|
||||
interrupt-parent = <&switch>;
|
||||
interrupts = <3 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
switchphy4: switchphy@4 {
|
||||
reg = <4>;
|
||||
interrupt-parent = <&switch>;
|
||||
interrupts = <4 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -141,12 +155,12 @@
|
|||
};
|
||||
|
||||
&ecspi5 {
|
||||
cs-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
|
||||
cs-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi5>;
|
||||
status = "okay";
|
||||
|
||||
m25_eeprom: m25p80@0 {
|
||||
m25_eeprom: flash@0 {
|
||||
compatible = "atmel,at25";
|
||||
spi-max-frequency = <10000000>;
|
||||
size = <0x8000>;
|
||||
|
@ -159,8 +173,8 @@
|
|||
&i2c1 {
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-1 = <&pinctrl_i2c1_gpio>;
|
||||
sda-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH>;
|
||||
scl-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpio5 26 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpio5 27 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
|
||||
pca9547: mux@70 {
|
||||
compatible = "nxp,pca9547";
|
||||
|
@ -234,42 +248,42 @@
|
|||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
P12 {
|
||||
P12-hog {
|
||||
gpio-hog;
|
||||
gpios = <10 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P12";
|
||||
};
|
||||
|
||||
P13 {
|
||||
P13-hog {
|
||||
gpio-hog;
|
||||
gpios = <11 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P13";
|
||||
};
|
||||
|
||||
P14 {
|
||||
P14-hog {
|
||||
gpio-hog;
|
||||
gpios = <12 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P14";
|
||||
};
|
||||
|
||||
P15 {
|
||||
P15-hog {
|
||||
gpio-hog;
|
||||
gpios = <13 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P15";
|
||||
};
|
||||
|
||||
P16 {
|
||||
P16-hog {
|
||||
gpio-hog;
|
||||
gpios = <14 0>;
|
||||
output-low;
|
||||
line-name = "PCA9539-P16";
|
||||
};
|
||||
|
||||
P17 {
|
||||
P17-hog {
|
||||
gpio-hog;
|
||||
gpios = <15 0>;
|
||||
output-low;
|
||||
|
@ -301,15 +315,15 @@
|
|||
&i2c2 {
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-1 = <&pinctrl_i2c2_gpio>;
|
||||
sda-gpios = <&gpio4 13 GPIO_ACTIVE_HIGH>;
|
||||
scl-gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpio4 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpio4 12 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-1 = <&pinctrl_i2c3_gpio>;
|
||||
sda-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||
scl-gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
|
@ -379,4 +393,17 @@
|
|||
};
|
||||
};
|
||||
|
||||
#include "imx6q-bx50v3-uboot.dtsi"
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>,
|
||||
<&clks IMX6QDL_CLK_IPU1_DI0_PRE_SEL>,
|
||||
<&clks IMX6QDL_CLK_IPU1_DI1_PRE_SEL>,
|
||||
<&clks IMX6QDL_CLK_IPU2_DI0_PRE_SEL>,
|
||||
<&clks IMX6QDL_CLK_IPU2_DI1_PRE_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
|
||||
<&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD0_352M>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD0_352M>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD0_352M>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD0_352M>;
|
||||
};
|
||||
|
|
|
@ -43,13 +43,15 @@
|
|||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/sound/fsl-imx-audmux.h>
|
||||
#include "imx6q.dtsi"
|
||||
|
||||
/ {
|
||||
model = "CompuLab CM-FX6";
|
||||
compatible = "compulab,cm-fx6", "fsl,imx6q";
|
||||
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
|
||||
|
@ -134,10 +136,35 @@
|
|||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* The U-Boot: audio mux node has been removed because the required dt-bindings
|
||||
* header file is not present in the U-Boot.
|
||||
*/
|
||||
&audmux {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux>;
|
||||
status = "okay";
|
||||
|
||||
ssi2 {
|
||||
fsl,audmux-port = <1>;
|
||||
fsl,port-config = <
|
||||
(IMX_AUDMUX_V2_PTCR_RCLKDIR |
|
||||
IMX_AUDMUX_V2_PTCR_RCSEL(3 | 0x8) |
|
||||
IMX_AUDMUX_V2_PTCR_TCLKDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TCSEL(3))
|
||||
IMX_AUDMUX_V2_PDCR_RXDSEL(3)
|
||||
>;
|
||||
};
|
||||
|
||||
audmux4 {
|
||||
fsl,audmux-port = <3>;
|
||||
fsl,port-config = <
|
||||
(IMX_AUDMUX_V2_PTCR_TFSDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TFSEL(1) |
|
||||
IMX_AUDMUX_V2_PTCR_RCLKDIR |
|
||||
IMX_AUDMUX_V2_PTCR_RCSEL(1 | 0x8) |
|
||||
IMX_AUDMUX_V2_PTCR_TCLKDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TCSEL(1))
|
||||
IMX_AUDMUX_V2_PDCR_RXDSEL(1)
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
/*
|
||||
|
@ -161,13 +188,79 @@
|
|||
>;
|
||||
};
|
||||
|
||||
&cpu1 {
|
||||
/*
|
||||
* Although the imx6q fuse indicates that 1.2GHz operation is possible,
|
||||
* the module behaves unstable at this frequency. Hence, remove the
|
||||
* 1.2GHz operation point here.
|
||||
*/
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
996000 1250000
|
||||
852000 1250000
|
||||
792000 1175000
|
||||
396000 975000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC-PU uV */
|
||||
996000 1250000
|
||||
852000 1250000
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
>;
|
||||
};
|
||||
|
||||
&cpu2 {
|
||||
/*
|
||||
* Although the imx6q fuse indicates that 1.2GHz operation is possible,
|
||||
* the module behaves unstable at this frequency. Hence, remove the
|
||||
* 1.2GHz operation point here.
|
||||
*/
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
996000 1250000
|
||||
852000 1250000
|
||||
792000 1175000
|
||||
396000 975000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC-PU uV */
|
||||
996000 1250000
|
||||
852000 1250000
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
>;
|
||||
};
|
||||
|
||||
&cpu3 {
|
||||
/*
|
||||
* Although the imx6q fuse indicates that 1.2GHz operation is possible,
|
||||
* the module behaves unstable at this frequency. Hence, remove the
|
||||
* 1.2GHz operation point here.
|
||||
*/
|
||||
operating-points = <
|
||||
/* kHz uV */
|
||||
996000 1250000
|
||||
852000 1250000
|
||||
792000 1175000
|
||||
396000 975000
|
||||
>;
|
||||
fsl,soc-operating-points = <
|
||||
/* ARM kHz SOC-PU uV */
|
||||
996000 1250000
|
||||
852000 1250000
|
||||
792000 1175000
|
||||
396000 1175000
|
||||
>;
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>, <&gpio3 19 GPIO_ACTIVE_HIGH>;
|
||||
cs-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>, <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
status = "okay";
|
||||
|
||||
m25p80@0 {
|
||||
flash@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "st,m25p", "jedec,spi-nor";
|
||||
|
@ -396,8 +489,3 @@
|
|||
*/
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
/* The U-Boot: enable usdhc3 for mmc boot */
|
||||
&usdhc3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -12,6 +12,17 @@
|
|||
/ {
|
||||
model = "Engicam i.CoreM6 Quad/Dual OpenFrame Capacitive touch 10.1 Kit";
|
||||
compatible = "engicam,imx6-icore", "fsl,imx6q";
|
||||
|
||||
panel {
|
||||
compatible = "ampire,am-1280800n3tzqw-t00h";
|
||||
backlight = <&backlight_lvds>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ldb {
|
||||
|
@ -22,18 +33,11 @@
|
|||
fsl,data-width = <24>;
|
||||
status = "okay";
|
||||
|
||||
display-timings {
|
||||
native-mode = <&timing0>;
|
||||
timing0: timing0 {
|
||||
clock-frequency = <60000000>;
|
||||
hactive = <1280>;
|
||||
vactive = <800>;
|
||||
hback-porch = <40>;
|
||||
hfront-porch = <40>;
|
||||
vback-porch = <10>;
|
||||
vfront-porch = <3>;
|
||||
hsync-len = <80>;
|
||||
vsync-len = <10>;
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -9,11 +9,11 @@
|
|||
|
||||
/ {
|
||||
model = "Logic PD i.MX6QD SOM-M3";
|
||||
compatible = "fsl,imx6q";
|
||||
compatible = "logicpd,imx6q-logicpd", "fsl,imx6q";
|
||||
|
||||
backlight: backlight-lvds {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm3 0 20000>;
|
||||
pwms = <&pwm3 0 20000 0>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <6>;
|
||||
power-supply = <®_lcd>;
|
||||
|
@ -21,6 +21,8 @@
|
|||
|
||||
panel-lvds0 {
|
||||
compatible = "okaya,rs800480t-7x0gp";
|
||||
power-supply = <®_lcd_reset>;
|
||||
backlight = <&backlight>;
|
||||
|
||||
port {
|
||||
panel_in_lvds0: endpoint {
|
||||
|
@ -38,7 +40,6 @@
|
|||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio4 17 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
vin-supply = <®_3v3>;
|
||||
startup-delay-us = <500000>;
|
||||
};
|
||||
|
@ -52,7 +53,6 @@
|
|||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
vin-supply = <®_lcd>;
|
||||
};
|
||||
};
|
||||
|
@ -73,6 +73,16 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
touchscreen@26 {
|
||||
compatible = "ilitek,ili2117";
|
||||
reg = <0x26>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_touchscreen>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_EDGE_RISING>;
|
||||
};
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@
|
|||
cs-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
|
||||
m25p80@0 {
|
||||
flash@0 {
|
||||
compatible = "microchip,sst25vf016b";
|
||||
spi-max-frequency = <20000000>;
|
||||
reg = <0>;
|
||||
|
|
|
@ -1,6 +1,16 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
&ecspi5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi5_mba6x>;
|
||||
cs-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
ðphy {
|
||||
rxdv-skew-ps = <180>;
|
||||
|
@ -16,3 +26,19 @@
|
|||
txc-skew-ps = <1860>;
|
||||
rxc-skew-ps = <1860>;
|
||||
};
|
||||
|
||||
&sata {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_ecspi5_mba6x: ecspi5grp-mba6x {
|
||||
fsl,pins = <
|
||||
/* HYS, SPEED = MED, 100k up, DSE = 011, SRE_FAST */
|
||||
MX6QDL_PAD_SD1_DAT0__ECSPI5_MISO 0x1b099
|
||||
MX6QDL_PAD_SD1_CMD__ECSPI5_MOSI 0xb099
|
||||
MX6QDL_PAD_SD1_CLK__ECSPI5_SCLK 0xb099
|
||||
MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0xb099 /* eCSPI5 SS0 */
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include "imx6q-tqma6a.dtsi"
|
||||
#include "imx6qdl-mba6.dtsi"
|
||||
#include "imx6qdl-mba6a.dtsi"
|
||||
|
@ -12,5 +15,6 @@
|
|||
|
||||
/ {
|
||||
model = "TQ TQMa6Q on MBa6x";
|
||||
compatible = "tq,mba6a", "fsl,imx6q";
|
||||
compatible = "tq,imx6q-mba6x-a", "tq,mba6a",
|
||||
"tq,imx6q-tqma6q-a", "fsl,imx6q";
|
||||
};
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include "imx6q-tqma6b.dtsi"
|
||||
#include "imx6qdl-mba6.dtsi"
|
||||
#include "imx6qdl-mba6b.dtsi"
|
||||
|
@ -12,5 +15,6 @@
|
|||
|
||||
/ {
|
||||
model = "TQ TQMa6Q on MBa6x";
|
||||
compatible = "tq,mba6b", "fsl,imx6q";
|
||||
compatible = "tq,imx6q-mba6x-b", "tq,mba6b",
|
||||
"tq,imx6q-tqma6q-b", "fsl,imx6q";
|
||||
};
|
||||
|
|
|
@ -1,39 +1,89 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2019
|
||||
* Copyright 2016-2017
|
||||
* Lukasz Majewski, DENX Software Engineering, lukma@denx.de
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+ or X11
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
|
||||
/ {
|
||||
model = "Liebherr Nenzig (LWN) iMX6Q";
|
||||
compatible = "lwn,imx6-mccmon6", "fsl,imx6";
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc2;
|
||||
spi0 = &ecspi3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
model = "Liebherr (LWN) monitor6 i.MX6 Quad Board";
|
||||
compatible = "lwn,mccmon6", "fsl,imx6q";
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
|
||||
backlight_lvds: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_backlight>;
|
||||
pwms = <&pwm2 0 5000000 PWM_POLARITY_INVERTED>;
|
||||
brightness-levels = < 0 1 2 3 4 5 6 7 8 9
|
||||
10 11 12 13 14 15 16 17 18 19
|
||||
20 21 22 23 24 25 26 27 28 29
|
||||
30 31 32 33 34 35 36 37 38 39
|
||||
40 41 42 43 44 45 46 47 48 49
|
||||
50 51 52 53 54 55 56 57 58 59
|
||||
60 61 62 63 64 65 66 67 68 69
|
||||
70 71 72 73 74 75 76 77 78 79
|
||||
80 81 82 83 84 85 86 87 88 89
|
||||
90 91 92 93 94 95 96 97 98 99
|
||||
100 101 102 103 104 105 106 107 108 109
|
||||
110 111 112 113 114 115 116 117 118 119
|
||||
120 121 122 123 124 125 126 127 128 129
|
||||
130 131 132 133 134 135 136 137 138 139
|
||||
140 141 142 143 144 145 146 147 148 149
|
||||
150 151 152 153 154 155 156 157 158 159
|
||||
160 161 162 163 164 165 166 167 168 169
|
||||
170 171 172 173 174 175 176 177 178 179
|
||||
180 181 182 183 184 185 186 187 188 189
|
||||
190 191 192 193 194 195 196 197 198 199
|
||||
200 201 202 203 204 205 206 207 208 209
|
||||
210 211 212 213 214 215 216 217 218 219
|
||||
220 221 222 223 224 225 226 227 228 229
|
||||
230 231 232 233 234 235 236 237 238 239
|
||||
240 241 242 243 244 245 246 247 248 249
|
||||
250 251 252 253 254 255>;
|
||||
default-brightness-level = <50>;
|
||||
enable-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
reg_lvds: regulator-lvds {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "lvds_ppen";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_lvds>;
|
||||
gpio = <&gpio1 19 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
panel-lvds0 {
|
||||
compatible = "innolux,g121x1-l03";
|
||||
backlight = <&backlight_lvds>;
|
||||
power-supply = <®_lvds>;
|
||||
|
||||
port {
|
||||
panel_in_lvds0: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ecspi3 {
|
||||
cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi3 &pinctrl_ecspi3_cs &pinctrl_ecspi3_flwp>;
|
||||
spi-max-frequency = <25000000>;
|
||||
status = "okay";
|
||||
|
||||
s25sl032p: flash@0 {
|
||||
|
@ -50,21 +100,8 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii";
|
||||
phy-reset-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <1>;
|
||||
/* KSZ9031 PHY SKEW setup - old values * 60 ps */
|
||||
rxc-skew-ps = <1860>;
|
||||
txc-skew-ps = <1860>;
|
||||
txen-skew-ps = <900>;
|
||||
rxdv-skew-ps = <900>;
|
||||
rxd0-skew-ps = <180>;
|
||||
rxd1-skew-ps = <180>;
|
||||
rxd2-skew-ps = <180>;
|
||||
rxd3-skew-ps = <180>;
|
||||
txd0-skew-ps = <120>;
|
||||
txd1-skew-ps = <300>;
|
||||
txd2-skew-ps = <0>;
|
||||
txd3-skew-ps = <120>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -181,6 +218,59 @@
|
|||
};
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
lvds0: lvds-channel@0 {
|
||||
fsl,data-mapping = "spwg";
|
||||
fsl,data-width = <24>;
|
||||
status = "okay";
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in_lvds0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
bus-width = <4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&weim {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_weim_nor &pinctrl_weim_cs0>;
|
||||
|
@ -201,7 +291,13 @@
|
|||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
pinctrl_backlight: dispgrp {
|
||||
fsl,pins = <
|
||||
/* BLEN_OUT */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi3: ecspi3grp {
|
||||
fsl,pins = <
|
||||
|
@ -246,13 +342,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_1__GPIO1_IO01 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1
|
||||
|
@ -267,6 +356,19 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm2: pwm2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__PWM2_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_lvds: reqlvdsgrp {
|
||||
fsl,pins = <
|
||||
/* LVDS_PPEN_OUT */
|
||||
MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
|
||||
|
@ -274,6 +376,15 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart4: uart4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT16__UART4_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT17__UART4_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
|
||||
|
@ -356,27 +467,3 @@
|
|||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright 2013-2019 Boundary Devices, Inc.
|
||||
// Copyright 2012 Freescale Semiconductor, Inc.
|
||||
// Copyright 2011 Linaro Ltd.
|
||||
// SPDX-License-Identifier: GPL-2.0 OR X11
|
||||
/*
|
||||
* Copyright 2013 Boundary Devices, Inc.
|
||||
* Copyright 2012 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-nitrogen6x.dtsi"
|
||||
|
||||
|
|
|
@ -61,11 +61,6 @@
|
|||
reg = <0x10000000 0>;
|
||||
};
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc2;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart2;
|
||||
};
|
||||
|
@ -112,7 +107,7 @@
|
|||
};
|
||||
|
||||
panel: panel {
|
||||
compatible = "innolux,n133hse-ea1", "simple-panel";
|
||||
compatible = "innolux,n133hse-ea1";
|
||||
backlight = <&backlight>;
|
||||
};
|
||||
|
||||
|
@ -227,20 +222,30 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet_novena>;
|
||||
phy-mode = "rgmii";
|
||||
phy-handle = <ðphy>;
|
||||
phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
|
||||
rxc-skew-ps = <3000>;
|
||||
rxdv-skew-ps = <0>;
|
||||
txc-skew-ps = <3000>;
|
||||
txen-skew-ps = <0>;
|
||||
rxd0-skew-ps = <0>;
|
||||
rxd1-skew-ps = <0>;
|
||||
rxd2-skew-ps = <0>;
|
||||
rxd3-skew-ps = <0>;
|
||||
txd0-skew-ps = <3000>;
|
||||
txd1-skew-ps = <3000>;
|
||||
txd2-skew-ps = <3000>;
|
||||
txd3-skew-ps = <3000>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy: ethernet-phy {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
rxc-skew-ps = <3000>;
|
||||
rxdv-skew-ps = <0>;
|
||||
txc-skew-ps = <3000>;
|
||||
txen-skew-ps = <0>;
|
||||
rxd0-skew-ps = <0>;
|
||||
rxd1-skew-ps = <0>;
|
||||
rxd2-skew-ps = <0>;
|
||||
rxd3-skew-ps = <0>;
|
||||
txd0-skew-ps = <3000>;
|
||||
txd1-skew-ps = <3000>;
|
||||
txd2-skew-ps = <3000>;
|
||||
txd3-skew-ps = <3000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
|
@ -460,6 +465,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-phytec-phycore-som.dtsi"
|
||||
#include "imx6qdl-phytec-mira.dtsi"
|
||||
#include "imx6qdl-phytec-mira-peb-eval-01.dtsi"
|
||||
#include "imx6qdl-phytec-mira-peb-av-02.dtsi"
|
||||
#include "imx6qdl-phytec-mira-peb-wlbt-05.dtsi"
|
||||
|
||||
/ {
|
||||
model = "PHYTEC phyBOARD-Mira Quad Carrier-Board with NAND";
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* Copyright 2013 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DTS_IMX6Q_PINFUNC_H
|
||||
|
@ -551,6 +547,7 @@
|
|||
#define MX6QDL_PAD_ENET_RXD1__ESAI_TX_FS 0x1e0 0x4f4 0x860 0x2 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD1__ENET_1588_EVENT3_OUT 0x1e0 0x4f4 0x000 0x4 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1e0 0x4f4 0x000 0x5 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__OSC32K_32K_OUT 0x1e4 0x4f8 0x000 0x0 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1e4 0x4f8 0x848 0x1 0x1
|
||||
#define MX6QDL_PAD_ENET_RXD0__ESAI_TX_HF_CLK 0x1e4 0x4f8 0x868 0x2 0x0
|
||||
#define MX6QDL_PAD_ENET_RXD0__SPDIF_OUT 0x1e4 0x4f8 0x000 0x3 0x0
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
// Copyright 2011 Linaro Ltd.
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-sabrelite.dtsi"
|
||||
|
||||
|
@ -17,3 +16,8 @@
|
|||
&sata {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ipu1_csi1_from_mipi_vc1 {
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
|
||||
&aips1 {
|
||||
&{/soc/bus@2000000} { /* AIPS1 */
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
|||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&soc {
|
||||
&{/soc} {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR MIT
|
||||
//
|
||||
// Copyright 2014-2019 Soeren Moch <smoch@web.de>
|
||||
// Copyright 2014 Soeren Moch <smoch@web.de>
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
|||
mmc0 = &usdhc2;
|
||||
mmc1 = &usdhc3;
|
||||
mmc2 = &usdhc4;
|
||||
usb0 = &usbotg;
|
||||
/delete-property/ mmc3;
|
||||
};
|
||||
|
||||
memory@10000000 {
|
||||
|
@ -106,7 +106,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
phy-handle = <&phy>;
|
||||
status = "okay";
|
||||
|
||||
|
@ -117,6 +116,8 @@
|
|||
phy: ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
reset-assert-us = <10000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -158,7 +159,7 @@
|
|||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
|
||||
rtc: ds1307@68 {
|
||||
rtc: rtc@68 {
|
||||
compatible = "dallas,ds1307";
|
||||
reg = <0x68>;
|
||||
};
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
* Copyright 2013-2017 Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-tqma6a.dtsi"
|
||||
#include "imx6qdl-tqma6.dtsi"
|
||||
|
||||
/ {
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*/
|
||||
|
||||
#include "imx6q.dtsi"
|
||||
#include "imx6qdl-tqma6b.dtsi"
|
||||
#include "imx6qdl-tqma6.dtsi"
|
||||
|
||||
/ {
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
/ {
|
||||
aliases {
|
||||
ipu1 = &ipu2;
|
||||
video1 = &ipu2;
|
||||
spi4 = &ecspi5;
|
||||
};
|
||||
|
||||
|
@ -50,6 +49,8 @@
|
|||
arm-supply = <®_arm>;
|
||||
pu-supply = <®_pu>;
|
||||
soc-supply = <®_soc>;
|
||||
nvmem-cells = <&cpu_speed_grade>;
|
||||
nvmem-cell-names = "speed_grade";
|
||||
};
|
||||
|
||||
cpu1: cpu@1 {
|
||||
|
@ -74,6 +75,7 @@
|
|||
396000 1175000
|
||||
>;
|
||||
clock-latency = <61036>; /* two CLK32 periods */
|
||||
#cooling-cells = <2>;
|
||||
clocks = <&clks IMX6QDL_CLK_ARM>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
|
||||
<&clks IMX6QDL_CLK_STEP>,
|
||||
|
@ -108,6 +110,7 @@
|
|||
396000 1175000
|
||||
>;
|
||||
clock-latency = <61036>; /* two CLK32 periods */
|
||||
#cooling-cells = <2>;
|
||||
clocks = <&clks IMX6QDL_CLK_ARM>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
|
||||
<&clks IMX6QDL_CLK_STEP>,
|
||||
|
@ -142,6 +145,7 @@
|
|||
396000 1175000
|
||||
>;
|
||||
clock-latency = <61036>; /* two CLK32 periods */
|
||||
#cooling-cells = <2>;
|
||||
clocks = <&clks IMX6QDL_CLK_ARM>,
|
||||
<&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
|
||||
<&clks IMX6QDL_CLK_STEP>,
|
||||
|
@ -155,14 +159,14 @@
|
|||
};
|
||||
};
|
||||
|
||||
soc {
|
||||
soc: soc {
|
||||
ocram: sram@900000 {
|
||||
compatible = "mmio-sram";
|
||||
reg = <0x00900000 0x40000>;
|
||||
clocks = <&clks IMX6QDL_CLK_OCRAM>;
|
||||
};
|
||||
|
||||
bus@2000000 { /* AIPS1 */
|
||||
aips1: bus@2000000 { /* AIPS1 */
|
||||
spba-bus@2000000 {
|
||||
ecspi5: spi@2018000 {
|
||||
#address-cells = <1>;
|
||||
|
@ -173,15 +177,11 @@
|
|||
clocks = <&clks IMX6Q_CLK_ECSPI5>,
|
||||
<&clks IMX6Q_CLK_ECSPI5>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 11 8 1>, <&sdma 12 8 2>;
|
||||
dmas = <&sdma 11 7 1>, <&sdma 12 7 2>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
iomuxc: iomuxc@20e0000 {
|
||||
compatible = "fsl,imx6q-iomuxc";
|
||||
};
|
||||
};
|
||||
|
||||
sata: sata@2200000 {
|
||||
|
@ -406,21 +406,27 @@
|
|||
&hdmi {
|
||||
compatible = "fsl,imx6q-hdmi";
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
ports {
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
|
||||
hdmi_mux_2: endpoint {
|
||||
remote-endpoint = <&ipu2_di0_hdmi>;
|
||||
hdmi_mux_2: endpoint {
|
||||
remote-endpoint = <&ipu2_di0_hdmi>;
|
||||
};
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
|
||||
hdmi_mux_3: endpoint {
|
||||
remote-endpoint = <&ipu2_di1_hdmi>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
|
||||
hdmi_mux_3: endpoint {
|
||||
remote-endpoint = <&ipu2_di1_hdmi>;
|
||||
};
|
||||
};
|
||||
&iomuxc {
|
||||
compatible = "fsl,imx6q-iomuxc";
|
||||
};
|
||||
|
||||
&ipu1_csi1 {
|
||||
|
|
1372
arch/arm/dts/imx6qdl-apalis.dtsi
Normal file
1372
arch/arm/dts/imx6qdl-apalis.dtsi
Normal file
File diff suppressed because it is too large
Load diff
|
@ -344,6 +344,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
|
|
1296
arch/arm/dts/imx6qdl-colibri.dtsi
Normal file
1296
arch/arm/dts/imx6qdl-colibri.dtsi
Normal file
File diff suppressed because it is too large
Load diff
|
@ -55,12 +55,12 @@
|
|||
pinctrl-0 = <&pinctrl_cubox_i_ir>;
|
||||
};
|
||||
|
||||
pwmleds {
|
||||
led-controller {
|
||||
compatible = "pwm-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_cubox_i_pwm1>;
|
||||
|
||||
front {
|
||||
led-1 {
|
||||
active-low;
|
||||
label = "imx6:red:front";
|
||||
max-brightness = <248>;
|
||||
|
@ -233,6 +233,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
|
@ -263,6 +263,10 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
disable-over-current;
|
||||
};
|
||||
|
||||
&usdhc2 { /* SD card */
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -132,14 +132,15 @@
|
|||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@0 { /* SMSC LAN8710Ai */
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
compatible = "ethernet-phy-id0007.c0f0",
|
||||
"ethernet-phy-ieee802.3-c22";
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
|
||||
pinctrl-0 = <&pinctrl_ethphy0>;
|
||||
pinctrl-names = "default";
|
||||
reg = <0>;
|
||||
reset-assert-us = <1000>;
|
||||
reset-deassert-us = <1000>;
|
||||
reset-assert-us = <500>;
|
||||
reset-deassert-us = <500>;
|
||||
reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
|
||||
smsc,disable-energy-detect; /* Make plugin detection reliable */
|
||||
};
|
||||
|
@ -728,6 +729,7 @@
|
|||
pinctrl_usbh1: usbh1-grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x120b0
|
||||
MX6QDL_PAD_EIM_D30__USB_H1_OC 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
|
|
|
@ -13,8 +13,8 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
nand = &gpmi;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -129,8 +129,6 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -452,7 +450,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -13,11 +13,10 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc3;
|
||||
nand = &gpmi;
|
||||
ssi0 = &ssi1;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -33,8 +32,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -195,8 +192,6 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -547,7 +542,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -13,11 +13,10 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc3;
|
||||
nand = &gpmi;
|
||||
ssi0 = &ssi1;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -33,8 +32,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -137,8 +134,7 @@
|
|||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
|
@ -189,8 +185,6 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -545,14 +539,11 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -602,7 +593,6 @@
|
|||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -723,12 +713,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
|
|
|
@ -14,11 +14,10 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc3;
|
||||
nand = &gpmi;
|
||||
ssi0 = &ssi1;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -34,8 +33,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -146,8 +143,7 @@
|
|||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 16 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator@3 {
|
||||
|
@ -226,8 +222,6 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -615,14 +609,11 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -680,7 +671,6 @@
|
|||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -818,12 +808,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
|
|
|
@ -57,8 +57,8 @@
|
|||
led0 = &led0;
|
||||
nand = &gpmi;
|
||||
ssi0 = &ssi1;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -67,8 +67,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -536,7 +534,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -14,8 +14,8 @@
|
|||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
nand = &gpmi;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -24,8 +24,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -120,15 +118,7 @@
|
|||
regulator-name = "5P0V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator-usbh1-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -399,13 +389,9 @@
|
|||
&uart5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart5>;
|
||||
status = "okay";
|
||||
};
|
||||
status = "okay"; };
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -414,7 +400,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -520,12 +505,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x13059
|
||||
|
|
|
@ -55,8 +55,8 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
nand = &gpmi;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -509,7 +509,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -55,11 +55,9 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc2;
|
||||
mmc1 = &usdhc3;
|
||||
ssi0 = &ssi1;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -93,8 +91,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -221,8 +217,7 @@
|
|||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
|
@ -280,8 +275,6 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -661,7 +654,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -75,8 +75,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -223,9 +221,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -534,7 +529,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -55,9 +55,8 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc3;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -73,8 +72,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -176,8 +173,7 @@
|
|||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
|
@ -201,9 +197,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
|
||||
fixed-link {
|
||||
|
@ -474,6 +467,11 @@
|
|||
};
|
||||
};
|
||||
|
||||
crypto@60 {
|
||||
compatible = "atmel,atecc508a";
|
||||
reg = <0x60>;
|
||||
};
|
||||
|
||||
imu@6a {
|
||||
compatible = "st,lsm9ds1-imu";
|
||||
reg = <0x6a>;
|
||||
|
@ -588,14 +586,11 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -756,12 +751,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
|
|
|
@ -13,8 +13,8 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
nand = &gpmi;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -23,8 +23,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -131,8 +129,6 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -380,7 +376,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -27,8 +26,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -146,9 +143,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -402,7 +396,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -13,10 +13,9 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
led2 = &led2;
|
||||
mmc0 = &usdhc3;
|
||||
nand = &gpmi;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -25,8 +24,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -120,8 +117,7 @@
|
|||
regulator-name = "usb_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio4 5 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -142,9 +138,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -381,8 +374,6 @@
|
|||
|
||||
&usbh1 {
|
||||
vbus-supply = <®_usb_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -432,7 +423,6 @@
|
|||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -563,12 +553,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059
|
||||
|
|
|
@ -13,8 +13,8 @@
|
|||
led0 = &led0;
|
||||
led1 = &led1;
|
||||
nand = &gpmi;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb0 = &usbh1;
|
||||
usb1 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
@ -23,8 +23,6 @@
|
|||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
user-pb {
|
||||
label = "user_pb";
|
||||
|
@ -121,9 +119,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <300>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -346,7 +341,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
disable-over-current;
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -203,7 +203,7 @@
|
|||
&ecspi2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hummingboard2_ecspi2>;
|
||||
cs-gpios = <&gpio2 26 0>;
|
||||
cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -150,10 +150,23 @@
|
|||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
|
||||
clocks = <&clks IMX6QDL_CLK_ENET>, <&clks IMX6QDL_CLK_ENET>, <&rmii_clk>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ð_phy>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
eth_phy: ethernet-phy@0 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <0>;
|
||||
reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
|
||||
reset-assert-us = <4000>;
|
||||
reset-deassert-us = <4000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
|
@ -232,6 +245,7 @@
|
|||
};
|
||||
|
||||
&pwm3 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
|
@ -384,7 +398,7 @@
|
|||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -396,6 +410,7 @@
|
|||
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17070
|
||||
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17070
|
||||
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17070
|
||||
MX6QDL_PAD_GPIO_1__GPIO1_IO01 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,48 +1,177 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/clock/imx6qdl-clock.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/sound/fsl-imx-audmux.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc2;
|
||||
/delete-property/ mmc2;
|
||||
/delete-property/ mmc3;
|
||||
rtc0 = &rtc0;
|
||||
};
|
||||
|
||||
chosen {
|
||||
linux,stdout-path = &uart2;
|
||||
stdout-path = &uart2;
|
||||
};
|
||||
|
||||
regulators {
|
||||
reg_mba6_3p3v: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "supply-mba6-3p3v";
|
||||
reg = <1>;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
beeper: gpio-beeper {
|
||||
compatible = "gpio-beeper";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpiobeeper>;
|
||||
gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
gpio_buttons: gpio-buttons {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpiobuttons>;
|
||||
|
||||
button1 {
|
||||
label = "s6";
|
||||
linux,code = <KEY_F6>;
|
||||
gpios = <&gpio7 13 GPIO_ACTIVE_LOW>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
reg_otgvbus: regulator@2 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_otgpwr>;
|
||||
regulator-name = "otg-vbus-supply";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
vin_supply = <®_3p3v>;
|
||||
button2 {
|
||||
label = "s7";
|
||||
linux,code = <KEY_F7>;
|
||||
gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
button3 {
|
||||
label = "s8";
|
||||
linux,code = <KEY_F8>;
|
||||
gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpioled>;
|
||||
|
||||
led1 {
|
||||
label = "led1";
|
||||
gpios = <&gpio6 16 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
|
||||
led2 {
|
||||
label = "led2";
|
||||
gpios = <&gpio6 31 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
};
|
||||
|
||||
reg_mba6_3p3v: regulator-mba6-3p3v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "supply-mba6-3p3v";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_pcie: regulator-pcie {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_regpcie>;
|
||||
regulator-name = "supply-pcie";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
/* PCIE.PWR_EN */
|
||||
gpio = <&gpio2 0 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
vin-supply = <®_mba6_3p3v>;
|
||||
};
|
||||
|
||||
reg_vcc3v3_audio: regulator-vcc3v3-audio {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3-audio";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <®_mba6_3p3v>;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx-audio-tlv320aic32x4";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux>;
|
||||
model = "imx-audio-tlv320aic32x4";
|
||||
ssi-controller = <&ssi1>;
|
||||
audio-codec = <&tlv320aic32x4>;
|
||||
audio-asrc = <&asrc>;
|
||||
audio-routing =
|
||||
"IN3_L", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias",
|
||||
"IN1_L", "Line In Jack",
|
||||
"IN1_R", "Line In Jack",
|
||||
"Line Out Jack", "LOL",
|
||||
"Line Out Jack", "LOR";
|
||||
mux-int-port = <1>;
|
||||
mux-ext-port = <3>;
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
status = "okay";
|
||||
|
||||
ssi0 {
|
||||
fsl,audmux-port = <MX31_AUDMUX_PORT1_SSI0>;
|
||||
fsl,port-config = <
|
||||
(IMX_AUDMUX_V2_PTCR_SYN |
|
||||
IMX_AUDMUX_V2_PTCR_TFSDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TFSEL(MX31_AUDMUX_PORT3_SSI_PINS_3) |
|
||||
IMX_AUDMUX_V2_PTCR_TCLKDIR |
|
||||
IMX_AUDMUX_V2_PTCR_TCSEL(MX31_AUDMUX_PORT3_SSI_PINS_3))
|
||||
IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT3_SSI_PINS_3)
|
||||
>;
|
||||
};
|
||||
|
||||
aud3 {
|
||||
fsl,audmux-port = <MX31_AUDMUX_PORT3_SSI_PINS_3>;
|
||||
fsl,port-config = <
|
||||
IMX_AUDMUX_V2_PTCR_SYN
|
||||
IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT1_SSI0)
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>, <&pinctrl_ecspi1_mba6>;
|
||||
cs-gpios = <&gpio3 19 0>, <&gpio3 24 0>;
|
||||
};
|
||||
|
||||
&fec {
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <1>;
|
||||
phy-reset-post-delay = <100>;
|
||||
phy-handle = <ðphy>;
|
||||
mac-address = [00 00 00 00 00 00];
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
|
@ -50,134 +179,95 @@
|
|||
#size-cells = <0>;
|
||||
|
||||
ethphy: ethernet-phy@3 {
|
||||
compatible = "ethernet-phy-id0022.1622",
|
||||
"ethernet-phy-ieee802.3-c22";
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <3>;
|
||||
force-master;
|
||||
max-speed = <1000>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
|
||||
reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
reset-assert-us = <1000>;
|
||||
reset-deassert-us = <100000>;
|
||||
micrel,force-master;
|
||||
max-speed = <1000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
mba6 {
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
/* FEC phy IRQ */
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x00011008
|
||||
/* FEC phy reset */
|
||||
MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b099
|
||||
/* DSE = 100, 100k up, SPEED = MED */
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0xb0a0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0xb0a0
|
||||
/* DSE = 111, pull 100k up */
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0xb038
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0xb038
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0xb038
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0xb038
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0xb038
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0xb038
|
||||
/* DSE = 111, pull external */
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x0038
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x0038
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x0038
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x0038
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x0038
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x0038
|
||||
/* HYS = 1, DSE = 111, 100k up, SPEED = HIGH */
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0f0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_16__GPIO7_IO11 0x0001b099 /* LCD.PWR_EN */
|
||||
MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x0001b099 /* LCD.RESET */
|
||||
/* LCD.CONTRAST -> Rev 0100 only, not used on Rev.0200*/
|
||||
MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x0001b099
|
||||
|
||||
MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x0001b099
|
||||
MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x0001b099
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x0001b099
|
||||
|
||||
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x0001b099
|
||||
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x0001b099
|
||||
MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x0001b099
|
||||
MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x0001b099
|
||||
MX6QDL_PAD_EIM_CS0__GPIO2_IO23 0x0001b099
|
||||
MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x0001b099
|
||||
MX6QDL_PAD_EIM_OE__GPIO2_IO25 0x0001b099
|
||||
|
||||
MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x0001b099
|
||||
MX6QDL_PAD_EIM_D26__GPIO3_IO26 0x0001b099
|
||||
MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x0001b099
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x0001b099
|
||||
MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x0001b099
|
||||
|
||||
MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x0001b099
|
||||
MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x0001b099
|
||||
MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x0001b099
|
||||
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x0001b099
|
||||
|
||||
MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x0001b099
|
||||
MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x0001b099
|
||||
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x0001b099
|
||||
|
||||
MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x0001b099
|
||||
MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x0001b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_otgpwr: regotgpwrgrp {
|
||||
fsl,pins = <
|
||||
/* OTG_PWR */
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x0001b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b099
|
||||
MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
/* CLK: 47k Pup SPD_LOW DSE 40Ohm SRE_FAST HYS */
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x00017071
|
||||
/* SD2: 47k Pup SPD_LOW DSE 80Ohm SRE_FAST HYS */
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x00017059
|
||||
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x0001b099 /* usdhc2 CD */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x0001b099 /* usdhc2 WP */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x0001b0b0
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x00017059
|
||||
>;
|
||||
};
|
||||
&i2c1 {
|
||||
tlv320aic32x4: audio-codec@18 {
|
||||
compatible = "ti,tlv320aic32x4";
|
||||
reg = <0x18>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
clock-names = "mclk";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_codec>;
|
||||
ldoin-supply = <®_vcc3v3_audio>;
|
||||
iov-supply = <®_mba6_3p3v>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie>;
|
||||
reset-gpio = <&gpio6 7 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&snvs_poweroff {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart4>;
|
||||
uart-has-rtscts;
|
||||
linux,rs485-enabled-at-boot-time;
|
||||
rs485-rts-active-low;
|
||||
rs485-rx-during-tx;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart5>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
|
@ -186,22 +276,260 @@
|
|||
&usbotg {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg>;
|
||||
power-active-high;
|
||||
over-current-active-low;
|
||||
srp-disable;
|
||||
hnp-disable;
|
||||
adp-disable;
|
||||
dr_mode = "otg";
|
||||
vbus-supply = <®_otgvbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 { /* Baseboard Slot */
|
||||
/* SD card slot */
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
vmmc-supply = <®_mba6_3p3v>;
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
no-mmc;
|
||||
no-sdio;
|
||||
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
wp-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wdog1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wdog1>;
|
||||
/* does not work on unmodified starter kit */
|
||||
/* fsl,ext-reset-output; */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can1: can1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0xb099
|
||||
MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0xb099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can2: can2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0xb099
|
||||
MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0xb099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_codec: codecgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0xb0 /* CLK */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1_mba6: ecspimba6grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D24__GPIO3_IO24 0xb099 /* eCSPI1 SS2 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
/* FEC phy IRQ */
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x00011008
|
||||
/* FEC phy reset */
|
||||
MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b099
|
||||
/* DSE = 100, 100k up, SPEED = MED */
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0xb0a0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0xb0a0
|
||||
/* DSE = 111, pull 100k up */
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0xb038
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0xb038
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0xb038
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0xb038
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0xb038
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0xb038
|
||||
/* DSE = 111, pull external */
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x0038
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x0038
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x0038
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x0038
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x0038
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x0038
|
||||
/* HYS = 1, DSE = 111, 100k up, SPEED = HIGH */
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0f0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpiobeeper: gpiobeepergrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0xb099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpiobuttons: gpiobuttongrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x0001b099
|
||||
MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x0001b099
|
||||
MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x0001b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpioled: gpioledgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0xb099 /* LED V15 */
|
||||
MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0xb099 /* LED V16 */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x0001b099
|
||||
|
||||
MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x0001b099
|
||||
MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x0001b099
|
||||
MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x0001b099
|
||||
|
||||
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x0001b099
|
||||
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x0001b099
|
||||
MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x0001b099
|
||||
MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x0001b099
|
||||
MX6QDL_PAD_EIM_CS0__GPIO2_IO23 0x0001b099
|
||||
MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x0001b099
|
||||
MX6QDL_PAD_EIM_OE__GPIO2_IO25 0x0001b099
|
||||
|
||||
MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x0001b099
|
||||
MX6QDL_PAD_EIM_D26__GPIO3_IO26 0x0001b099
|
||||
MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x0001b099
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x0001b099
|
||||
MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x0001b099
|
||||
|
||||
MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x0001b099
|
||||
MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x0001b099
|
||||
MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x0001b099
|
||||
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x0001b099
|
||||
|
||||
MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x0001b099
|
||||
MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x0001b099
|
||||
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x0001b099
|
||||
|
||||
MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x0001b099
|
||||
MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x0001b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie: pciegrp {
|
||||
fsl,pins = <
|
||||
/* HYS = 1, DSE = 110, 100k up, SPEED = HIGH (11)*/
|
||||
MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x001b0f0 /* #PCIE.WAKE */
|
||||
MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x001b0f0 /* #PCIE.RST */
|
||||
MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x001b0f0 /* #PCIE.DIS */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
/* 100 k PD, DSE 120 OHM, SPPEED LO */
|
||||
MX6QDL_PAD_GPIO_9__PWM1_OUT 0x00003050
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
/* 100 k PD, DSE 120 OHM, SPPEED LO */
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x00003050
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4grp {
|
||||
fsl,pins = <
|
||||
/* 100 k PD, DSE 120 OHM, SPPEED LO */
|
||||
MX6QDL_PAD_SD4_DAT2__PWM4_OUT 0x00003050
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_regpcie: regpciegrp {
|
||||
fsl,pins = <
|
||||
/* HYS = 1, DSE = 110, PUE+PKE, SPEED = HIGH (11)*/
|
||||
MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x00130f0 /* PCIE.PWR_EN */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b099
|
||||
MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart3: uart3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CLK__UART3_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD4_CMD__UART3_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D30__UART3_CTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D31__UART3_RTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart4: uart4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT16__UART4_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT17__UART4_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart5: uart5grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT18__UART5_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_CSI0_DAT19__UART5_CTS_B 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
/* CLK: 47k Pup SPD_LOW DSE 40Ohm SRE_FAST HYS */
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x00017071
|
||||
/* SD2: 47k Pup SPD_LOW DSE 80Ohm SRE_FAST HYS */
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x00017059
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x00017059
|
||||
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x0001b099 /* usdhc2 CD */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x0001b099 /* usdhc2 WP */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x0001b0b0
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x00017059
|
||||
MX6QDL_PAD_EIM_D22__USB_OTG_PWR 0x0001b099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_wdog1: wdog1grp {
|
||||
fsl,pins = <
|
||||
/* Watchdog out */
|
||||
MX6QDL_PAD_SD1_DAT2__WDOG1_B 0x0000b099
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,39 +1,30 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>, <&pinctrl_enet_fix>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
sensor1: lm75@49 {
|
||||
compatible = "lm75";
|
||||
lm75: temperature-sensor@49 {
|
||||
compatible = "national,lm75";
|
||||
reg = <0x49>;
|
||||
};
|
||||
|
||||
eeprom1: m24c64@57 {
|
||||
compatible = "st,24c64", "at24";
|
||||
m24c64_57: eeprom@57 {
|
||||
compatible = "atmel,24c64";
|
||||
reg = <0x57>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
|
||||
rtc1: ds1339@68 {
|
||||
compatible = "ds1339";
|
||||
rtc0: rtc@68 {
|
||||
compatible = "dallas,ds1339";
|
||||
reg = <0x68>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
mba6 {
|
||||
pinctrl_enet_fix: enetfixgrp {
|
||||
fsl,pins = <
|
||||
/* ENET ping patch */
|
||||
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
*
|
||||
* Copyright 2013-2021 TQ-Systems GmbH
|
||||
* Author: Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
&fec {
|
||||
pinctrl-names = "default";
|
||||
|
@ -9,37 +13,37 @@
|
|||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
pinctrl-1 = <&pinctrl_i2c1_recovery>;
|
||||
scl-gpios = <&gpio5 27 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio5 26 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
sensor1: lm75@49 {
|
||||
compatible = "lm75";
|
||||
lm75: temperature-sensor@49 {
|
||||
compatible = "national,lm75";
|
||||
reg = <0x49>;
|
||||
};
|
||||
|
||||
eeprom1: m24c64@57 {
|
||||
compatible = "st,24c64", "at24";
|
||||
m24c64_57: eeprom@57 {
|
||||
compatible = "atmel,24c64";
|
||||
reg = <0x57>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
|
||||
rtc1: ds1339@68 {
|
||||
compatible = "ds1339";
|
||||
rtc0: rtc@68 {
|
||||
compatible = "dallas,ds1339";
|
||||
reg = <0x68>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
mba6 {
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b899
|
||||
MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b899
|
||||
>;
|
||||
};
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b899
|
||||
MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b899
|
||||
>;
|
||||
};
|
||||
|
||||
};
|
||||
|
|
|
@ -1,69 +1,692 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright 2013-2019 Boundary Devices, Inc.
|
||||
// Copyright 2012 Freescale Semiconductor, Inc.
|
||||
// Copyright 2011 Linaro Ltd.
|
||||
// SPDX-License-Identifier: GPL-2.0 OR X11
|
||||
/*
|
||||
* Copyright 2013 Boundary Devices, Inc.
|
||||
* Copyright 2011 Freescale Semiconductor, Inc.
|
||||
* Copyright 2011 Linaro Ltd.
|
||||
*/
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
#include "imx6qdl-sabrelite.dtsi"
|
||||
|
||||
&iomuxc {
|
||||
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 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x100b0
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x100b0
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
|
||||
#undef GP_ENET_PHY_RESET
|
||||
#define GP_ENET_PHY_RESET <&gpio1 27 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_ENET_RXD0__GPIO1_IO27 0x030b0
|
||||
#define GPIRQ_ENET_PHY <&gpio1 28 IRQ_TYPE_LEVEL_LOW>
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0
|
||||
>;
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = &uart2;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
/* Spare */
|
||||
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1b0b0
|
||||
MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1b0b0
|
||||
>;
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
pinctrl_uart3: uart3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D23__UART3_CTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D31__UART3_RTS_B 0x1b0b1
|
||||
>;
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
reg_2p5v: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "2P5V";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_3p3v: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <1>;
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator@2 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <2>;
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 0>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_can_xcvr: regulator@3 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <3>;
|
||||
regulator-name = "CAN XCVR";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can_xcvr>;
|
||||
gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
reg_wlan_vmmc: regulator@4 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <4>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wlan_vmmc>;
|
||||
regulator-name = "reg_wlan_vmmc";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio6 15 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <70000>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator@5 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <5>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpio_keys>;
|
||||
|
||||
power {
|
||||
label = "Power Button";
|
||||
gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_POWER>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
menu {
|
||||
label = "Menu";
|
||||
gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_MENU>;
|
||||
};
|
||||
|
||||
home {
|
||||
label = "Home";
|
||||
gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_HOME>;
|
||||
};
|
||||
|
||||
back {
|
||||
label = "Back";
|
||||
gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_BACK>;
|
||||
};
|
||||
|
||||
volume-up {
|
||||
label = "Volume Up";
|
||||
gpios = <&gpio7 13 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEUP>;
|
||||
};
|
||||
|
||||
volume-down {
|
||||
label = "Volume Down";
|
||||
gpios = <&gpio4 5 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEDOWN>;
|
||||
};
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx6q-nitrogen6x-sgtl5000",
|
||||
"fsl,imx-audio-sgtl5000";
|
||||
model = "imx6q-nitrogen6x-sgtl5000";
|
||||
ssi-controller = <&ssi1>;
|
||||
audio-codec = <&codec>;
|
||||
audio-routing =
|
||||
"MIC_IN", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias",
|
||||
"Headphone Jack", "HP_OUT";
|
||||
mux-int-port = <1>;
|
||||
mux-ext-port = <3>;
|
||||
};
|
||||
|
||||
backlight_lcd: backlight-lcd {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm1 0 5000000>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <7>;
|
||||
power-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
backlight_lvds: backlight-lvds {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm4 0 5000000>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <7>;
|
||||
power-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
lcd_display: disp0 {
|
||||
compatible = "fsl,imx-parallel-display";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
interface-pix-fmt = "bgr666";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_j15>;
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
lcd_display_in: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_disp0>;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
lcd_display_out: endpoint {
|
||||
remote-endpoint = <&lcd_panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel-lcd {
|
||||
compatible = "okaya,rs800480t-7x0gp";
|
||||
backlight = <&backlight_lcd>;
|
||||
|
||||
port {
|
||||
lcd_panel_in: endpoint {
|
||||
remote-endpoint = <&lcd_display_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel-lvds0 {
|
||||
compatible = "hannstar,hsd100pxn1";
|
||||
backlight = <&backlight_lvds>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can1>;
|
||||
xceiver-supply = <®_can_xcvr>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
|
||||
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
status = "okay";
|
||||
|
||||
flash: flash@0 {
|
||||
compatible = "sst,sst25vf016b", "jedec,spi-nor";
|
||||
spi-max-frequency = <20000000>;
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "bootloader";
|
||||
reg = <0x0 0xc0000>;
|
||||
};
|
||||
|
||||
partition@c0000 {
|
||||
label = "env";
|
||||
reg = <0xc0000 0x2000>;
|
||||
};
|
||||
|
||||
partition@c2000 {
|
||||
label = "splash";
|
||||
reg = <0xc2000 0x13e000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
#if 0
|
||||
phy-reset-gpios = GP_ENET_PHY_RESET;
|
||||
#endif
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii";
|
||||
phy-handle = <ðphy>;
|
||||
phy-reset-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
fsl,err006687-workaround-present;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy: ethernet-phy {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
txen-skew-ps = <0>;
|
||||
txc-skew-ps = <3000>;
|
||||
rxdv-skew-ps = <0>;
|
||||
rxc-skew-ps = <3000>;
|
||||
rxd0-skew-ps = <0>;
|
||||
rxd1-skew-ps = <0>;
|
||||
rxd2-skew-ps = <0>;
|
||||
rxd3-skew-ps = <0>;
|
||||
txd0-skew-ps = <0>;
|
||||
txd1-skew-ps = <0>;
|
||||
txd2-skew-ps = <0>;
|
||||
txd3-skew-ps = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
uart-has-rtscts;
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
/delete-property/ wp-gpios;
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
|
||||
codec: sgtl5000@a {
|
||||
compatible = "fsl,sgtl5000";
|
||||
reg = <0x0a>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
VDDA-supply = <®_2p5v>;
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
};
|
||||
|
||||
rtc: rtc@6f {
|
||||
compatible = "isil,isl1208";
|
||||
reg = <0x6f>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
status = "okay";
|
||||
|
||||
touchscreen@4 {
|
||||
compatible = "eeti,egalax_ts";
|
||||
reg = <0x04>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
|
||||
wakeup-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
touchscreen@38 {
|
||||
compatible = "edt,edt-ft5x06";
|
||||
reg = <0x38>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
imx6q-nitrogen6x {
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
/* SGTL5000 sys_mclk */
|
||||
MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x030b0
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
|
||||
MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
|
||||
MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
|
||||
MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can1: can1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x1b0b0
|
||||
MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can_xcvr: can-xcvrgrp {
|
||||
fsl,pins = <
|
||||
/* Flexcan XCVR enable */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x000b1 /* CS */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x100b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x100b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
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
|
||||
/* Phy reset */
|
||||
MX6QDL_PAD_ENET_RXD0__GPIO1_IO27 0x000b0
|
||||
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys: gpio-keysgrp {
|
||||
fsl,pins = <
|
||||
/* Power Button */
|
||||
MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x1b0b0
|
||||
/* Menu Button */
|
||||
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1b0b0
|
||||
/* Home Button */
|
||||
MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x1b0b0
|
||||
/* Back Button */
|
||||
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
|
||||
/* Volume Up Button */
|
||||
MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x1b0b0
|
||||
/* Volume Down Button */
|
||||
MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__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_16__I2C3_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_j15: j15grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10
|
||||
MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x10
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10
|
||||
MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10
|
||||
MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10
|
||||
MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10
|
||||
MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10
|
||||
MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10
|
||||
MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10
|
||||
MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x030b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
MX6QDL_PAD_KEY_COL4__USB_OTG_OC 0x1b0b0
|
||||
/* power enable, high active */
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17071
|
||||
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10071
|
||||
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17071
|
||||
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17071
|
||||
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17071
|
||||
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17071
|
||||
>;
|
||||
};
|
||||
|
||||
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_DAT5__GPIO7_IO00 0x1b0b0 /* CD */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4: usdhc4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059
|
||||
MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059
|
||||
MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059
|
||||
MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059
|
||||
MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059
|
||||
MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059
|
||||
MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x1b0b0 /* CD */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_wlan_vmmc: wlan-vmmcgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x100b0
|
||||
MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x000b0
|
||||
MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x000b0
|
||||
MX6QDL_PAD_SD1_CLK__OSC32K_32K_OUT 0x000b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ipu1_di0_disp0 {
|
||||
remote-endpoint = <&lcd_display_in>;
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
lvds-channel@0 {
|
||||
status = "okay";
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm4 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
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";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
vmmc-supply = <®_wlan_vmmc>;
|
||||
cap-power-off-card;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
wlcore: wlcore@2 {
|
||||
compatible = "ti,wl1271";
|
||||
reg = <2>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;
|
||||
ref-clock-frequency = <38400000>;
|
||||
};
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
cd-gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc4>;
|
||||
cd-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
|
119
arch/arm/dts/imx6qdl-phytec-mira-peb-av-02.dtsi
Normal file
119
arch/arm/dts/imx6qdl-phytec-mira-peb-av-02.dtsi
Normal file
|
@ -0,0 +1,119 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2018 PHYTEC Messtechnik
|
||||
* Author: Christian Hemp <c.hemp@phytec.de>
|
||||
*/
|
||||
|
||||
/ {
|
||||
display: display0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "fsl,imx-parallel-display";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_disp0>;
|
||||
interface-pix-fmt = "rgb24";
|
||||
status = "disabled";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
display0_in: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_disp0>;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
display0_out: endpoint {
|
||||
remote-endpoint = <&peb_panel_lcd_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel-lcd {
|
||||
compatible = "edt,etm0700g0edh6";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_disp0_pwr>;
|
||||
power-supply = <®_display>;
|
||||
enable-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
|
||||
backlight = <&backlight>;
|
||||
status = "disabled";
|
||||
|
||||
port {
|
||||
peb_panel_lcd_in: endpoint {
|
||||
remote-endpoint = <&display0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
reg_display: regulator-peb-display {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "peb-display";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
edt_ft5x06: touchscreen@38 {
|
||||
compatible = "edt,edt-ft5406";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_edt_ft5x06>;
|
||||
reg = <0x38>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <2 IRQ_TYPE_NONE>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
&ipu1_di0_disp0 {
|
||||
remote-endpoint = <&display0_in>;
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_disp0: disp0grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10
|
||||
MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x1b080
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10
|
||||
MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10
|
||||
MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10
|
||||
MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10
|
||||
MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10
|
||||
MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10
|
||||
MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10
|
||||
MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_disp0_pwr: disp0pwrgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_edt_ft5x06: edtft5x06grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0xb0b1
|
||||
>;
|
||||
};
|
||||
};
|
71
arch/arm/dts/imx6qdl-phytec-mira-peb-eval-01.dtsi
Normal file
71
arch/arm/dts/imx6qdl-phytec-mira-peb-eval-01.dtsi
Normal file
|
@ -0,0 +1,71 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2018 PHYTEC Messtechnik
|
||||
* Author: Christian Hemp <c.hemp@phytec.de>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpio_keys>;
|
||||
status = "disabled";
|
||||
|
||||
power {
|
||||
label = "Power Button";
|
||||
gpios = <&gpio5 28 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_WAKEUP>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
sleep {
|
||||
label = "Sleep Button";
|
||||
gpios = <&gpio6 18 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_SLEEP>;
|
||||
};
|
||||
};
|
||||
|
||||
user_leds: user-leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_user_leds>;
|
||||
status = "disabled";
|
||||
|
||||
user-led1 {
|
||||
gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "gpio";
|
||||
default-state = "on";
|
||||
};
|
||||
|
||||
user-led2 {
|
||||
gpios = <&gpio7 0 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "gpio";
|
||||
default-state = "on";
|
||||
};
|
||||
|
||||
user-led3 {
|
||||
gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "gpio";
|
||||
default-state = "on";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_gpio_keys: gpiokeysgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT6__GPIO6_IO18 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT10__GPIO5_IO28 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_user_leds: userledsgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1b0b0
|
||||
MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x1b0b0
|
||||
MX6QDL_PAD_CSI0_DAT11__GPIO5_IO29 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
85
arch/arm/dts/imx6qdl-phytec-mira-peb-wlbt-05.dtsi
Normal file
85
arch/arm/dts/imx6qdl-phytec-mira-peb-wlbt-05.dtsi
Normal file
|
@ -0,0 +1,85 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2021 PHYTEC Messtechnik GmbH
|
||||
* Author: Yunus Bas <y.bas@phytec.de>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
/ {
|
||||
reg_wl_en: regulator-wl-en {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "wlan_en";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wl>;
|
||||
gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
startup-delay-us = <100>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3_bt>;
|
||||
uart-has-rtscts;
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
shutdown-gpios = <&gpio7 0 GPIO_ACTIVE_HIGH>;
|
||||
device-wakeup-gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>;
|
||||
host-wakeup-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3_wl>;
|
||||
vmmc-supply = <®_wl_en>;
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
no-1-8-v;
|
||||
status = "disabled";
|
||||
|
||||
brmcf: wifi@1 {
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_uart3_bt: uart3grp-bt {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_EB3__UART3_RTS_B 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D23__UART3_CTS_B 0x1b0b1
|
||||
MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0xb0b1 /* BT ENABLE */
|
||||
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0xb0b1 /* DEV WAKEUP */
|
||||
MX6QDL_PAD_CSI0_DAT8__GPIO5_IO26 0xb0b1 /* HOST WAKEUP */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_wl: usdhc3grp-wl {
|
||||
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
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_wl: wlgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_A25__GPIO5_IO02 0xb0b1 /* WLAN ENABLE */
|
||||
>;
|
||||
};
|
||||
};
|
|
@ -145,8 +145,11 @@
|
|||
};
|
||||
|
||||
&i2c1 {
|
||||
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)>;
|
||||
clock-frequency = <400000>;
|
||||
status = "disabled";
|
||||
|
||||
|
@ -185,8 +188,11 @@
|
|||
};
|
||||
|
||||
&i2c2 {
|
||||
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)>;
|
||||
clock-frequency = <100000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -218,6 +224,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
|
@ -255,6 +262,7 @@
|
|||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
cd-gpios = <&gpio6 31 GPIO_ACTIVE_LOW>;
|
||||
no-1-8-v;
|
||||
disable-wp;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -298,6 +306,20 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_gpio: i2c1gpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
|
||||
|
@ -305,10 +327,10 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
pinctrl_i2c2_gpio: i2c2gpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
|
|
|
@ -78,17 +78,21 @@
|
|||
};
|
||||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_gpio>;
|
||||
scl-gpios = <&gpio1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "atmel,24c32";
|
||||
compatible = "st,24c32", "atmel,24c32";
|
||||
pagesize = <32>;
|
||||
reg = <0x50>;
|
||||
};
|
||||
|
||||
pmic@58 {
|
||||
pmic: pmic@58 {
|
||||
compatible = "dlg,da9062";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pmic>;
|
||||
|
@ -96,6 +100,8 @@
|
|||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupt-controller;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
|
||||
da9062_rtc: rtc {
|
||||
compatible = "dlg,da9062-rtc";
|
||||
|
@ -107,6 +113,17 @@
|
|||
|
||||
watchdog {
|
||||
compatible = "dlg,da9062-watchdog";
|
||||
dlg,use-sw-pm;
|
||||
};
|
||||
|
||||
thermal {
|
||||
compatible = "dlg,da9062-thermal";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
gpio {
|
||||
compatible = "dlg,da9062-gpio";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
regulators {
|
||||
|
@ -255,6 +272,13 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_gpio: i2c3gpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
// SPDX-License-Identifier: GPL-2.0 OR MIT
|
||||
//
|
||||
// Copyright 2018 Technexion Ltd.
|
||||
//
|
||||
|
@ -9,11 +9,6 @@
|
|||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
usb0 = &usbotg;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
@ -42,6 +37,22 @@
|
|||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_1p5v: regulator-1p5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "1P5V";
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_2p8v: regulator-2p8v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "2P8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg_vbus>;
|
||||
|
@ -51,6 +62,81 @@
|
|||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
codec_osc: clock {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24576000>;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx-audio-sgtl5000";
|
||||
model = "imx6-pico-sgtl5000";
|
||||
ssi-controller = <&ssi1>;
|
||||
audio-codec = <&sgtl5000>;
|
||||
audio-routing =
|
||||
"MIC_IN", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias",
|
||||
"Headphone Jack", "HP_OUT";
|
||||
mux-int-port = <1>;
|
||||
mux-ext-port = <3>;
|
||||
};
|
||||
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm4 0 50000 0>;
|
||||
brightness-levels = <0 36 72 108 144 180 216 255>;
|
||||
default-brightness-level = <6>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
reg_lcd_3v3: regulator-lcd-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_reg_lcd>;
|
||||
regulator-name = "lcd-3v3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
lcd_display: disp0 {
|
||||
compatible = "fsl,imx-parallel-display";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ipu1>;
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
lcd_display_in: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_disp0>;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
lcd_display_out: endpoint {
|
||||
remote-endpoint = <&lcd_panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel {
|
||||
compatible = "vxt,vl050-8048nt-c01";
|
||||
backlight = <&backlight>;
|
||||
power-supply = <®_lcd_3v3>;
|
||||
|
||||
port {
|
||||
lcd_panel_in: endpoint {
|
||||
remote-endpoint = <&lcd_display_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&audmux {
|
||||
|
@ -81,7 +167,7 @@
|
|||
&ecspi2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi2>;
|
||||
cs-gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>;
|
||||
cs-gpios = <&gpio2 27 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -90,7 +176,18 @@
|
|||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
|
||||
phy-handle = <&phy>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
|
@ -102,6 +199,15 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
|
||||
sgtl5000: audio-codec@a {
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x0a>;
|
||||
compatible = "fsl,sgtl5000";
|
||||
clocks = <&codec_osc>;
|
||||
VDDA-supply = <®_2p5v>;
|
||||
VDDIO-supply = <®_1p8v>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
|
@ -109,6 +215,40 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
|
||||
touchscreen@38 {
|
||||
compatible = "edt,edt-ft5x06";
|
||||
reg = <0x38>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio5 27 GPIO_ACTIVE_LOW>;
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <480>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
camera@3c {
|
||||
compatible = "ovti,ov5645";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ov5645>;
|
||||
reg = <0x3c>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO2>;
|
||||
clock-names = "xclk";
|
||||
clock-frequency = <24000000>;
|
||||
vdddo-supply = <®_1p8v>;
|
||||
vdda-supply = <®_2p8v>;
|
||||
vddd-supply = <®_1p5v>;
|
||||
enable-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
|
||||
|
||||
port {
|
||||
ov5645_to_mipi_csi2: endpoint {
|
||||
remote-endpoint = <&mipi_csi2_in>;
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
|
@ -117,11 +257,28 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&ipu1_di0_disp0 {
|
||||
remote-endpoint = <&lcd_display_in>;
|
||||
};
|
||||
|
||||
&mipi_csi {
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
mipi_csi2_in: endpoint {
|
||||
remote-endpoint = <&ov5645_to_mipi_csi2>;
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie_reset>;
|
||||
reset-gpio = <&gpio5 21 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
|
@ -161,14 +318,14 @@
|
|||
&uart2 { /* Bluetooth module */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
fsl,uart-has-rtscts;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart3>;
|
||||
fsl,uart-has-rtscts;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -219,7 +376,6 @@
|
|||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_MCLK__GPIO5_IO19 0x4001b0b5 /* PICO_P24 */
|
||||
MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x4001b0b5 /* PICO_P25 */
|
||||
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x4001b0b5 /* PICO_P26 */
|
||||
MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x4001b0b5 /* PICO_P28 */
|
||||
MX6QDL_PAD_CSI0_DAT8__GPIO5_IO26 0x4001b0b5 /* PICO_P30 */
|
||||
|
@ -316,6 +472,48 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1: ipu1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10
|
||||
MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x10
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10
|
||||
MX6QDL_PAD_DI0_PIN4__IPU1_DI0_PIN04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10
|
||||
MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10
|
||||
MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10
|
||||
MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10
|
||||
MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10
|
||||
MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10
|
||||
MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10
|
||||
MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov5645: ov5645grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x0b0b0
|
||||
MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x0b0b0
|
||||
MX6QDL_PAD_GPIO_3__CCM_CLKO2 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pcie_reset: pciegrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x130b0
|
||||
|
@ -346,6 +544,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_lcd: reglcdgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
};
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x80000000>;
|
||||
};
|
||||
|
||||
|
@ -75,39 +76,49 @@
|
|||
};
|
||||
};
|
||||
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg_audio: regulator-audio {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "cs42888_supply";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_audio: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "cs42888_supply";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
reg_usb_h1_vbus: regulator-usb-h1-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&max7310_b 7 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <1>;
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&max7310_b 7 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&max7310_c 1 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator@2 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <2>;
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&max7310_c 1 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
reg_can_en: regulator-can-en {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "can-en";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&max7310_b 6 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_can_stby: regulator-can-stby {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "can-stby";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&max7310_b 5 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
vin-supply = <®_can_en>;
|
||||
};
|
||||
|
||||
sound-cs42888 {
|
||||
|
@ -219,6 +230,8 @@
|
|||
accelerometer@1c {
|
||||
compatible = "fsl,mma8451";
|
||||
reg = <0x1c>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_mma8451_int>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <31 IRQ_TYPE_LEVEL_LOW>;
|
||||
};
|
||||
|
@ -254,12 +267,12 @@
|
|||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio3 19 0>;
|
||||
cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs>;
|
||||
status = "disabled"; /* pin conflict with WEIM NOR */
|
||||
|
||||
flash: m25p80@0 {
|
||||
flash: flash@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "st,m25p32", "jedec,spi-nor";
|
||||
|
@ -285,6 +298,21 @@
|
|||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
fsl,err006687-workaround-present;
|
||||
fsl,magic-packet;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan1>;
|
||||
xceiver-supply = <®_can_stby>;
|
||||
status = "disabled"; /* pin conflict with fec */
|
||||
};
|
||||
|
||||
&can2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan2>;
|
||||
xceiver-supply = <®_can_stby>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -503,6 +531,20 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan1: flexcan1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x17059
|
||||
MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan2: flexcan2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x17059
|
||||
MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys: gpiokeysgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_CMD__GPIO1_IO11 0x1b0b0
|
||||
|
@ -589,6 +631,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_mma8451_int: mma8451intgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0xb0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
|
||||
|
@ -753,11 +801,16 @@
|
|||
};
|
||||
|
||||
&pwm3 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spdif {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_spdif>;
|
||||
|
|
|
@ -8,336 +8,683 @@
|
|||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x000b1
|
||||
#define GP_ECSPI1_NOR_CS <&gpio3 19 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x0b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
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 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x100b0
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x100b0
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x100b0
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
|
||||
#undef GP_ENET_PHY_RESET
|
||||
#define GP_ENET_PHY_RESET <&gpio3 23 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x030b0
|
||||
#define GPIRQ_ENET_PHY <&gpio1 28 IRQ_TYPE_LEVEL_LOW>
|
||||
MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
/* Spare */
|
||||
MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_1: i2c1-1grp {
|
||||
fsl,pins = <
|
||||
#define GP_I2C1_SCL <&gpio3 21 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x4001b8b1
|
||||
#define GP_I2C1_SDA <&gpio3 28 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_1: i2c2-1grp {
|
||||
fsl,pins = <
|
||||
#define GP_I2C2_SCL <&gpio4 12 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x4001b8b1
|
||||
#define GP_I2C2_SDA <&gpio4 13 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1
|
||||
#define GPIRQ_I2C3_J7 <&gpio1 9 IRQ_TYPE_EDGE_FALLING>
|
||||
#define GP_I2C3_J7 <&gpio1 9 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_1: i2c3-1grp {
|
||||
fsl,pins = <
|
||||
#define GP_I2C3_SCL <&gpio1 5 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x4001b8b1
|
||||
#define GP_I2C3_SDA <&gpio7 11 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_GPIO_16__GPIO7_IO11 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_reg_usbotg_vbus: reg-usbotg-vbusgrp {
|
||||
fsl,pins = <
|
||||
#define GP_REG_USBOTG <&gpio3 22 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x030b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
#define GP_USBH1_HUB_RESET <&gpio7 12 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
MX6QDL_PAD_KEY_COL4__USB_OTG_OC 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
|
||||
#define GP_USDHC3_CD <&gpio7 0 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x1b0b0
|
||||
#define GP_USDHC3_WP <&gpio7 1 GPIO_ACTIVE_HIGH>
|
||||
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4: usdhc4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059
|
||||
MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059
|
||||
MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059
|
||||
MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059
|
||||
MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059
|
||||
MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059
|
||||
#define GP_USDHC4_CD <&gpio2 6 GPIO_ACTIVE_LOW>
|
||||
MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
mmc1 = &usdhc4;
|
||||
pwm_lcd = &pwm1;
|
||||
pwm_lvds = &pwm4;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart2;
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
reg_3p3v: regulator-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
reg_2p5v: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "2P5V";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_3p3v: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <1>;
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator@2 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <2>;
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 0>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_can_xcvr: regulator@3 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <3>;
|
||||
regulator-name = "CAN XCVR";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can_xcvr>;
|
||||
gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
reg_1p5v: regulator@4 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <4>;
|
||||
regulator-name = "1P5V";
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_1p8v: regulator@5 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <5>;
|
||||
regulator-name = "1P8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_2p8v: regulator@6 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <6>;
|
||||
regulator-name = "2P8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator@7 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <7>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = GP_REG_USBOTG;
|
||||
enable-active-high;
|
||||
mipi_xclk: mipi_xclk {
|
||||
compatible = "pwm-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <22000000>;
|
||||
clock-output-names = "mipi_pwm3";
|
||||
pwms = <&pwm3 0 45>; /* 1 / 45 ns = 22 MHz */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpio_keys>;
|
||||
|
||||
power {
|
||||
label = "Power Button";
|
||||
gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_POWER>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
menu {
|
||||
label = "Menu";
|
||||
gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_MENU>;
|
||||
};
|
||||
|
||||
home {
|
||||
label = "Home";
|
||||
gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_HOME>;
|
||||
};
|
||||
|
||||
back {
|
||||
label = "Back";
|
||||
gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_BACK>;
|
||||
};
|
||||
|
||||
volume-up {
|
||||
label = "Volume Up";
|
||||
gpios = <&gpio7 13 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEUP>;
|
||||
};
|
||||
|
||||
volume-down {
|
||||
label = "Volume Down";
|
||||
gpios = <&gpio4 5 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEDOWN>;
|
||||
};
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "fsl,imx6q-sabrelite-sgtl5000",
|
||||
"fsl,imx-audio-sgtl5000";
|
||||
model = "imx6q-sabrelite-sgtl5000";
|
||||
ssi-controller = <&ssi1>;
|
||||
audio-codec = <&codec>;
|
||||
audio-routing =
|
||||
"MIC_IN", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias",
|
||||
"Headphone Jack", "HP_OUT";
|
||||
mux-int-port = <1>;
|
||||
mux-ext-port = <4>;
|
||||
};
|
||||
|
||||
backlight_lcd: backlight-lcd {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm1 0 5000000>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <7>;
|
||||
power-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
backlight_lvds: backlight-lvds {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm4 0 5000000>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <7>;
|
||||
power-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
lcd_display: disp0 {
|
||||
compatible = "fsl,imx-parallel-display";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
interface-pix-fmt = "bgr666";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_j15>;
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
lcd_display_in: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_disp0>;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
lcd_display_out: endpoint {
|
||||
remote-endpoint = <&lcd_panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel-lcd {
|
||||
compatible = "okaya,rs800480t-7x0gp";
|
||||
backlight = <&backlight_lcd>;
|
||||
|
||||
port {
|
||||
lcd_panel_in: endpoint {
|
||||
remote-endpoint = <&lcd_display_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel-lvds0 {
|
||||
compatible = "hannstar,hsd100pxn1";
|
||||
backlight = <&backlight_lvds>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ipu1_csi0_from_ipu1_csi0_mux {
|
||||
bus-width = <8>;
|
||||
data-shift = <12>; /* Lines 19:12 used */
|
||||
hsync-active = <1>;
|
||||
vync-active = <1>;
|
||||
};
|
||||
|
||||
&ipu1_csi0_mux_from_parallel_sensor {
|
||||
remote-endpoint = <&ov5642_to_ipu1_csi0_mux>;
|
||||
};
|
||||
|
||||
&ipu1_csi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ipu1_csi0>;
|
||||
};
|
||||
|
||||
&audmux {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_audmux>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can1>;
|
||||
xceiver-supply = <®_can_xcvr>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&clks {
|
||||
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
|
||||
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
|
||||
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
|
||||
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = GP_ECSPI1_NOR_CS;
|
||||
cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
status = "okay";
|
||||
|
||||
flash: m25p80@0 {
|
||||
flash: flash@0 {
|
||||
compatible = "sst,sst25vf016b", "jedec,spi-nor";
|
||||
spi-max-frequency = <20000000>;
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
mtd@00000000 {
|
||||
label = "U-Boot";
|
||||
reg = <0x0 0xC0000>;
|
||||
};
|
||||
|
||||
mtd@000C0000 {
|
||||
label = "env";
|
||||
reg = <0xC0000 0x2000>;
|
||||
};
|
||||
mtd@000C2000 {
|
||||
label = "splash";
|
||||
reg = <0xC2000 0x13e000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec {
|
||||
phy-handle = <ðphy>;
|
||||
phy-mode = "rgmii";
|
||||
#if 0
|
||||
phy-reset-gpios = GP_ENET_PHY_RESET;
|
||||
#endif
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
rxc-skew-ps = <3000>;
|
||||
rxd0-skew-ps = <0>;
|
||||
rxd1-skew-ps = <0>;
|
||||
rxd2-skew-ps = <0>;
|
||||
rxd3-skew-ps = <0>;
|
||||
rxdv-skew-ps = <0>;
|
||||
phy-mode = "rgmii";
|
||||
phy-handle = <ðphy>;
|
||||
phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
txc-skew-ps = <3000>;
|
||||
txd0-skew-ps = <0>;
|
||||
txd1-skew-ps = <0>;
|
||||
txd2-skew-ps = <0>;
|
||||
txd3-skew-ps = <0>;
|
||||
txen-skew-ps = <0>;
|
||||
|
||||
mdio {
|
||||
#address-cells = <0>;
|
||||
#size-cells = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy: ethernet-phy {
|
||||
interrupts-extended = GPIRQ_ENET_PHY;
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
txen-skew-ps = <0>;
|
||||
txc-skew-ps = <3000>;
|
||||
rxdv-skew-ps = <0>;
|
||||
rxc-skew-ps = <3000>;
|
||||
rxd0-skew-ps = <0>;
|
||||
rxd1-skew-ps = <0>;
|
||||
rxd2-skew-ps = <0>;
|
||||
rxd3-skew-ps = <0>;
|
||||
txd0-skew-ps = <0>;
|
||||
txd1-skew-ps = <0>;
|
||||
txd2-skew-ps = <0>;
|
||||
txd3-skew-ps = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
pinctrl-1 = <&pinctrl_i2c1_1>;
|
||||
scl-gpios = GP_I2C1_SCL;
|
||||
sda-gpios = GP_I2C1_SDA;
|
||||
status = "okay";
|
||||
|
||||
codec: sgtl5000@a {
|
||||
compatible = "fsl,sgtl5000";
|
||||
reg = <0x0a>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
VDDA-supply = <®_2p5v>;
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
pinctrl-1 = <&pinctrl_i2c2_1>;
|
||||
scl-gpios = GP_I2C2_SCL;
|
||||
sda-gpios = GP_I2C2_SDA;
|
||||
status = "okay";
|
||||
|
||||
hdmi_edid: edid@50 {
|
||||
compatible = "fsl,imx6-hdmi-i2c";
|
||||
reg = <0x50>;
|
||||
ov5640: camera@40 {
|
||||
compatible = "ovti,ov5640";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ov5640>;
|
||||
reg = <0x40>;
|
||||
clocks = <&mipi_xclk>;
|
||||
clock-names = "xclk";
|
||||
DOVDD-supply = <®_1p8v>;
|
||||
AVDD-supply = <®_2p8v>;
|
||||
DVDD-supply = <®_1p5v>;
|
||||
reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; /* NANDF_D5 */
|
||||
powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
|
||||
|
||||
port {
|
||||
ov5640_to_mipi_csi2: endpoint {
|
||||
remote-endpoint = <&mipi_csi2_in>;
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ov5642: camera@42 {
|
||||
compatible = "ovti,ov5642";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ov5642>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO2>;
|
||||
clock-names = "xclk";
|
||||
reg = <0x42>;
|
||||
reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
|
||||
powerdown-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||
gp-gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>;
|
||||
status = "disabled";
|
||||
|
||||
port {
|
||||
ov5642_to_ipu1_csi0_mux: endpoint {
|
||||
remote-endpoint = <&ipu1_csi0_mux_from_parallel_sensor>;
|
||||
bus-width = <8>;
|
||||
hsync-active = <1>;
|
||||
vsync-active = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_1>;
|
||||
scl-gpios = GP_I2C3_SCL;
|
||||
sda-gpios = GP_I2C3_SDA;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
imx6q-sabrelite {
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
/* SGTL5000 sys_mclk */
|
||||
MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x030b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_audmux: audmuxgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0
|
||||
MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0
|
||||
MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0
|
||||
MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can1: can1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x1b0b0
|
||||
MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can_xcvr: can-xcvrgrp {
|
||||
fsl,pins = <
|
||||
/* Flexcan XCVR enable */
|
||||
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
|
||||
MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x000b1 /* CS */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet: enetgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x100b0
|
||||
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x100b0
|
||||
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030
|
||||
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030
|
||||
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030
|
||||
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030
|
||||
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030
|
||||
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030
|
||||
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
|
||||
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
|
||||
/* Phy reset */
|
||||
MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys: gpio-keysgrp {
|
||||
fsl,pins = <
|
||||
/* Power Button */
|
||||
MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x1b0b0
|
||||
/* Menu Button */
|
||||
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1b0b0
|
||||
/* Home Button */
|
||||
MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x1b0b0
|
||||
/* Back Button */
|
||||
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
|
||||
/* Volume Up Button */
|
||||
MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x1b0b0
|
||||
/* Volume Down Button */
|
||||
MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
||||
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__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_16__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
|
||||
MX6QDL_PAD_CSI0_DATA_EN__IPU1_CSI0_DATA_EN 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_j15: j15grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10
|
||||
MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x10
|
||||
MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10
|
||||
MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10
|
||||
MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10
|
||||
MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10
|
||||
MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10
|
||||
MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10
|
||||
MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10
|
||||
MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10
|
||||
MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10
|
||||
MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10
|
||||
MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10
|
||||
MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10
|
||||
MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10
|
||||
MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10
|
||||
MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10
|
||||
MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10
|
||||
MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10
|
||||
MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10
|
||||
MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10
|
||||
MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10
|
||||
MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10
|
||||
MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10
|
||||
MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10
|
||||
MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10
|
||||
MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov5640: ov5640grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x000b0
|
||||
MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov5642: ov5642grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x1b0b0
|
||||
MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x130b0
|
||||
MX6QDL_PAD_GPIO_3__CCM_CLKO2 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm4: pwm4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
|
||||
MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbh1: usbh1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x030b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg: usbotggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
||||
MX6QDL_PAD_KEY_COL4__USB_OTG_OC 0x1b0b0
|
||||
/* power enable, high active */
|
||||
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x000b0
|
||||
>;
|
||||
};
|
||||
|
||||
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_DAT5__GPIO7_IO00 0x1b0b0 /* CD */
|
||||
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1f0b0 /* WP */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc4: usdhc4grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059
|
||||
MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059
|
||||
MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059
|
||||
MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059
|
||||
MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059
|
||||
MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059
|
||||
MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x1b0b0 /* CD */
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ipu1_di0_disp0 {
|
||||
remote-endpoint = <&lcd_display_in>;
|
||||
};
|
||||
|
||||
&ldb {
|
||||
status = "okay";
|
||||
|
||||
lvds-channel@0 {
|
||||
status = "okay";
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm4 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
|
@ -351,10 +698,7 @@
|
|||
};
|
||||
|
||||
&usbh1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
disable-over-current;
|
||||
reset-gpios = GP_USBH1_HUB_RESET;
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -369,8 +713,8 @@
|
|||
&usdhc3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
cd-gpios = GP_USDHC3_CD;
|
||||
wp-gpios = GP_USDHC3_WP;
|
||||
cd-gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
|
||||
wp-gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -378,7 +722,21 @@
|
|||
&usdhc4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc4>;
|
||||
cd-gpios = GP_USDHC4_CD;
|
||||
cd-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&mipi_csi {
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
mipi_csi2_in: endpoint {
|
||||
remote-endpoint = <&ov5640_to_mipi_csi2>;
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -8,64 +8,62 @@
|
|||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc1 = &usdhc3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
memory@10000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg_usb_otg_vbus: regulator-usb-otg-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
vin-supply = <&swbst_reg>;
|
||||
};
|
||||
|
||||
reg_usb_otg_vbus: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "usb_otg_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio3 22 0>;
|
||||
enable-active-high;
|
||||
vin-supply = <&swbst_reg>;
|
||||
};
|
||||
reg_usb_h1_vbus: regulator-usb-h1-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 29 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
vin-supply = <&swbst_reg>;
|
||||
};
|
||||
|
||||
reg_usb_h1_vbus: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <1>;
|
||||
regulator-name = "usb_h1_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&gpio1 29 0>;
|
||||
enable-active-high;
|
||||
vin-supply = <&swbst_reg>;
|
||||
};
|
||||
reg_audio: regulator-audio {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "wm8962-supply";
|
||||
gpio = <&gpio4 10 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_audio: regulator@2 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <2>;
|
||||
regulator-name = "wm8962-supply";
|
||||
gpio = <&gpio4 10 0>;
|
||||
enable-active-high;
|
||||
};
|
||||
reg_pcie: regulator-pcie {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie_reg>;
|
||||
regulator-name = "MPCIE_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_pcie: regulator@3 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <3>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pcie_reg>;
|
||||
regulator-name = "MPCIE_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio3 19 0>;
|
||||
enable-active-high;
|
||||
};
|
||||
reg_sensors: regulator-sensors {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sensors_reg>;
|
||||
regulator-name = "sensors-supply";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio2 31 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
|
@ -99,17 +97,24 @@
|
|||
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",
|
||||
"Ext Spk", "SPKOUTL",
|
||||
"Ext Spk", "SPKOUTR",
|
||||
"AMIC", "MICBIAS",
|
||||
"IN3R", "AMIC";
|
||||
"IN3R", "AMIC",
|
||||
"DMIC", "MICBIAS",
|
||||
"DMICDAT", "DMIC";
|
||||
mux-int-port = <2>;
|
||||
mux-ext-port = <3>;
|
||||
hp-det-gpio = <&gpio7 8 GPIO_ACTIVE_LOW>;
|
||||
mic-det-gpio = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
backlight_lvds: backlight-lvds {
|
||||
|
@ -187,12 +192,12 @@
|
|||
};
|
||||
|
||||
&ecspi1 {
|
||||
cs-gpios = <&gpio4 9 0>;
|
||||
cs-gpios = <&gpio4 9 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
status = "okay";
|
||||
|
||||
flash: m25p80@0 {
|
||||
flash: flash@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "st,m25p32", "jedec,spi-nor";
|
||||
|
@ -205,8 +210,21 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
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 = <&gpio1 25 GPIO_ACTIVE_LOW>;
|
||||
reset-assert-us = <10000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi {
|
||||
|
@ -244,6 +262,17 @@
|
|||
>;
|
||||
};
|
||||
|
||||
accelerometer@1c {
|
||||
compatible = "fsl,mma8451";
|
||||
reg = <0x1c>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1_mma8451_int>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <18 IRQ_TYPE_LEVEL_LOW>;
|
||||
vdd-supply = <®_sensors>;
|
||||
vddio-supply = <®_sensors>;
|
||||
};
|
||||
|
||||
ov5642: camera@3c {
|
||||
compatible = "ovti,ov5642";
|
||||
pinctrl-names = "default";
|
||||
|
@ -276,6 +305,16 @@
|
|||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
|
||||
touchscreen@4 {
|
||||
compatible = "eeti,egalax_ts";
|
||||
reg = <0x04>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2_egalax_int>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
|
||||
wakeup-gpios = <&gpio6 8 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
ov5640: camera@3c {
|
||||
compatible = "ovti,ov5640";
|
||||
pinctrl-names = "default";
|
||||
|
@ -414,6 +453,27 @@
|
|||
interrupts = <7 2>;
|
||||
wakeup-gpios = <&gpio6 7 0>;
|
||||
};
|
||||
|
||||
magnetometer@e {
|
||||
compatible = "fsl,mag3110";
|
||||
reg = <0x0e>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3_mag3110_int>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <16 IRQ_TYPE_EDGE_RISING>;
|
||||
vdd-supply = <®_sensors>;
|
||||
vddio-supply = <®_sensors>;
|
||||
};
|
||||
|
||||
light-sensor@44 {
|
||||
compatible = "isil,isl29023";
|
||||
reg = <0x44>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3_isl29023_int>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
|
||||
vcc-supply = <®_sensors>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
|
@ -488,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
|
||||
|
@ -495,6 +562,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_mma8451_int: i2c1mma8451intgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0xb0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
||||
|
@ -502,6 +575,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_egalax_int: i2c2egalaxintgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
|
||||
|
@ -509,6 +588,18 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_isl29023_int: i2c3isl29023intgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0xb0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_mag3110_int: i2c3mag3110intgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D16__GPIO3_IO16 0xb0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu1_csi0: ipu1csi0grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x1b0b0
|
||||
|
@ -557,6 +648,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_sensors_reg: sensorsreggrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_EB3__GPIO2_IO31 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
|
||||
|
@ -658,6 +755,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
|
@ -675,10 +773,22 @@
|
|||
vin-supply = <&sw1c_reg>;
|
||||
};
|
||||
|
||||
®_vdd1p1 {
|
||||
vin-supply = <&vgen5_reg>;
|
||||
};
|
||||
|
||||
®_vdd2p5 {
|
||||
vin-supply = <&vgen5_reg>;
|
||||
};
|
||||
|
||||
&snvs_poweroff {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&snvs_pwrkey {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssi2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -153,6 +153,7 @@
|
|||
bus-width = <4>;
|
||||
keep-power-in-suspend;
|
||||
mmc-pwrseq = <&pwrseq_ti_wifi>;
|
||||
cap-power-off-card;
|
||||
non-removable;
|
||||
vmmc-supply = <&vcc_3v3>;
|
||||
/* vqmmc-supply = <&nvcc_sd1>; - MMC layer doesn't like it! */
|
||||
|
|
|
@ -53,7 +53,6 @@
|
|||
&fec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_microsom_enet_ar8035>;
|
||||
phy-handle = <&phy>;
|
||||
phy-mode = "rgmii-id";
|
||||
|
||||
/*
|
||||
|
@ -69,16 +68,30 @@
|
|||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy: ethernet-phy@0 {
|
||||
/*
|
||||
* The PHY can appear either:
|
||||
* - AR8035: at address 0 or 4
|
||||
* - ADIN1300: at address 1
|
||||
* Actual address being detected at runtime.
|
||||
*/
|
||||
reg = <0xffffffff>;
|
||||
/*
|
||||
* The PHY can appear at either address 0 or 4 due to the
|
||||
* configuration (LED) pin not being pulled sufficiently.
|
||||
*/
|
||||
ethernet-phy@0 {
|
||||
reg = <0>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
qca,smarteee-tw-us-1g = <24>;
|
||||
};
|
||||
|
||||
ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
qca,smarteee-tw-us-1g = <24>;
|
||||
};
|
||||
|
||||
/*
|
||||
* ADIN1300 (som rev 1.9 or later) is always at address 1. It
|
||||
* will be enabled automatically by U-Boot if detected.
|
||||
*/
|
||||
ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
adi,phy-output-clock = "125mhz-free-running";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,40 +1,30 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
* Copyright 2013-2017 Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
/delete-property/ mmc1;
|
||||
/delete-property/ mmc2;
|
||||
};
|
||||
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
reg_3p3v: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "supply-3p3v";
|
||||
reg = <0>;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
reg_3p3v: regulator-3p3v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "supply-3p3v";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
&ecspi1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||
fsl,spi-num-chipselects = <1>;
|
||||
cs-gpios = <&gpio3 19 0>;
|
||||
cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
|
||||
flash: m25p80@0 {
|
||||
status = "okay";
|
||||
compatible = "micron,n25q128a13", "n25q128a13";
|
||||
m25p80: flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
spi-max-frequency = <50000000>;
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
|
@ -44,151 +34,163 @@
|
|||
};
|
||||
|
||||
&iomuxc {
|
||||
tqma6 {
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
/* HYS, SPEED = MED, 100k up, DSE = 011, SRE_FAST */
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x1b099
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0xb099
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0xb099
|
||||
/* eCSPI1 SS1 */
|
||||
MX6QDL_PAD_EIM_D19__GPIO3_IO19 0xb099
|
||||
>;
|
||||
};
|
||||
pinctrl_ecspi1: ecspi1grp {
|
||||
fsl,pins = <
|
||||
/* HYS, SPEED = MED, 100k up, DSE = 011, SRE_FAST */
|
||||
MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x1b099
|
||||
MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0xb099
|
||||
MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0xb099
|
||||
/* eCSPI1 SS1 */
|
||||
MX6QDL_PAD_EIM_D19__GPIO3_IO19 0xb099
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_tqma6: i2c1-tqma6grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b899
|
||||
MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b899
|
||||
>;
|
||||
};
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b899
|
||||
MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b899
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c3_tqma6: i2c3-tqma6grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b899
|
||||
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b899
|
||||
>;
|
||||
};
|
||||
pinctrl_i2c1_recovery: i2c1recoverygrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_CSI0_DAT8__GPIO5_IO26 0x4001b899
|
||||
MX6QDL_PAD_CSI0_DAT9__GPIO5_IO27 0x4001b899
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pmic: pmicgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x1b099 /* PMIC irq */
|
||||
>;
|
||||
};
|
||||
pinctrl_i2c3: i2c3grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b899
|
||||
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b899
|
||||
>;
|
||||
};
|
||||
|
||||
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_i2c3_recovery: i2c3recoverygrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x4001b899
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x4001b899
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pmic: pmicgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x1b099 /* PMIC irq */
|
||||
>;
|
||||
};
|
||||
|
||||
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
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&pmic {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pmic>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <10 8>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pmic>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
regulators {
|
||||
reg_vddcore: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vddsoc: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_gen_3v3: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_ddr_1v5a: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_ddr_1v5b: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_5v_600mA: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_snvs_3v: vsnvs {
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vrefddr: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen1_1v5: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
/* not used */
|
||||
};
|
||||
|
||||
reg_vgen2_1v2_eth: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen3_2v8: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen4_1v8: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen5_1v8_eth: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen6_3v3: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
regulators {
|
||||
reg_vddcore: sw1ab {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vddsoc: sw1c {
|
||||
regulator-min-microvolt = <300000>;
|
||||
regulator-max-microvolt = <1875000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_gen_3v3: sw2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_ddr_1v5a: sw3a {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_ddr_1v5b: sw3b {
|
||||
regulator-min-microvolt = <400000>;
|
||||
regulator-max-microvolt = <1975000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sw4_reg: sw4 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_5v_600mA: swbst {
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5150000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_snvs_3v: vsnvs {
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vrefddr: vrefddr {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen1_1v5: vgen1 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
/* not used */
|
||||
};
|
||||
|
||||
reg_vgen2_1v2_eth: vgen2 {
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1550000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen3_2v8: vgen3 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen4_1v8: vgen4 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen5_1v8_eth: vgen5 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_vgen6_3v3: vgen6 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
|
@ -198,6 +200,8 @@
|
|||
vmmc-supply = <®_3p3v>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
no-sd;
|
||||
no-sdio;
|
||||
bus-width = <8>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
|
|
@ -1,27 +1,53 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
* Copyright 2013-2017 Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
&fec {
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
fsl,err006687-workaround-present;
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1_tqma6>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
pinctrl-1 = <&pinctrl_i2c1_recovery>;
|
||||
scl-gpios = <&gpio5 27 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio5 26 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
clock-frequency = <100000>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pf0100@08 {
|
||||
pmic: pmic@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
};
|
||||
|
||||
sensor0: lm75@48 {
|
||||
compatible = "lm75";
|
||||
sensor@48 {
|
||||
compatible = "national,lm75";
|
||||
reg = <0x48>;
|
||||
};
|
||||
|
||||
eeprom0: m24c64@50 {
|
||||
compatible = "st,24c64", "at24";
|
||||
eeprom@50 {
|
||||
compatible = "st,24c64", "atmel,24c64";
|
||||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
/*
|
||||
* This pinmuxing is required for the ERR006687 workaround. Board
|
||||
* DTS files that enable the FEC controller with
|
||||
* fsl,err006687-workaround-present must include this group.
|
||||
*/
|
||||
pinctrl_enet_fix: enetfixgrp {
|
||||
fsl,pins = <
|
||||
/* ENET ping patch */
|
||||
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,27 +1,33 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
//
|
||||
// Copyright (C) 2020 TQ-Systems GmbH
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/*
|
||||
* Copyright 2013 Sascha Hauer, Pengutronix
|
||||
* Copyright 2013-2017 Markus Niebel <Markus.Niebel@tq-group.com>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c3_tqma6>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-0 = <&pinctrl_i2c3>;
|
||||
pinctrl-1 = <&pinctrl_i2c3_recovery>;
|
||||
scl-gpios = <&gpio1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
clock-frequency = <100000>;
|
||||
status = "okay";
|
||||
|
||||
pmic: pf0100@08 {
|
||||
pmic: pmic@8 {
|
||||
compatible = "fsl,pfuze100";
|
||||
reg = <0x08>;
|
||||
};
|
||||
|
||||
sensor0: lm75@48 {
|
||||
compatible = "lm75";
|
||||
sensor@48 {
|
||||
compatible = "national,lm75";
|
||||
reg = <0x48>;
|
||||
};
|
||||
|
||||
eeprom0: m24c64@50 {
|
||||
compatible = "st,24c64", "at24";
|
||||
eeprom@50 {
|
||||
compatible = "st,24c64", "atmel,24c64";
|
||||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -4,7 +4,9 @@
|
|||
*
|
||||
* Author: Fabio Estevam <fabio.estevam@freescale.com>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
backlight = &backlight;
|
||||
|
@ -293,7 +295,7 @@
|
|||
pinctrl-0 = <&pinctrl_usbh>;
|
||||
vbus-supply = <®_usb_h1_vbus>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
status = "okay";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
|
|
|
@ -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 */
|
||||
|
@ -166,7 +165,6 @@
|
|||
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_GPIO_6__ENET_IRQ 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
|
|
|
@ -8,10 +8,6 @@
|
|||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
mmc0 = &usdhc3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
@ -37,6 +33,30 @@
|
|||
spdif-out;
|
||||
};
|
||||
|
||||
reg_1p5v: regulator-1p5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "1P5V";
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_1p8v: regulator-1p8v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "1P8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_2p8v: regulator-2p8v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "2P8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_2p5v: regulator-2p5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "2P5V";
|
||||
|
@ -77,15 +97,21 @@
|
|||
|
||||
&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";
|
||||
|
||||
codec: sgtl5000@a {
|
||||
|
@ -98,6 +124,29 @@
|
|||
VDDIO-supply = <®_3p3v>;
|
||||
lrclk-strength = <3>;
|
||||
};
|
||||
|
||||
camera@3c {
|
||||
compatible = "ovti,ov5645";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ov5645>;
|
||||
reg = <0x3c>;
|
||||
clocks = <&clks IMX6QDL_CLK_CKO2>;
|
||||
clock-names = "xclk";
|
||||
clock-frequency = <24000000>;
|
||||
vdddo-supply = <®_1p8v>;
|
||||
vdda-supply = <®_2p8v>;
|
||||
vddd-supply = <®_1p5v>;
|
||||
enable-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;
|
||||
|
||||
port {
|
||||
ov5645_to_mipi_csi2: endpoint {
|
||||
remote-endpoint = <&mipi_csi2_in>;
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
|
@ -132,7 +181,6 @@
|
|||
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
||||
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
|
||||
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
||||
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -143,6 +191,13 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_gpio: i2c1gpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x4001b8b0
|
||||
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x4001b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
||||
|
@ -150,12 +205,27 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_gpio: i2c2gpiogrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x4001b8b0
|
||||
MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x4001b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mclk: mclkgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov5645: ov5645grp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_3__CCM_CLKO2 0x000b0
|
||||
MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x1b0b0
|
||||
MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_spdif: spdifgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_ENET_RXD0__SPDIF_OUT 0x1b0b0
|
||||
|
@ -231,9 +301,6 @@
|
|||
phy-mode = "rgmii-id";
|
||||
phy-handle = <ðphy>;
|
||||
phy-reset-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
|
||||
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
fsl,err006687-workaround-present;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
|
@ -242,6 +309,21 @@
|
|||
|
||||
ethphy: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
qca,clk-out-frequency = <125000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&mipi_csi {
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
mipi_csi2_in: endpoint {
|
||||
remote-endpoint = <&ov5645_to_mipi_csi2>;
|
||||
clock-lanes = <0>;
|
||||
data-lanes = <1 2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
// Copyright 2011 Linaro Ltd.
|
||||
|
||||
#include <dt-bindings/clock/imx6qdl-clock.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
|
||||
/ {
|
||||
|
@ -13,10 +14,8 @@
|
|||
* The decompressor and also some bootloaders rely on a
|
||||
* pre-existing /chosen node to be available to insert the
|
||||
* command line and merge other ATAGS info.
|
||||
* Also for U-Boot there must be a pre-existing /memory node.
|
||||
*/
|
||||
chosen {};
|
||||
memory { device_type = "memory"; };
|
||||
|
||||
aliases {
|
||||
ethernet0 = &fec;
|
||||
|
@ -46,39 +45,34 @@
|
|||
spi1 = &ecspi2;
|
||||
spi2 = &ecspi3;
|
||||
spi3 = &ecspi4;
|
||||
usb0 = &usbotg;
|
||||
usb1 = &usbh1;
|
||||
usb2 = &usbh2;
|
||||
usb3 = &usbh3;
|
||||
usbphy0 = &usbphy1;
|
||||
usbphy1 = &usbphy2;
|
||||
};
|
||||
|
||||
clocks {
|
||||
ckil {
|
||||
compatible = "fsl,imx-ckil", "fixed-clock";
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
};
|
||||
|
||||
ckih1 {
|
||||
compatible = "fsl,imx-ckih1", "fixed-clock";
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
|
||||
osc {
|
||||
compatible = "fsl,imx-osc", "fixed-clock";
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24000000>;
|
||||
};
|
||||
};
|
||||
|
||||
tempmon: tempmon {
|
||||
compatible = "fsl,imx6q-tempmon";
|
||||
interrupt-parent = <&gpc>;
|
||||
interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
|
||||
fsl,tempmon = <&anatop>;
|
||||
fsl,tempmon-data = <&ocotp>;
|
||||
clocks = <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
|
||||
};
|
||||
|
||||
ldb: ldb {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@ -139,6 +133,16 @@
|
|||
interrupts = <0 94 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
usbphynop1: usbphynop1 {
|
||||
compatible = "usb-nop-xceiv";
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
|
||||
usbphynop2: usbphynop2 {
|
||||
compatible = "usb-nop-xceiv";
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
|
||||
soc: soc {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
@ -159,10 +163,8 @@
|
|||
clocks = <&clks IMX6QDL_CLK_APBH_DMA>;
|
||||
};
|
||||
|
||||
gpmi: gpmi-nand@112000 {
|
||||
gpmi: nand-controller@112000 {
|
||||
compatible = "fsl,imx6q-gpmi-nand";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
reg = <0x00112000 0x2000>, <0x00114000 0x2000>;
|
||||
reg-names = "gpmi-nand", "bch";
|
||||
interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -180,8 +182,6 @@
|
|||
};
|
||||
|
||||
hdmi: hdmi@120000 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x00120000 0x9000>;
|
||||
interrupts = <0 115 0x04>;
|
||||
gpr = <&gpr>;
|
||||
|
@ -190,19 +190,24 @@
|
|||
clock-names = "iahb", "isfr";
|
||||
status = "disabled";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
hdmi_mux_0: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_hdmi>;
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
|
||||
hdmi_mux_0: endpoint {
|
||||
remote-endpoint = <&ipu1_di0_hdmi>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
hdmi_mux_1: endpoint {
|
||||
remote-endpoint = <&ipu1_di1_hdmi>;
|
||||
hdmi_mux_1: endpoint {
|
||||
remote-endpoint = <&ipu1_di1_hdmi>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -216,6 +221,7 @@
|
|||
<&clks IMX6QDL_CLK_GPU3D_SHADER>;
|
||||
clock-names = "bus", "core", "shader";
|
||||
power-domains = <&pd_pu>;
|
||||
#cooling-cells = <2>;
|
||||
};
|
||||
|
||||
gpu_2d: gpu@134000 {
|
||||
|
@ -226,6 +232,7 @@
|
|||
<&clks IMX6QDL_CLK_GPU2D_CORE>;
|
||||
clock-names = "bus", "core";
|
||||
power-domains = <&pd_pu>;
|
||||
#cooling-cells = <2>;
|
||||
};
|
||||
|
||||
timer@a00600 {
|
||||
|
@ -245,7 +252,7 @@
|
|||
interrupt-parent = <&intc>;
|
||||
};
|
||||
|
||||
L2: l2-cache@a02000 {
|
||||
L2: cache-controller@a02000 {
|
||||
compatible = "arm,pl310-cache";
|
||||
reg = <0x00a02000 0x1000>;
|
||||
interrupts = <0 92 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -257,7 +264,7 @@
|
|||
};
|
||||
|
||||
pcie: pcie@1ffc000 {
|
||||
compatible = "fsl,imx6q-pcie", "snps,dw-pcie";
|
||||
compatible = "fsl,imx6q-pcie";
|
||||
reg = <0x01ffc000 0x04000>,
|
||||
<0x01f00000 0x80000>;
|
||||
reg-names = "dbi", "config";
|
||||
|
@ -265,8 +272,8 @@
|
|||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
bus-range = <0x00 0xff>;
|
||||
ranges = <0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */
|
||||
0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */
|
||||
ranges = <0x81000000 0 0 0x01f80000 0 0x00010000>, /* downstream I/O */
|
||||
<0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */
|
||||
num-lanes = <1>;
|
||||
interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "msi";
|
||||
|
@ -326,7 +333,7 @@
|
|||
clocks = <&clks IMX6QDL_CLK_ECSPI1>,
|
||||
<&clks IMX6QDL_CLK_ECSPI1>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 3 8 1>, <&sdma 4 8 2>;
|
||||
dmas = <&sdma 3 7 1>, <&sdma 4 7 2>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -340,7 +347,7 @@
|
|||
clocks = <&clks IMX6QDL_CLK_ECSPI2>,
|
||||
<&clks IMX6QDL_CLK_ECSPI2>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 5 8 1>, <&sdma 6 8 2>;
|
||||
dmas = <&sdma 5 7 1>, <&sdma 6 7 2>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -354,7 +361,7 @@
|
|||
clocks = <&clks IMX6QDL_CLK_ECSPI3>,
|
||||
<&clks IMX6QDL_CLK_ECSPI3>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 7 8 1>, <&sdma 8 8 2>;
|
||||
dmas = <&sdma 7 7 1>, <&sdma 8 7 2>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -368,7 +375,7 @@
|
|||
clocks = <&clks IMX6QDL_CLK_ECSPI4>,
|
||||
<&clks IMX6QDL_CLK_ECSPI4>;
|
||||
clock-names = "ipg", "per";
|
||||
dmas = <&sdma 9 8 1>, <&sdma 10 8 2>;
|
||||
dmas = <&sdma 9 7 1>, <&sdma 10 7 2>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -474,7 +481,7 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
spba@203c000 {
|
||||
spba-bus@203c000 {
|
||||
reg = <0x0203c000 0x4000>;
|
||||
};
|
||||
};
|
||||
|
@ -498,7 +505,7 @@
|
|||
};
|
||||
|
||||
pwm1: pwm@2080000 {
|
||||
#pwm-cells = <2>;
|
||||
#pwm-cells = <3>;
|
||||
compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x02080000 0x4000>;
|
||||
interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -509,7 +516,7 @@
|
|||
};
|
||||
|
||||
pwm2: pwm@2084000 {
|
||||
#pwm-cells = <2>;
|
||||
#pwm-cells = <3>;
|
||||
compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x02084000 0x4000>;
|
||||
interrupts = <0 84 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -520,7 +527,7 @@
|
|||
};
|
||||
|
||||
pwm3: pwm@2088000 {
|
||||
#pwm-cells = <2>;
|
||||
#pwm-cells = <3>;
|
||||
compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x02088000 0x4000>;
|
||||
interrupts = <0 85 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -531,7 +538,7 @@
|
|||
};
|
||||
|
||||
pwm4: pwm@208c000 {
|
||||
#pwm-cells = <2>;
|
||||
#pwm-cells = <3>;
|
||||
compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x0208c000 0x4000>;
|
||||
interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -541,27 +548,29 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
can1: flexcan@2090000 {
|
||||
can1: can@2090000 {
|
||||
compatible = "fsl,imx6q-flexcan";
|
||||
reg = <0x02090000 0x4000>;
|
||||
interrupts = <0 110 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_CAN1_IPG>,
|
||||
<&clks IMX6QDL_CLK_CAN1_SERIAL>;
|
||||
clock-names = "ipg", "per";
|
||||
fsl,stop-mode = <&gpr 0x34 28>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
can2: flexcan@2094000 {
|
||||
can2: can@2094000 {
|
||||
compatible = "fsl,imx6q-flexcan";
|
||||
reg = <0x02094000 0x4000>;
|
||||
interrupts = <0 111 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_CAN2_IPG>,
|
||||
<&clks IMX6QDL_CLK_CAN2_SERIAL>;
|
||||
clock-names = "ipg", "per";
|
||||
fsl,stop-mode = <&gpr 0x34 29>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
gpt: gpt@2098000 {
|
||||
gpt: timer@2098000 {
|
||||
compatible = "fsl,imx6q-gpt", "fsl,imx31-gpt";
|
||||
reg = <0x02098000 0x4000>;
|
||||
interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -648,7 +657,7 @@
|
|||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
kpp: kpp@20b8000 {
|
||||
kpp: keypad@20b8000 {
|
||||
compatible = "fsl,imx6q-kpp", "fsl,imx21-kpp";
|
||||
reg = <0x020b8000 0x4000>;
|
||||
interrupts = <0 82 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -656,22 +665,22 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
wdog1: wdog@20bc000 {
|
||||
wdog1: watchdog@20bc000 {
|
||||
compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
|
||||
reg = <0x020bc000 0x4000>;
|
||||
interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_DUMMY>;
|
||||
clocks = <&clks IMX6QDL_CLK_IPG>;
|
||||
};
|
||||
|
||||
wdog2: wdog@20c0000 {
|
||||
wdog2: watchdog@20c0000 {
|
||||
compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
|
||||
reg = <0x020c0000 0x4000>;
|
||||
interrupts = <0 81 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_DUMMY>;
|
||||
clocks = <&clks IMX6QDL_CLK_IPG>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
clks: ccm@20c4000 {
|
||||
clks: clock-controller@20c4000 {
|
||||
compatible = "fsl,imx6q-ccm";
|
||||
reg = <0x020c4000 0x4000>;
|
||||
interrupts = <0 87 IRQ_TYPE_LEVEL_HIGH>,
|
||||
|
@ -680,7 +689,7 @@
|
|||
};
|
||||
|
||||
anatop: anatop@20c8000 {
|
||||
compatible = "fsl,imx6q-anatop", "syscon", "simple-bus";
|
||||
compatible = "fsl,imx6q-anatop", "syscon", "simple-mfd";
|
||||
reg = <0x020c8000 0x1000>;
|
||||
interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<0 54 IRQ_TYPE_LEVEL_HIGH>,
|
||||
|
@ -753,7 +762,7 @@
|
|||
regulator-name = "vddpu";
|
||||
regulator-min-microvolt = <725000>;
|
||||
regulator-max-microvolt = <1450000>;
|
||||
regulator-enable-ramp-delay = <150>;
|
||||
regulator-enable-ramp-delay = <380>;
|
||||
anatop-reg-offset = <0x140>;
|
||||
anatop-vol-bit-shift = <9>;
|
||||
anatop-vol-bit-width = <5>;
|
||||
|
@ -781,6 +790,17 @@
|
|||
anatop-min-voltage = <725000>;
|
||||
anatop-max-voltage = <1450000>;
|
||||
};
|
||||
|
||||
tempmon: tempmon {
|
||||
compatible = "fsl,imx6q-tempmon";
|
||||
interrupt-parent = <&gpc>;
|
||||
interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
|
||||
fsl,tempmon = <&anatop>;
|
||||
nvmem-cells = <&tempmon_calib>, <&tempmon_temp_grade>;
|
||||
nvmem-cell-names = "calib", "temp_grade";
|
||||
clocks = <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
|
||||
#thermal-sensor-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
usbphy1: usbphy@20c9000 {
|
||||
|
@ -820,6 +840,15 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
snvs_pwrkey: snvs-powerkey {
|
||||
compatible = "fsl,sec-v4.0-pwrkey";
|
||||
regmap = <&snvs>;
|
||||
interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
|
||||
linux,keycode = <KEY_POWER>;
|
||||
wakeup-source;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
snvs_lpgpr: snvs-lpgpr {
|
||||
compatible = "fsl,imx6q-snvs-lpgpr";
|
||||
};
|
||||
|
@ -835,7 +864,7 @@
|
|||
interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
src: src@20d8000 {
|
||||
src: reset-controller@20d8000 {
|
||||
compatible = "fsl,imx6q-src", "fsl,imx51-src";
|
||||
reg = <0x020d8000 0x4000>;
|
||||
interrupts = <0 91 IRQ_TYPE_LEVEL_HIGH>,
|
||||
|
@ -848,8 +877,7 @@
|
|||
reg = <0x020dc000 0x4000>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <3>;
|
||||
interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<0 90 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-parent = <&intc>;
|
||||
clocks = <&clks IMX6QDL_CLK_IPG>;
|
||||
clock-names = "ipg";
|
||||
|
@ -886,7 +914,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
iomuxc: iomuxc@20e0000 {
|
||||
iomuxc: pinctrl@20e0000 {
|
||||
compatible = "fsl,imx6dl-iomuxc", "fsl,imx6q-iomuxc";
|
||||
reg = <0x20e0000 0x4000>;
|
||||
};
|
||||
|
@ -905,7 +933,7 @@
|
|||
compatible = "fsl,imx6q-sdma", "fsl,imx35-sdma";
|
||||
reg = <0x020ec000 0x4000>;
|
||||
interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_SDMA>,
|
||||
clocks = <&clks IMX6QDL_CLK_IPG>,
|
||||
<&clks IMX6QDL_CLK_SDMA>;
|
||||
clock-names = "ipg", "ahb";
|
||||
#dma-cells = <3>;
|
||||
|
@ -913,14 +941,14 @@
|
|||
};
|
||||
};
|
||||
|
||||
bus@2100000 { /* AIPS2 */
|
||||
aips2: bus@2100000 { /* AIPS2 */
|
||||
compatible = "fsl,aips-bus", "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
reg = <0x02100000 0x100000>;
|
||||
ranges;
|
||||
|
||||
crypto: caam@2100000 {
|
||||
crypto: crypto@2100000 {
|
||||
compatible = "fsl,sec-v4.0";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
@ -932,13 +960,13 @@
|
|||
<&clks IMX6QDL_CLK_EIM_SLOW>;
|
||||
clock-names = "mem", "aclk", "ipg", "emi_slow";
|
||||
|
||||
sec_jr0: jr0@1000 {
|
||||
sec_jr0: jr@1000 {
|
||||
compatible = "fsl,sec-v4.0-job-ring";
|
||||
reg = <0x1000 0x1000>;
|
||||
interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
sec_jr1: jr1@2000 {
|
||||
sec_jr1: jr@2000 {
|
||||
compatible = "fsl,sec-v4.0-job-ring";
|
||||
reg = <0x2000 0x1000>;
|
||||
interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -981,6 +1009,8 @@
|
|||
reg = <0x02184400 0x200>;
|
||||
interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_USBOH3>;
|
||||
fsl,usbphy = <&usbphynop1>;
|
||||
phy_type = "hsic";
|
||||
fsl,usbmisc = <&usbmisc 2>;
|
||||
dr_mode = "host";
|
||||
ahb-burst-config = <0x0>;
|
||||
|
@ -994,6 +1024,8 @@
|
|||
reg = <0x02184600 0x200>;
|
||||
interrupts = <0 42 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_USBOH3>;
|
||||
fsl,usbphy = <&usbphynop2>;
|
||||
phy_type = "hsic";
|
||||
fsl,usbmisc = <&usbmisc 3>;
|
||||
dr_mode = "host";
|
||||
ahb-burst-config = <0x0>;
|
||||
|
@ -1013,13 +1045,14 @@
|
|||
compatible = "fsl,imx6q-fec";
|
||||
reg = <0x02188000 0x4000>;
|
||||
interrupt-names = "int0", "pps";
|
||||
interrupts-extended =
|
||||
<&intc 0 118 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupts = <0 118 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<0 119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_ENET>,
|
||||
<&clks IMX6QDL_CLK_ENET>,
|
||||
<&clks IMX6QDL_CLK_ENET_REF>,
|
||||
<&clks IMX6QDL_CLK_ENET_REF>;
|
||||
clock-names = "ipg", "ahb", "ptp";
|
||||
clock-names = "ipg", "ahb", "ptp", "enet_out";
|
||||
fsl,stop-mode = <&gpr 0x34 27>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -1030,7 +1063,7 @@
|
|||
<0 126 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
usdhc1: usdhc@2190000 {
|
||||
usdhc1: mmc@2190000 {
|
||||
compatible = "fsl,imx6q-usdhc";
|
||||
reg = <0x02190000 0x4000>;
|
||||
interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -1042,7 +1075,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
usdhc2: usdhc@2194000 {
|
||||
usdhc2: mmc@2194000 {
|
||||
compatible = "fsl,imx6q-usdhc";
|
||||
reg = <0x02194000 0x4000>;
|
||||
interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -1054,7 +1087,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
usdhc3: usdhc@2198000 {
|
||||
usdhc3: mmc@2198000 {
|
||||
compatible = "fsl,imx6q-usdhc";
|
||||
reg = <0x02198000 0x4000>;
|
||||
interrupts = <0 24 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -1066,7 +1099,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
usdhc4: usdhc@219c000 {
|
||||
usdhc4: mmc@219c000 {
|
||||
compatible = "fsl,imx6q-usdhc";
|
||||
reg = <0x0219c000 0x4000>;
|
||||
interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -1112,13 +1145,16 @@
|
|||
reg = <0x021ac000 0x4000>;
|
||||
};
|
||||
|
||||
mmdc0: mmdc@21b0000 { /* MMDC0 */
|
||||
mmdc0: memory-controller@21b0000 { /* MMDC0 */
|
||||
compatible = "fsl,imx6q-mmdc";
|
||||
reg = <0x021b0000 0x4000>;
|
||||
clocks = <&clks IMX6QDL_CLK_MMDC_P0_IPG>;
|
||||
};
|
||||
|
||||
mmdc1: mmdc@21b4000 { /* MMDC1 */
|
||||
mmdc1: memory-controller@21b4000 { /* MMDC1 */
|
||||
compatible = "fsl,imx6q-mmdc";
|
||||
reg = <0x021b4000 0x4000>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
weim: weim@21b8000 {
|
||||
|
@ -1132,10 +1168,24 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
ocotp: ocotp@21bc000 {
|
||||
ocotp: efuse@21bc000 {
|
||||
compatible = "fsl,imx6q-ocotp", "syscon";
|
||||
reg = <0x021bc000 0x4000>;
|
||||
clocks = <&clks IMX6QDL_CLK_IIM>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
cpu_speed_grade: speed-grade@10 {
|
||||
reg = <0x10 4>;
|
||||
};
|
||||
|
||||
tempmon_calib: calib@38 {
|
||||
reg = <0x38 4>;
|
||||
};
|
||||
|
||||
tempmon_temp_grade: temp-grade@20 {
|
||||
reg = <0x20 4>;
|
||||
};
|
||||
};
|
||||
|
||||
tzasc@21d0000 { /* TZASC1 */
|
||||
|
|
|
@ -8,12 +8,6 @@
|
|||
display0 = &lcdif;
|
||||
};
|
||||
|
||||
&qspi {
|
||||
flash0: n25q256a@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
};
|
||||
};
|
||||
|
||||
&{/soc} {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
|
|
@ -3,10 +3,6 @@
|
|||
// Copyright (C) 2015 Freescale Semiconductor, Inc.
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
spi5 = &{/spi4};
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
@ -34,6 +30,28 @@
|
|||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_peri_3v3: regulator-peri-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_peri_3v3>;
|
||||
regulator-name = "VPERI_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio5 2 GPIO_ACTIVE_LOW>;
|
||||
/*
|
||||
* If you want to want to make this dynamic please
|
||||
* check schematics and test all affected peripherals:
|
||||
*
|
||||
* - sensors
|
||||
* - ethernet phy
|
||||
* - can
|
||||
* - bluetooth
|
||||
* - wm8960 audio codec
|
||||
* - ov5640 camera
|
||||
*/
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reg_can_3v3: regulator-can-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "can-3v3";
|
||||
|
@ -42,6 +60,28 @@
|
|||
gpios = <&gpio_spi 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
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",
|
||||
"Ext Spk", "SPK_LP",
|
||||
"Ext Spk", "SPK_LN",
|
||||
"Ext Spk", "SPK_RP",
|
||||
"Ext Spk", "SPK_RN",
|
||||
"LINPUT2", "Mic Jack",
|
||||
"LINPUT3", "Mic Jack",
|
||||
"RINPUT1", "AMIC",
|
||||
"RINPUT2", "AMIC",
|
||||
"Mic Jack", "MICB",
|
||||
"AMIC", "MICB";
|
||||
};
|
||||
|
||||
spi4 {
|
||||
compatible = "spi-gpio";
|
||||
pinctrl-names = "default";
|
||||
|
@ -49,7 +89,7 @@
|
|||
status = "okay";
|
||||
gpio-sck = <&gpio5 11 0>;
|
||||
gpio-mosi = <&gpio5 10 0>;
|
||||
cs-gpios = <&gpio5 7 0>;
|
||||
cs-gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
|
||||
num-chipselects = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@ -61,6 +101,7 @@
|
|||
reg = <0>;
|
||||
registers-number = <1>;
|
||||
spi-max-frequency = <100000>;
|
||||
enable-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -82,7 +123,7 @@
|
|||
};
|
||||
|
||||
&i2c2 {
|
||||
clock_frequency = <100000>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
|
@ -92,6 +133,45 @@
|
|||
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 {
|
||||
compatible = "ovti,ov5640";
|
||||
reg = <0x3c>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_camera_clock>;
|
||||
clocks = <&clks IMX6UL_CLK_CSI>;
|
||||
clock-names = "xclk";
|
||||
powerdown-gpios = <&gpio_spi 6 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpio_spi 5 GPIO_ACTIVE_LOW>;
|
||||
|
||||
port {
|
||||
ov5640_to_parallel: endpoint {
|
||||
remote-endpoint = <¶llel_from_ov5640>;
|
||||
bus-width = <8>;
|
||||
data-shift = <2>; /* lines 9:2 are used */
|
||||
hsync-active = <0>;
|
||||
vsync-active = <0>;
|
||||
pclk-sample = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&csi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_csi1>;
|
||||
status = "okay";
|
||||
|
||||
port {
|
||||
parallel_from_ov5640: endpoint {
|
||||
remote-endpoint = <&ov5640_to_parallel>;
|
||||
bus-type = <5>; /* Parallel bus */
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -100,6 +180,7 @@
|
|||
pinctrl-0 = <&pinctrl_enet1>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy0>;
|
||||
phy-supply = <®_peri_3v3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -108,6 +189,7 @@
|
|||
pinctrl-0 = <&pinctrl_enet2>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy1>;
|
||||
phy-supply = <®_peri_3v3>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
|
@ -115,13 +197,16 @@
|
|||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@2 {
|
||||
compatible = "ethernet-phy-id0022.1560";
|
||||
reg = <2>;
|
||||
micrel,led-mode = <1>;
|
||||
clocks = <&clks IMX6UL_CLK_ENET_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
|
||||
};
|
||||
|
||||
ethphy1: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-id0022.1560";
|
||||
reg = <1>;
|
||||
micrel,led-mode = <1>;
|
||||
clocks = <&clks IMX6UL_CLK_ENET2_REF>;
|
||||
|
@ -144,18 +229,33 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio_spi {
|
||||
eth0-phy-hog {
|
||||
gpio-hog;
|
||||
gpios = <1 GPIO_ACTIVE_HIGH>;
|
||||
output-high;
|
||||
line-name = "eth0-phy";
|
||||
};
|
||||
|
||||
eth1-phy-hog {
|
||||
gpio-hog;
|
||||
gpios = <2 GPIO_ACTIVE_HIGH>;
|
||||
output-high;
|
||||
line-name = "eth1-phy";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
pinctrl-1 = <&pinctrl_i2c1_gpio>;
|
||||
scl-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpio1 29 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
||||
mag3110@e {
|
||||
magnetometer@e {
|
||||
compatible = "fsl,mag3110";
|
||||
reg = <0x0e>;
|
||||
vdd-supply = <®_peri_3v3>;
|
||||
vddio-supply = <®_peri_3v3>;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -175,6 +275,7 @@
|
|||
};
|
||||
|
||||
&pwm1 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1>;
|
||||
status = "okay";
|
||||
|
@ -185,13 +286,13 @@
|
|||
pinctrl-0 = <&pinctrl_qspi>;
|
||||
status = "okay";
|
||||
|
||||
flash0: n25q256a@0 {
|
||||
flash0: flash@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "micron,n25q256a";
|
||||
compatible = "micron,n25q256a", "jedec,spi-nor";
|
||||
spi-max-frequency = <29000000>;
|
||||
spi-rx-bus-width = <4>;
|
||||
spi-tx-bus-width = <4>;
|
||||
spi-tx-bus-width = <1>;
|
||||
reg = <0>;
|
||||
};
|
||||
};
|
||||
|
@ -211,6 +312,10 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&snvs_pwrkey {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tsc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_tsc>;
|
||||
|
@ -235,6 +340,8 @@
|
|||
|
||||
&usbotg1 {
|
||||
dr_mode = "otg";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb_otg1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -283,9 +390,14 @@
|
|||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
|
||||
pinctrl_csi1: csi1grp {
|
||||
pinctrl_camera_clock: cameraclockgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_CSI_MCLK__CSI_MCLK 0x1b088
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_csi1: csi1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_CSI_PIXCLK__CSI_PIXCLK 0x1b088
|
||||
MX6UL_PAD_CSI_VSYNC__CSI_VSYNC 0x1b088
|
||||
MX6UL_PAD_CSI_HSYNC__CSI_HSYNC 0x1b088
|
||||
|
@ -349,13 +461,6 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_gpio: i2c1grp_gpio {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART4_TX_DATA__GPIO1_IO28 0x1b8b0
|
||||
MX6UL_PAD_UART4_RX_DATA__GPIO1_IO29 0x1b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART5_TX_DATA__I2C2_SCL 0x4001b8b0
|
||||
|
@ -425,6 +530,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_peri_3v3: peri3v3grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm1: pwm1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO08__PWM1_OUT 0x110b0
|
||||
|
@ -476,6 +587,12 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb_otg1: usbotg1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO00__ANATOP_OTG1_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059
|
||||
|
|
|
@ -1,43 +1,7 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 OR X11
|
||||
/*
|
||||
* Copyright (C) 2016 Amarula Solutions B.V.
|
||||
* Copyright (C) 2016 Engicam S.r.l.
|
||||
*
|
||||
* This file is dual-licensed: you can use it either under the terms
|
||||
* of the GPL or the X11 license, at your option. Note that this dual
|
||||
* licensing only applies to this file, and not this project as a
|
||||
* whole.
|
||||
*
|
||||
* a) This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* Or, alternatively
|
||||
*
|
||||
* b) Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
@ -47,22 +11,129 @@
|
|||
#include "imx6ul.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Engicam GEAM6UL";
|
||||
model = "Engicam GEAM6UL Starter Kit";
|
||||
compatible = "engicam,imx6ul-geam", "fsl,imx6ul";
|
||||
|
||||
memory {
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0x08000000>;
|
||||
};
|
||||
|
||||
backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm8 0 100000>;
|
||||
brightness-levels = < 0 1 2 3 4 5 6 7 8 9
|
||||
10 11 12 13 14 15 16 17 18 19
|
||||
20 21 22 23 24 25 26 27 28 29
|
||||
30 31 32 33 34 35 36 37 38 39
|
||||
40 41 42 43 44 45 46 47 48 49
|
||||
50 51 52 53 54 55 56 57 58 59
|
||||
60 61 62 63 64 65 66 67 68 69
|
||||
70 71 72 73 74 75 76 77 78 79
|
||||
80 81 82 83 84 85 86 87 88 89
|
||||
90 91 92 93 94 95 96 97 98 99
|
||||
100>;
|
||||
default-brightness-level = <100>;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
reg_1p8v: regulator-1p8v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "1P8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
reg_3p3v: regulator-3p3v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3P3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "imx6ul-geam-sgtl5000";
|
||||
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",
|
||||
"Headphone", "Headphone Jack";
|
||||
simple-audio-card,routing =
|
||||
"MIC_IN", "Mic Jack",
|
||||
"Mic Jack", "Mic Bias",
|
||||
"Headphone Jack", "HP_OUT";
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&sai2>;
|
||||
};
|
||||
|
||||
dailink_master: simple-audio-card,codec {
|
||||
sound-dai = <&sgtl5000>;
|
||||
clocks = <&clks IMX6UL_CLK_SAI2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan1>;
|
||||
xceiver-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan2>;
|
||||
xceiver-supply = <®_3p3v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet1>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet2>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <ðphy1>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@0 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ethphy1: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpmi_nand>;
|
||||
nand-on-flash-bbt;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -71,21 +142,105 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
status = "okay";
|
||||
|
||||
sgtl5000: codec@a {
|
||||
compatible = "fsl,sgtl5000";
|
||||
reg = <0x0a>;
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clks IMX6UL_CLK_OSC>;
|
||||
clock-names = "mclk";
|
||||
VDDA-supply = <®_3p3v>;
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
VDDD-supply = <®_1p8v>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock_frequency = <100000>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcdif_dat
|
||||
&pinctrl_lcdif_ctrl>;
|
||||
display = <&display0>;
|
||||
status = "okay";
|
||||
|
||||
display0: display0 {
|
||||
bits-per-pixel = <16>;
|
||||
bus-width = <18>;
|
||||
|
||||
display-timings {
|
||||
native-mode = <&timing0>;
|
||||
timing0: timing0 {
|
||||
clock-frequency = <28000000>;
|
||||
hactive = <800>;
|
||||
vactive = <480>;
|
||||
hfront-porch = <30>;
|
||||
hback-porch = <30>;
|
||||
hsync-len = <64>;
|
||||
vback-porch = <5>;
|
||||
vfront-porch = <5>;
|
||||
vsync-len = <20>;
|
||||
hsync-active = <0>;
|
||||
vsync-active = <0>;
|
||||
de-active = <1>;
|
||||
pixelclk-active = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm8 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm8>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tsc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_tsc>;
|
||||
xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&sai2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sai2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tsc {
|
||||
measure-delay-time = <0x1ffff>;
|
||||
pre-charge-time = <0x1fff>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
dr_mode = "peripheral";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
|
@ -100,8 +255,6 @@
|
|||
&iomuxc {
|
||||
pinctrl_enet1: enet1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO07__ENET2_MDC 0x1b0b0
|
||||
MX6UL_PAD_GPIO1_IO06__ENET2_MDIO 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0
|
||||
|
@ -112,6 +265,55 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet2: enet2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO07__ENET2_MDC 0x1b0b0
|
||||
MX6UL_PAD_GPIO1_IO06__ENET2_MDIO 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_EN__ENET2_RX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_ER__GPIO2_IO15 0x1b0b0 /* ENET_nRST */
|
||||
MX6UL_PAD_ENET2_RX_DATA0__ENET2_RDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_DATA1__ENET2_RDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_EN__ENET2_TX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01 0x1b0b0
|
||||
MX6UL_PAD_GPIO1_IO05__ENET2_REF_CLK2 0x4001b031
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan1: flexcan1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX 0x1b020
|
||||
MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX 0x1b020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan2: flexcan2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART2_RTS_B__FLEXCAN2_RX 0x1b020
|
||||
MX6UL_PAD_UART2_CTS_B__FLEXCAN2_TX 0x1b020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpmi_nand: gpminandgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_CLE__RAWNAND_CLE 0xb0b1
|
||||
MX6UL_PAD_NAND_ALE__RAWNAND_ALE 0xb0b1
|
||||
MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B 0xb0b1
|
||||
MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0xb000
|
||||
MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B 0xb0b1
|
||||
MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B 0xb0b1
|
||||
MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06 0xb0b1
|
||||
MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07 0xb0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART4_TX_DATA__I2C1_SCL 0x4001b8b0
|
||||
|
@ -126,6 +328,63 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_lcdif_ctrl: lcdifctrlgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x79
|
||||
MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x79
|
||||
MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x79
|
||||
MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x79
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lcdif_dat: lcdifdatgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x79
|
||||
MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x79
|
||||
MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x79
|
||||
MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x79
|
||||
MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x79
|
||||
MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x79
|
||||
MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x79
|
||||
MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x79
|
||||
MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x79
|
||||
MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x79
|
||||
MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x79
|
||||
MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x79
|
||||
MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x79
|
||||
MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x79
|
||||
MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x79
|
||||
MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x79
|
||||
MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x79
|
||||
MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x79
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm8: pwm8grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_ENET1_RX_ER__PWM8_OUT 0x110b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_tsc: tscgrp {
|
||||
fsl,pin = <
|
||||
MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0xb0
|
||||
MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0xb0
|
||||
MX6UL_PAD_GPIO1_IO03__GPIO1_IO03 0xb0
|
||||
MX6UL_PAD_GPIO1_IO04__GPIO1_IO04 0xb0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sai2: sai2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA 0x130b0
|
||||
MX6UL_PAD_JTAG_TMS__CCM_CLKO1 0x4001b031
|
||||
MX6UL_PAD_JTAG_TDI__SAI2_TX_BCLK 0x17088
|
||||
MX6UL_PAD_JTAG_TDO__SAI2_TX_SYNC 0x17088
|
||||
MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA 0x120b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1
|
||||
|
@ -133,6 +392,15 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x1b0b1
|
||||
MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1
|
||||
MX6UL_PAD_UART3_RX_DATA__UART2_DCE_RTS 0x1b0b1
|
||||
MX6UL_PAD_UART3_TX_DATA__UART2_DCE_CTS 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059
|
||||
|
@ -165,4 +433,15 @@
|
|||
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_CSI_VSYNC__USDHC2_CLK 0x17070
|
||||
MX6UL_PAD_CSI_HSYNC__USDHC2_CMD 0x10070
|
||||
MX6UL_PAD_CSI_DATA00__USDHC2_DATA0 0x17070
|
||||
MX6UL_PAD_CSI_DATA01__USDHC2_DATA1 0x17070
|
||||
MX6UL_PAD_CSI_DATA02__USDHC2_DATA2 0x17070
|
||||
MX6UL_PAD_CSI_DATA03__USDHC2_DATA3 0x17070
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
|
148
arch/arm/dts/imx6ul-imx6ull-opos6ul.dtsi
Normal file
148
arch/arm/dts/imx6ul-imx6ull-opos6ul.dtsi
Normal file
|
@ -0,0 +1,148 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 OR MIT
|
||||
//
|
||||
// Copyright 2019 Armadeus Systems <support@armadeus.com>
|
||||
|
||||
/ {
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0>; /* will be filled by U-Boot */
|
||||
};
|
||||
|
||||
reg_3v3: regulator-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
usdhc3_pwrseq: usdhc3-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet1>;
|
||||
phy-mode = "rmii";
|
||||
phy-reset-duration = <1>;
|
||||
phy-reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
|
||||
phy-handle = <ðphy1>;
|
||||
phy-supply = <®_3v3>;
|
||||
status = "okay";
|
||||
|
||||
mdio: mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy1: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* Bluetooth */
|
||||
&uart8 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart8>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
bus-width = <8>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* WiFi */
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&usdhc3_pwrseq>;
|
||||
status = "okay";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
reg = <1>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupt-names = "host-wake";
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_enet1: enet1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0
|
||||
MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x130b0
|
||||
MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x130b0
|
||||
MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x130b0
|
||||
MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x130b0
|
||||
MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0
|
||||
/* INT# */
|
||||
MX6UL_PAD_NAND_DQS__GPIO4_IO16 0x1b0b0
|
||||
/* RST# */
|
||||
MX6UL_PAD_NAND_DATA00__GPIO4_IO02 0x130b0
|
||||
MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart8: uart8grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_ENET2_TX_EN__UART8_DCE_RX 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_DATA1__UART8_DCE_TX 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_ER__UART8_DCE_RTS 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_CLK__UART8_DCE_CTS 0x1b0b0
|
||||
/* BT_REG_ON */
|
||||
MX6UL_PAD_ENET2_RX_EN__GPIO2_IO10 0x130b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059
|
||||
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10059
|
||||
MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059
|
||||
MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059
|
||||
MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059
|
||||
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059
|
||||
MX6UL_PAD_NAND_READY_B__USDHC1_DATA4 0x17059
|
||||
MX6UL_PAD_NAND_CE0_B__USDHC1_DATA5 0x17059
|
||||
MX6UL_PAD_NAND_CE1_B__USDHC1_DATA6 0x17059
|
||||
MX6UL_PAD_NAND_CLE__USDHC1_DATA7 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_LCD_DATA18__USDHC2_CMD 0x1b0b0
|
||||
MX6UL_PAD_LCD_DATA19__USDHC2_CLK 0x100b0
|
||||
MX6UL_PAD_LCD_DATA20__USDHC2_DATA0 0x1b0b0
|
||||
MX6UL_PAD_LCD_DATA21__USDHC2_DATA1 0x1b0b0
|
||||
MX6UL_PAD_LCD_DATA22__USDHC2_DATA2 0x1b0b0
|
||||
MX6UL_PAD_LCD_DATA23__USDHC2_DATA3 0x1b0b0
|
||||
/* WL_REG_ON */
|
||||
MX6UL_PAD_ENET2_RX_DATA1__GPIO2_IO09 0x130b0
|
||||
/* WL_IRQ */
|
||||
MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
327
arch/arm/dts/imx6ul-imx6ull-opos6uldev.dtsi
Normal file
327
arch/arm/dts/imx6ul-imx6ull-opos6uldev.dtsi
Normal file
|
@ -0,0 +1,327 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 OR MIT
|
||||
//
|
||||
// Copyright 2019 Armadeus Systems <support@armadeus.com>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm3 0 191000>;
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <7>;
|
||||
power-supply = <®_5v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpio_keys>;
|
||||
|
||||
user-button {
|
||||
label = "User button";
|
||||
gpios = <&gpio2 11 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <BTN_MISC>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
user-led {
|
||||
label = "User";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_led>;
|
||||
gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
};
|
||||
|
||||
onewire {
|
||||
compatible = "w1-gpio";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_w1>;
|
||||
gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
panel: panel {
|
||||
compatible = "armadeus,st0700-adapt";
|
||||
power-supply = <®_3v3>;
|
||||
backlight = <&backlight>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&lcdif_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
reg_5v: regulator-5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
reg_usbotg1_vbus: regulator-usbotg1vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usbotg1vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg1_vbus>;
|
||||
gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_usbotg2_vbus: regulator-usbotg2vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usbotg2vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg2_vbus>;
|
||||
gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
&adc1 {
|
||||
vref-supply = <®_3v3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan1>;
|
||||
xceiver-supply = <®_5v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&can2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flexcan2>;
|
||||
xceiver-supply = <®_5v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ecspi4 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ecspi4>;
|
||||
cs-gpios = <&gpio4 9 GPIO_ACTIVE_LOW>, <&gpio4 3 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcdif>;
|
||||
status = "okay";
|
||||
|
||||
port {
|
||||
lcdif_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm3 {
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&snvs_pwrkey {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&tsc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_tsc>;
|
||||
xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>;
|
||||
measure-delay-time = <0xffff>;
|
||||
pre-charge-time = <0xffff>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbotg1_id>;
|
||||
vbus-supply = <®_usbotg1_vbus>;
|
||||
dr_mode = "otg";
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
vbus-supply = <®_usbotg2_vbus>;
|
||||
dr_mode = "host";
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpios>;
|
||||
|
||||
pinctrl_ecspi4: ecspi4grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_DATA04__ECSPI4_SCLK 0x1b0b0
|
||||
MX6UL_PAD_NAND_DATA05__ECSPI4_MOSI 0x1b0b0
|
||||
MX6UL_PAD_NAND_DATA06__ECSPI4_MISO 0x1b0b0
|
||||
MX6UL_PAD_NAND_DATA01__GPIO4_IO03 0x1b0b0
|
||||
MX6UL_PAD_NAND_DATA07__GPIO4_IO09 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan1: flexcan1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX 0x0b0b0
|
||||
MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexcan2: flexcan2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART2_CTS_B__FLEXCAN2_TX 0x0b0b0
|
||||
MX6UL_PAD_UART2_RTS_B__FLEXCAN2_RX 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpios: gpiosgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO09__GPIO1_IO09 0x0b0b0
|
||||
MX6UL_PAD_UART3_RX_DATA__GPIO1_IO25 0x0b0b0
|
||||
MX6UL_PAD_UART3_TX_DATA__GPIO1_IO24 0x0b0b0
|
||||
MX6UL_PAD_NAND_RE_B__GPIO4_IO00 0x0b0b0
|
||||
MX6UL_PAD_GPIO1_IO08__GPIO1_IO08 0x0b0b0
|
||||
MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x0b0b0
|
||||
MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x0b0b0
|
||||
MX6UL_PAD_NAND_WE_B__GPIO4_IO01 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpio_keys: gpiokeysgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_ENET2_TX_DATA0__GPIO2_IO11 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART4_RX_DATA__I2C1_SDA 0x4001b8b0
|
||||
MX6UL_PAD_UART4_TX_DATA__I2C1_SCL 0x4001b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART5_RX_DATA__I2C2_SDA 0x4001b8b0
|
||||
MX6UL_PAD_UART5_TX_DATA__I2C2_SCL 0x4001b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lcdif: lcdifgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x100b1
|
||||
MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x100b1
|
||||
MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x100b1
|
||||
MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x100b1
|
||||
MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x100b1
|
||||
MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x100b1
|
||||
MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x100b1
|
||||
MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x100b1
|
||||
MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x100b1
|
||||
MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x100b1
|
||||
MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x100b1
|
||||
MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x100b1
|
||||
MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x100b1
|
||||
MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x100b1
|
||||
MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x100b1
|
||||
MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x100b1
|
||||
MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x100b1
|
||||
MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x100b1
|
||||
MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x100b1
|
||||
MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x100b1
|
||||
MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x100b1
|
||||
MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x100b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_led: ledgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_LCD_RESET__GPIO3_IO04 0x0b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_pwm3: pwm3grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_ALE__PWM3_OUT 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_tsc: tscgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0xb0
|
||||
MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0xb0
|
||||
MX6UL_PAD_GPIO1_IO03__GPIO1_IO03 0xb0
|
||||
MX6UL_PAD_GPIO1_IO04__GPIO1_IO04 0xb0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1
|
||||
MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x1b0b1
|
||||
MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg1_id: usbotg1idgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO00__ANATOP_OTG1_ID 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usbotg1_vbus: usbotg1vbusgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO05__GPIO1_IO05 0x1b0b0
|
||||
>;
|
||||
};
|
||||
};
|
|
@ -1,56 +1,18 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 OR X11
|
||||
/*
|
||||
* Copyright (C) 2016 Amarula Solutions B.V.
|
||||
* Copyright (C) 2016 Engicam S.r.l.
|
||||
*
|
||||
* This file is dual-licensed: you can use it either under the terms
|
||||
* of the GPL or the X11 license, at your option. Note that this dual
|
||||
* licensing only applies to this file, and not this project as a
|
||||
* whole.
|
||||
*
|
||||
* a) This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* Or, alternatively
|
||||
*
|
||||
* b) Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6ul.dtsi"
|
||||
#include "imx6ul-isiot.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Engicam Is.IoT MX6UL eMMC Starterkit";
|
||||
model = "Engicam Is.IoT MX6UL eMMC Starter kit";
|
||||
compatible = "engicam,imx6ul-isiot", "fsl,imx6ul";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
u-boot,dm-spl;
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -1,51 +1,18 @@
|
|||
// SPDX-License-Identifier: GPL-2.0 OR X11
|
||||
/*
|
||||
* Copyright (C) 2016 Amarula Solutions B.V.
|
||||
* Copyright (C) 2016 Engicam S.r.l.
|
||||
*
|
||||
* This file is dual-licensed: you can use it either under the terms
|
||||
* of the GPL or the X11 license, at your option. Note that this dual
|
||||
* licensing only applies to this file, and not this project as a
|
||||
* whole.
|
||||
*
|
||||
* a) This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* Or, alternatively
|
||||
*
|
||||
* b) Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
* sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6ul.dtsi"
|
||||
#include "imx6ul-isiot.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Engicam Is.IoT MX6UL NAND Starterkit";
|
||||
model = "Engicam Is.IoT MX6UL NAND Starter kit";
|
||||
compatible = "engicam,imx6ul-isiot", "fsl,imx6ul";
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue