Merge tag 'u-boot-imx-20210616' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
u-boot-imx-20210616 ------------------- - imxrt : fixes, USB, imxrt1020-evk - imx8m: fix for verdin-imx8mm Add conga-QMX8 board - imx6 : documentation for pico-imx6: Add SeeedStudio NPI-IMX6ULL Support ventana: DM PCI - imx7d: added SMEGW01 board CI : https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/7765
This commit is contained in:
@@ -2008,6 +2008,7 @@ source "board/hisilicon/poplar/Kconfig"
|
||||
source "board/isee/igep003x/Kconfig"
|
||||
source "board/kontron/sl28/Kconfig"
|
||||
source "board/myir/mys_6ulx/Kconfig"
|
||||
source "board/seeed/npi_imx6ull/Kconfig"
|
||||
source "board/spear/spear300/Kconfig"
|
||||
source "board/spear/spear310/Kconfig"
|
||||
source "board/spear/spear320/Kconfig"
|
||||
|
||||
@@ -810,6 +810,7 @@ dtb-$(CONFIG_MX6ULL) += \
|
||||
imx6ull-14x14-evk.dtb \
|
||||
imx6ull-colibri.dtb \
|
||||
imx6ull-myir-mys-6ulx-eval.dtb \
|
||||
imx6ull-seeed-npi-imx6ull-dev-board.dtb \
|
||||
imx6ull-phytec-segin-ff-rdk-emmc.dtb \
|
||||
imx6ull-dart-6ul.dtb \
|
||||
imx6ull-somlabs-visionsom.dtb \
|
||||
@@ -819,6 +820,12 @@ dtb-$(CONFIG_ARCH_MX6) += \
|
||||
imx6-apalis.dtb \
|
||||
imx6-colibri.dtb
|
||||
|
||||
dtb-$(CONFIG_O4_IMX_NANO) += \
|
||||
o4-imx-nano.dtb
|
||||
|
||||
dtb-$(CONFIG_EV_IMX280_NANO_X_MB) += \
|
||||
ev-imx280-nano-x-mb.dtb
|
||||
|
||||
dtb-$(CONFIG_MX7) += imx7d-sdb.dtb \
|
||||
imx7d-sdb-qspi.dtb \
|
||||
imx7-cm.dtb \
|
||||
@@ -827,8 +834,8 @@ dtb-$(CONFIG_MX7) += imx7d-sdb.dtb \
|
||||
imx7s-warp.dtb \
|
||||
imx7d-meerkat96.dtb \
|
||||
imx7d-pico-pi.dtb \
|
||||
imx7d-pico-hobbit.dtb
|
||||
|
||||
imx7d-pico-hobbit.dtb \
|
||||
imx7d-smegw01.dtb
|
||||
|
||||
dtb-$(CONFIG_ARCH_MX7ULP) += imx7ulp-com.dtb \
|
||||
imx7ulp-evk.dtb
|
||||
@@ -836,6 +843,7 @@ dtb-$(CONFIG_ARCH_MX7ULP) += imx7ulp-com.dtb \
|
||||
dtb-$(CONFIG_ARCH_IMX8) += \
|
||||
fsl-imx8qm-apalis.dtb \
|
||||
fsl-imx8qm-mek.dtb \
|
||||
imx8qm-cgtqmx8.dtb \
|
||||
imx8qm-rom7720-a1.dtb \
|
||||
fsl-imx8qxp-ai_ml.dtb \
|
||||
fsl-imx8qxp-colibri.dtb \
|
||||
|
||||
109
arch/arm/dts/ev-imx280-nano-x-mb.dts
Normal file
109
arch/arm/dts/ev-imx280-nano-x-mb.dts
Normal file
@@ -0,0 +1,109 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
// Copyright (C) 2021 Oleh Kravchenko <oleg@kaa.org.ua>
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "o4-imx6ull-nano.dtsi"
|
||||
|
||||
/ {
|
||||
model = "EV-iMX280-NANO-X-MB";
|
||||
compatible = "evodbg,ev-imx280-nano-x-mb",
|
||||
"out4,o4-imx6ull-nano",
|
||||
"fsl,imx6ull";
|
||||
|
||||
aliases {
|
||||
mmc1 = &usdhc1;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1
|
||||
MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10069
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059
|
||||
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_UART1_RTS_B__USDHC1_CD_B 0x03029
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mdio: mdiogrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0
|
||||
MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0
|
||||
MX6UL_PAD_SNVS_TAMPER1__GPIO5_IO01 0xb0b0 /* RST */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb_otg1_id: usbotg1idgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO00__ANATOP_OTG1_ID 0x17059
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
phy-handle = <&phy0>;
|
||||
phy-mode = "rmii";
|
||||
phy-reset-duration = <250>;
|
||||
phy-reset-post-delay = <100>;
|
||||
phy-reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-0 = <&pinctrl_fec1 &pinctrl_mdio>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy0: ethernet-phy@0 {
|
||||
clocks = <&clks IMX6UL_CLK_ENET_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
||||
pinctrl-0 = <&pinctrl_phy0_irq>;
|
||||
pinctrl-names = "default";
|
||||
reg = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
dr_mode = "otg";
|
||||
pinctrl-0 = <&pinctrl_usb_otg1_id>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
@@ -129,6 +129,8 @@
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@@ -195,6 +195,8 @@
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@@ -188,6 +188,8 @@
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -597,6 +599,7 @@
|
||||
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
|
||||
>;
|
||||
};
|
||||
|
||||
|
||||
@@ -225,6 +225,8 @@
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -675,6 +677,7 @@
|
||||
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
|
||||
>;
|
||||
};
|
||||
|
||||
|
||||
@@ -279,6 +279,8 @@
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@@ -223,6 +223,9 @@
|
||||
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 = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@@ -200,6 +200,9 @@
|
||||
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 = <100>;
|
||||
status = "okay";
|
||||
|
||||
fixed-link {
|
||||
|
||||
@@ -131,6 +131,8 @@
|
||||
pinctrl-0 = <&pinctrl_enet>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
|
||||
phy-reset-duration = <10>;
|
||||
phy-reset-post-delay = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@@ -146,6 +146,9 @@
|
||||
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 = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@@ -141,6 +141,9 @@
|
||||
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 = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -426,6 +429,7 @@
|
||||
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
|
||||
>;
|
||||
};
|
||||
|
||||
|
||||
@@ -121,6 +121,9 @@
|
||||
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 = <100>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
19
arch/arm/dts/imx6ull-seeed-npi-imx6ull-dev-board.dts
Normal file
19
arch/arm/dts/imx6ull-seeed-npi-imx6ull-dev-board.dts
Normal file
@@ -0,0 +1,19 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (c) 2021 Linumiz
|
||||
* Author: Navin Sankar Velliangiri <navin@linumiz.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx6ull.dtsi"
|
||||
#include "imx6ull-seeed-npi-imx6ull.dtsi"
|
||||
#include "imx6ull-seeed-npi-imx6ull-u-boot.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Seeed NPi iMX6ULL Dev Board with NAND";
|
||||
compatible = "seeed,imx6ull-seeed-npi-imx6ull", "fsl,imx6ull";
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
status = "okay";
|
||||
};
|
||||
24
arch/arm/dts/imx6ull-seeed-npi-imx6ull-u-boot.dtsi
Normal file
24
arch/arm/dts/imx6ull-seeed-npi-imx6ull-u-boot.dtsi
Normal file
@@ -0,0 +1,24 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (c) 2021 Linumiz
|
||||
* Author: Navin Sankar Velliangiri <navin@linumiz.com>
|
||||
*/
|
||||
|
||||
&pinctrl_uart1 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
u-boot,dm-spl;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
u-boot,dm-spl;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
u-boot,dm-spl;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
271
arch/arm/dts/imx6ull-seeed-npi-imx6ull.dtsi
Normal file
271
arch/arm/dts/imx6ull-seeed-npi-imx6ull.dtsi
Normal file
@@ -0,0 +1,271 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (c) 2021 Linumiz
|
||||
* Author: Navin Sankar Velliangiri <navin@linumiz.com>
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
|
||||
/ {
|
||||
model = "Seeed NPi-iMX6ULL Dev Board";
|
||||
compatible = "fsl,imx6ull";
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
user-led {
|
||||
label = "User";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpios>;
|
||||
gpios = <&gpio5 3 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpmi {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpmi_nand>;
|
||||
nand-on-flash-bbt;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-name = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
|
||||
cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
|
||||
no-1-8-v;
|
||||
keep-power-in-suspend;
|
||||
wakeup-source;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
keep-power-in-suspend;
|
||||
};
|
||||
|
||||
&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@2 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <2>;
|
||||
micrel,led-mode = <1>;
|
||||
clocks = <&clks IMX6UL_CLK_ENET_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
};
|
||||
|
||||
ethphy1: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
micrel,led-mode = <1>;
|
||||
clocks = <&clks IMX6UL_CLK_ENET2_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb_otg1_id>;
|
||||
dr_mode = "otg";
|
||||
srp-disable;
|
||||
hnp-disable;
|
||||
adp-disable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_gpios>;
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pin = <
|
||||
MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1
|
||||
MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usb_otg1_id: usbotg1idgrp {
|
||||
fsl,pin = <
|
||||
MX6UL_PAD_GPIO1_IO00__ANATOP_OTG1_ID 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpmi_nand: gpminandgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_DQS__RAWNAND_DQS 0x0b0b1
|
||||
MX6UL_PAD_NAND_CLE__RAWNAND_CLE 0x0b0b1
|
||||
MX6UL_PAD_NAND_ALE__RAWNAND_ALE 0x0b0b1
|
||||
MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B 0x0b0b1
|
||||
MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0x0b000
|
||||
MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B 0x0b0b1
|
||||
MX6UL_PAD_NAND_CE1_B__RAWNAND_CE1_B 0x0b0b1
|
||||
MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B 0x0b0b1
|
||||
MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06 0x0b0b1
|
||||
MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07 0x0b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
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_UART1_RTS_B__GPIO1_IO19 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170b9
|
||||
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100b9
|
||||
MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170b9
|
||||
MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170b9
|
||||
MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170b9
|
||||
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170b9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170f9
|
||||
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100f9
|
||||
MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170f9
|
||||
MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170f9
|
||||
MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170f9
|
||||
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069
|
||||
MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059
|
||||
MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059
|
||||
MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059
|
||||
MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059
|
||||
MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059
|
||||
MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059
|
||||
MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059
|
||||
MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059
|
||||
MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_100mhz: usdhc2grp100mhz {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x100b9
|
||||
MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x170b9
|
||||
MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x170b9
|
||||
MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x170b9
|
||||
MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x170b9
|
||||
MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x170b9
|
||||
MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x170b9
|
||||
MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x170b9
|
||||
MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x170b9
|
||||
MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x170b9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_200mhz: usdhc2grp200mhz {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x100f9
|
||||
MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x170f9
|
||||
MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x170f9
|
||||
MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x170f9
|
||||
MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x170f9
|
||||
MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x170f9
|
||||
MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x170f9
|
||||
MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x170f9
|
||||
MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x170f9
|
||||
MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x170f9
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_enet1: enet1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031
|
||||
>;
|
||||
};
|
||||
|
||||
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__ENET2_RX_ER 0x1b0b0
|
||||
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_ENET2_TX_CLK__ENET2_REF_CLK2 0x4001b031
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_gpios: gpiosgrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x0b0b0
|
||||
>;
|
||||
};
|
||||
};
|
||||
190
arch/arm/dts/imx7d-smegw01.dts
Normal file
190
arch/arm/dts/imx7d-smegw01.dts
Normal file
@@ -0,0 +1,190 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
//
|
||||
// Copyright (C) 2020 PHYTEC Messtechnik GmbH
|
||||
// Author: Jens Lang <J.Lang@phytec.de>
|
||||
// Copyright (C) 2021 Fabio Estevam <festevam@denx.de>
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7d.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Storopack SMEGW01 board";
|
||||
compatible = "storopack,imx7d-smegw01", "fsl,imx7d";
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc1;
|
||||
mmc1 = &usdhc3;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0x20000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_enet1>;
|
||||
assigned-clocks = <&clks IMX7D_ENET1_TIME_ROOT_SRC>,
|
||||
<&clks IMX7D_ENET1_TIME_ROOT_CLK>;
|
||||
assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>;
|
||||
assigned-clock-rates = <0>, <100000000>;
|
||||
phy-mode = "rgmii-id";
|
||||
phy-handle = <ðphy0>;
|
||||
fsl,magic-packet;
|
||||
status = "okay";
|
||||
|
||||
mdio: mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
|
||||
no-1-8-v;
|
||||
enable-sdio-wakeup;
|
||||
keep-power-in-suspend;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>;
|
||||
pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
|
||||
assigned-clocks = <&clks IMX7D_USDHC3_ROOT_CLK>;
|
||||
assigned-clock-rates = <400000000>;
|
||||
max-frequency = <200000000>;
|
||||
bus-width = <8>;
|
||||
fsl,tuning-step = <1>;
|
||||
non-removable;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
cap-mmc-hw-reset;
|
||||
mmc-hs200-1_8v;
|
||||
mmc-ddr-1_8v;
|
||||
sd-uhs-ddr50;
|
||||
sd-uhs-sdr104;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wdog1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_wdog>;
|
||||
fsl,ext-reset-output;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_enet1: enet1grp {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_ENET1_RGMII_RX_CTL__ENET1_RGMII_RX_CTL 0x5
|
||||
MX7D_PAD_ENET1_RGMII_RD0__ENET1_RGMII_RD0 0x5
|
||||
MX7D_PAD_ENET1_RGMII_RD1__ENET1_RGMII_RD1 0x5
|
||||
MX7D_PAD_ENET1_RGMII_RD2__ENET1_RGMII_RD2 0x5
|
||||
MX7D_PAD_ENET1_RGMII_RD3__ENET1_RGMII_RD3 0x5
|
||||
MX7D_PAD_ENET1_RGMII_RXC__ENET1_RGMII_RXC 0x5
|
||||
MX7D_PAD_ENET1_RGMII_TX_CTL__ENET1_RGMII_TX_CTL 0x5
|
||||
MX7D_PAD_ENET1_RGMII_TD0__ENET1_RGMII_TD0 0x5
|
||||
MX7D_PAD_ENET1_RGMII_TD1__ENET1_RGMII_TD1 0x5
|
||||
MX7D_PAD_ENET1_RGMII_TD2__ENET1_RGMII_TD2 0x5
|
||||
MX7D_PAD_ENET1_RGMII_TD3__ENET1_RGMII_TD3 0x5
|
||||
MX7D_PAD_ENET1_RGMII_TXC__ENET1_RGMII_TXC 0x5
|
||||
MX7D_PAD_GPIO1_IO10__ENET1_MDIO 0x7
|
||||
MX7D_PAD_GPIO1_IO11__ENET1_MDC 0x7
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX 0x74
|
||||
MX7D_PAD_UART1_RX_DATA__UART1_DCE_RX 0x7c
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1 {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_SD1_CD_B__GPIO5_IO0 0x59
|
||||
MX7D_PAD_SD1_CMD__SD1_CMD 0x59
|
||||
MX7D_PAD_SD1_CLK__SD1_CLK 0x19
|
||||
MX7D_PAD_SD1_DATA0__SD1_DATA0 0x59
|
||||
MX7D_PAD_SD1_DATA1__SD1_DATA1 0x59
|
||||
MX7D_PAD_SD1_DATA2__SD1_DATA2 0x59
|
||||
MX7D_PAD_SD1_DATA3__SD1_DATA3 0x59
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3: usdhc3 {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_SD3_CMD__SD3_CMD 0x5d
|
||||
MX7D_PAD_SD3_CLK__SD3_CLK 0x1d
|
||||
MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5d
|
||||
MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5d
|
||||
MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5d
|
||||
MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5d
|
||||
MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5d
|
||||
MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5d
|
||||
MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5d
|
||||
MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5d
|
||||
MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1d
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_100mhz: usdhc3_100mhz {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_SD3_CMD__SD3_CMD 0x5e
|
||||
MX7D_PAD_SD3_CLK__SD3_CLK 0x1e
|
||||
MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5e
|
||||
MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5e
|
||||
MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5e
|
||||
MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5e
|
||||
MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5e
|
||||
MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5e
|
||||
MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5e
|
||||
MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5e
|
||||
MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1e
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_200mhz: usdhc3_200mhz {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_SD3_CMD__SD3_CMD 0x5f
|
||||
MX7D_PAD_SD3_CLK__SD3_CLK 0x0f
|
||||
MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5f
|
||||
MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5f
|
||||
MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5f
|
||||
MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5f
|
||||
MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5f
|
||||
MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5f
|
||||
MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5f
|
||||
MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5f
|
||||
MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1f
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc_lpsr {
|
||||
pinctrl_wdog: wdoggrp {
|
||||
fsl,pins = <
|
||||
MX7D_PAD_LPSR_GPIO1_IO00__WDOG1_WDOG_B 0x74
|
||||
>;
|
||||
};
|
||||
};
|
||||
404
arch/arm/dts/imx8qm-cgtqmx8.dts
Normal file
404
arch/arm/dts/imx8qm-cgtqmx8.dts
Normal file
@@ -0,0 +1,404 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2016 Freescale Semiconductor, Inc.
|
||||
* Copyright 2017 NXP
|
||||
* Copyright 2017 congatec AG
|
||||
* Copyright (C) 2019 Oliver Graute <oliver.graute@kococonnector.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
/* First 128KB is for PSCI ATF. */
|
||||
/memreserve/ 0x80000000 0x00020000;
|
||||
|
||||
#include "fsl-imx8qm.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Congatec QMX8 Qseven series";
|
||||
compatible = "fsl,imx8qm-qmx8", "fsl,imx8qm";
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyLP0,115200 earlycon=lpuart32,0x5a060000,115200";
|
||||
stdout-path = &lpuart0;
|
||||
};
|
||||
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
reg_usdhc2_vmmc: usdhc2_vmmc {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "sw-3p3-sd1";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio4 7 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
off-on-delay-us = <3000>;
|
||||
};
|
||||
|
||||
reg_usdhc3_vmmc: usdhc3_vmmc {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "sw-3p3-sd2";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio4 9 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
off-on-delay-us = <3000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_fec1>;
|
||||
phy-mode = "rgmii";
|
||||
phy-handle = <ðphy0>;
|
||||
fsl,magic-packet;
|
||||
fsl,rgmii_txc_dly;
|
||||
fsl,rgmii_rxc_dly;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethphy0: ethernet-phy@6 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <6>;
|
||||
at803x,eee-disabled;
|
||||
at803x,vddio-1p8v;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpi2c0>;
|
||||
clock-frequency = <100000>;
|
||||
status = "okay";
|
||||
|
||||
rtc_ext: m41t62@68 {
|
||||
compatible = "st,m41t62";
|
||||
reg = <0x68>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpi2c1>;
|
||||
status = "okay";
|
||||
|
||||
wm8904: wm8904@1a {
|
||||
compatible = "wlf,wm8904";
|
||||
reg = <0x1a>;
|
||||
|
||||
clocks = <&clk IMX8QM_AUD_MCLKOUT0>;
|
||||
clock-names = "mclk";
|
||||
wlf,shared-lrclk;
|
||||
/* power-domains = <&pd_mclk_out0>; */
|
||||
|
||||
assigned-clocks = <&clk IMX8QM_AUD_PLL0_DIV>,
|
||||
<&clk IMX8QM_AUD_ACM_AUD_PLL_CLK0_DIV>,
|
||||
<&clk IMX8QM_AUD_ACM_AUD_REC_CLK0_DIV>,
|
||||
<&clk IMX8QM_AUD_MCLKOUT0>;
|
||||
|
||||
assigned-clock-rates = <786432000>, <49152000>, <24576000>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
imx8qm-qmx8 {
|
||||
|
||||
pinctrl_hog: hoggrp{
|
||||
fsl,pins = <
|
||||
SC_P_M40_GPIO0_01_LSIO_GPIO0_IO09 0x00000021
|
||||
SC_P_USB_SS3_TC1_LSIO_GPIO4_IO04 0x00000021
|
||||
SC_P_M40_GPIO0_00_LSIO_GPIO0_IO08 0x00000021
|
||||
SC_P_ESAI1_SCKT_LSIO_GPIO2_IO07 0x00000021
|
||||
SC_P_SPDIF0_TX_LSIO_GPIO2_IO15 0x00000021
|
||||
SC_P_FLEXCAN1_RX_LSIO_GPIO3_IO31 0x00000021
|
||||
SC_P_ESAI1_TX0_LSIO_GPIO2_IO08 0x00000021
|
||||
SC_P_FLEXCAN1_TX_LSIO_GPIO4_IO00 0x00000021
|
||||
SC_P_ESAI1_TX1_LSIO_GPIO2_IO09 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec1: fec1grp {
|
||||
fsl,pins = <
|
||||
SC_P_ENET0_MDC_CONN_ENET0_MDC 0x06000020
|
||||
SC_P_ENET0_MDIO_CONN_ENET0_MDIO 0x06000020
|
||||
SC_P_ENET0_RGMII_TX_CTL_CONN_ENET0_RGMII_TX_CTL 0x06000020
|
||||
SC_P_ENET0_RGMII_TXC_CONN_ENET0_RGMII_TXC 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD0_CONN_ENET0_RGMII_TXD0 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD1_CONN_ENET0_RGMII_TXD1 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD2_CONN_ENET0_RGMII_TXD2 0x06000020
|
||||
SC_P_ENET0_RGMII_TXD3_CONN_ENET0_RGMII_TXD3 0x06000020
|
||||
SC_P_ENET0_RGMII_RXC_CONN_ENET0_RGMII_RXC 0x06000020
|
||||
SC_P_ENET0_RGMII_RX_CTL_CONN_ENET0_RGMII_RX_CTL 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD0_CONN_ENET0_RGMII_RXD0 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD1_CONN_ENET0_RGMII_RXD1 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD2_CONN_ENET0_RGMII_RXD2 0x06000020
|
||||
SC_P_ENET0_RGMII_RXD3_CONN_ENET0_RGMII_RXD3 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpi2c0: lpi2c0grp {
|
||||
fsl,pins = <
|
||||
SC_P_HDMI_TX0_TS_SCL_DMA_I2C0_SCL 0xc600004c
|
||||
SC_P_HDMI_TX0_TS_SDA_DMA_I2C0_SDA 0xc600004c
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpi2c1: lpi2c1grp {
|
||||
fsl,pins = <
|
||||
SC_P_GPT0_CLK_DMA_I2C1_SCL 0xc600004c
|
||||
SC_P_GPT0_CAPTURE_DMA_I2C1_SDA 0xc600004c
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpuart0: lpuart0grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART0_RX_DMA_UART0_RX 0x06000020
|
||||
SC_P_UART0_TX_DMA_UART0_TX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpuart1: lpuart1grp {
|
||||
fsl,pins = <
|
||||
SC_P_UART1_RX_DMA_UART1_RX 0x06000020
|
||||
SC_P_UART1_TX_DMA_UART1_TX 0x06000020
|
||||
SC_P_UART1_CTS_B_DMA_UART1_CTS_B 0x06000020
|
||||
SC_P_UART1_RTS_B_DMA_UART1_RTS_B 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lpuart3: lpuart3grp {
|
||||
fsl,pins = <
|
||||
SC_P_M41_GPIO0_00_DMA_UART3_RX 0x06000020
|
||||
SC_P_M41_GPIO0_01_DMA_UART3_TX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mlb: mlbgrp {
|
||||
fsl,pins = <
|
||||
SC_P_MLB_SIG_CONN_MLB_SIG 0x21
|
||||
SC_P_MLB_CLK_CONN_MLB_CLK 0x21
|
||||
SC_P_MLB_DATA_CONN_MLB_DATA 0x21
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_isl29023: isl29023grp {
|
||||
fsl,pins = <
|
||||
SC_P_ADC_IN2_LSIO_GPIO3_IO20 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000040
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000020
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000020
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000020
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000020
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000020
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000020
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000020
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000020
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000020
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000040
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
|
||||
fsl,pins = <
|
||||
SC_P_EMMC0_CLK_CONN_EMMC0_CLK 0x06000040
|
||||
SC_P_EMMC0_CMD_CONN_EMMC0_CMD 0x00000020
|
||||
SC_P_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000020
|
||||
SC_P_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000020
|
||||
SC_P_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000020
|
||||
SC_P_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000020
|
||||
SC_P_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000020
|
||||
SC_P_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000020
|
||||
SC_P_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000020
|
||||
SC_P_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000020
|
||||
SC_P_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000040
|
||||
SC_P_EMMC0_RESET_B_CONN_EMMC0_RESET_B 0x00000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_gpio: usdhc2grpgpio {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_DATA6_LSIO_GPIO5_IO21 0x00000021
|
||||
SC_P_USDHC1_DATA7_LSIO_GPIO5_IO22 0x00000021
|
||||
SC_P_USDHC1_RESET_B_LSIO_GPIO4_IO07 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000041
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000021
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000021
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_100mhz: usdhc2grp100mhz {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000040
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000020
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000020
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000020
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000020
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000020
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_200mhz: usdhc2grp200mhz {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC1_CLK_CONN_USDHC1_CLK 0x06000040
|
||||
SC_P_USDHC1_CMD_CONN_USDHC1_CMD 0x00000020
|
||||
SC_P_USDHC1_DATA0_CONN_USDHC1_DATA0 0x00000020
|
||||
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000020
|
||||
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000020
|
||||
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000020
|
||||
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_gpio: usdhc3grpgpio {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC2_RESET_B_LSIO_GPIO4_IO09 0x00000021
|
||||
SC_P_USDHC2_CD_B_LSIO_GPIO4_IO12 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3: usdhc3grp {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC2_CLK_CONN_USDHC2_CLK 0x06000041
|
||||
SC_P_USDHC2_CMD_CONN_USDHC2_CMD 0x00000021
|
||||
SC_P_USDHC2_DATA0_CONN_USDHC2_DATA0 0x00000021
|
||||
SC_P_USDHC2_DATA1_CONN_USDHC2_DATA1 0x00000021
|
||||
SC_P_USDHC2_DATA2_CONN_USDHC2_DATA2 0x00000021
|
||||
SC_P_USDHC2_DATA3_CONN_USDHC2_DATA3 0x00000021
|
||||
SC_P_USDHC2_VSELECT_CONN_USDHC2_VSELECT 0x00000021
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_100mhz: usdhc3grp100mhz {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC2_CLK_CONN_USDHC2_CLK 0x06000040
|
||||
SC_P_USDHC2_CMD_CONN_USDHC2_CMD 0x00000020
|
||||
SC_P_USDHC2_DATA0_CONN_USDHC2_DATA0 0x00000020
|
||||
SC_P_USDHC2_DATA1_CONN_USDHC2_DATA1 0x00000020
|
||||
SC_P_USDHC2_DATA2_CONN_USDHC2_DATA2 0x00000020
|
||||
SC_P_USDHC2_DATA3_CONN_USDHC2_DATA3 0x00000020
|
||||
SC_P_USDHC2_VSELECT_CONN_USDHC2_VSELECT 0x00000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc3_200mhz: usdhc3grp200mhz {
|
||||
fsl,pins = <
|
||||
SC_P_USDHC2_CLK_CONN_USDHC2_CLK 0x06000040
|
||||
SC_P_USDHC2_CMD_CONN_USDHC2_CMD 0x00000020
|
||||
SC_P_USDHC2_DATA0_CONN_USDHC2_DATA0 0x00000020
|
||||
SC_P_USDHC2_DATA1_CONN_USDHC2_DATA1 0x00000020
|
||||
SC_P_USDHC2_DATA2_CONN_USDHC2_DATA2 0x00000020
|
||||
SC_P_USDHC2_DATA3_CONN_USDHC2_DATA3 0x00000020
|
||||
SC_P_USDHC2_VSELECT_CONN_USDHC2_VSELECT 0x00000020
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&lpuart0 { /* console */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lpuart1 { /* Q7 connector */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lpuart1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pd_dma_lpuart0 {
|
||||
debug_console;
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
|
||||
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
|
||||
pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
|
||||
pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
|
||||
wp-gpios = <&gpio5 21 GPIO_ACTIVE_HIGH>;
|
||||
vmmc-supply = <®_usdhc2_vmmc>;
|
||||
fsl,tuning-start-tap = <20>;
|
||||
fsl,tuning-step= <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz";
|
||||
pinctrl-0 = <&pinctrl_usdhc3>, <&pinctrl_usdhc3_gpio>;
|
||||
pinctrl-1 = <&pinctrl_usdhc3_100mhz>, <&pinctrl_usdhc3_gpio>;
|
||||
pinctrl-2 = <&pinctrl_usdhc3_200mhz>, <&pinctrl_usdhc3_gpio>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio4 12 GPIO_ACTIVE_LOW>;
|
||||
vmmc-supply = <®_usdhc3_vmmc>;
|
||||
fsl,tuning-start-tap = <20>;
|
||||
fsl,tuning-step= <2>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -8,6 +8,42 @@
|
||||
chosen {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
clocks {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
soc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
};
|
||||
|
||||
&osc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&clks {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpt1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart1 { /* console */
|
||||
@@ -15,6 +51,8 @@
|
||||
};
|
||||
|
||||
&semc {
|
||||
u-boot,dm-spl;
|
||||
|
||||
bank1: bank@0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
@@ -16,9 +16,11 @@
|
||||
chosen {
|
||||
bootargs = "root=/dev/ram";
|
||||
stdout-path = "serial0:115200n8";
|
||||
tick-timer = &gpt1;
|
||||
};
|
||||
|
||||
memory {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0x2000000>;
|
||||
};
|
||||
};
|
||||
@@ -186,6 +188,10 @@
|
||||
};
|
||||
};
|
||||
|
||||
&gpt1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
|
||||
pinctrl-0 = <&pinctrl_usdhc0>;
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
};
|
||||
|
||||
clocks {
|
||||
u-boot,dm-spl;
|
||||
ckil {
|
||||
compatible = "fsl,imx-ckil", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
@@ -36,8 +35,7 @@
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
|
||||
osc {
|
||||
u-boot,dm-spl;
|
||||
osc: osc {
|
||||
compatible = "fsl,imx-osc", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24000000>;
|
||||
@@ -45,10 +43,7 @@
|
||||
};
|
||||
|
||||
soc {
|
||||
u-boot,dm-spl;
|
||||
|
||||
semc: semc@402f0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-semc";
|
||||
reg = <0x402f0000 0x4000>;
|
||||
clocks = <&clks IMXRT1020_CLK_SEMC>;
|
||||
@@ -73,7 +68,6 @@
|
||||
};
|
||||
|
||||
clks: ccm@400fc000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt1020-ccm";
|
||||
reg = <0x400fc000 0x4000>;
|
||||
interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -82,7 +76,6 @@
|
||||
};
|
||||
|
||||
usdhc1: usdhc@402c0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-usdhc";
|
||||
reg = <0x402c0000 0x10000>;
|
||||
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
|
||||
@@ -95,7 +88,6 @@
|
||||
};
|
||||
|
||||
gpio1: gpio@401b8000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401b8000 0x4000>;
|
||||
interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -107,7 +99,6 @@
|
||||
};
|
||||
|
||||
gpio2: gpio@401bc000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401bc000 0x4000>;
|
||||
interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -119,7 +110,6 @@
|
||||
};
|
||||
|
||||
gpio3: gpio@401c0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401c0000 0x4000>;
|
||||
interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -129,5 +119,24 @@
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpio5: gpio@400c0000 {
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x400c0000 0x4000>;
|
||||
interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpt1: gpt1@401ec000 {
|
||||
compatible = "fsl,imxrt-gpt";
|
||||
reg = <0x401ec000 0x4000>;
|
||||
interrupts = <100>;
|
||||
clocks = <&osc>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -8,6 +8,46 @@
|
||||
chosen {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
clocks {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
soc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
};
|
||||
|
||||
&osc {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&clks {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio4 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&gpt1 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
&lpuart1 { /* console */
|
||||
@@ -15,6 +55,8 @@
|
||||
};
|
||||
|
||||
&semc {
|
||||
u-boot,dm-spl;
|
||||
|
||||
bank1: bank@0 {
|
||||
u-boot,dm-spl;
|
||||
};
|
||||
|
||||
@@ -16,9 +16,11 @@
|
||||
chosen {
|
||||
bootargs = "root=/dev/ram";
|
||||
stdout-path = "serial0:115200n8";
|
||||
tick-timer = &gpt1;
|
||||
};
|
||||
|
||||
memory {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0x2000000>;
|
||||
};
|
||||
};
|
||||
@@ -187,7 +189,6 @@
|
||||
};
|
||||
|
||||
pinctrl_lcdif: lcdifgrp {
|
||||
u-boot,dm-spl;
|
||||
fsl,pins = <
|
||||
MXRT1050_IOMUXC_GPIO_B0_00_LCD_CLK 0x1b0b1
|
||||
MXRT1050_IOMUXC_GPIO_B0_01_LCD_ENABLE 0x1b0b1
|
||||
@@ -215,6 +216,10 @@
|
||||
};
|
||||
};
|
||||
|
||||
&gpt1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
|
||||
pinctrl-0 = <&pinctrl_usdhc0>;
|
||||
@@ -232,9 +237,6 @@
|
||||
display = <&display0>;
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clks IMXRT1050_CLK_LCDIF_SEL>;
|
||||
assigned-clock-parents = <&clks IMXRT1050_CLK_PLL5_VIDEO>;
|
||||
|
||||
display0: display0 {
|
||||
bits-per-pixel = <16>;
|
||||
bus-width = <16>;
|
||||
@@ -258,3 +260,8 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -23,13 +23,11 @@
|
||||
gpio4 = &gpio5;
|
||||
mmc0 = &usdhc1;
|
||||
serial0 = &lpuart1;
|
||||
usbphy0 = &usbphy1;
|
||||
};
|
||||
|
||||
clocks {
|
||||
u-boot,dm-spl;
|
||||
|
||||
osc {
|
||||
u-boot,dm-spl;
|
||||
osc: osc {
|
||||
compatible = "fsl,imx-osc", "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <24000000>;
|
||||
@@ -37,10 +35,7 @@
|
||||
};
|
||||
|
||||
soc {
|
||||
u-boot,dm-spl;
|
||||
|
||||
semc: semc@402f0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-semc";
|
||||
reg = <0x402f0000 0x4000>;
|
||||
clocks = <&clks IMXRT1050_CLK_SEMC>;
|
||||
@@ -65,7 +60,6 @@
|
||||
};
|
||||
|
||||
clks: ccm@400fc000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt1050-ccm";
|
||||
reg = <0x400fc000 0x4000>;
|
||||
interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -74,7 +68,6 @@
|
||||
};
|
||||
|
||||
usdhc1: usdhc@402c0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-usdhc";
|
||||
reg = <0x402c0000 0x10000>;
|
||||
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
|
||||
@@ -87,7 +80,6 @@
|
||||
};
|
||||
|
||||
gpio1: gpio@401b8000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401b8000 0x4000>;
|
||||
interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -99,7 +91,6 @@
|
||||
};
|
||||
|
||||
gpio2: gpio@401bc000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401bc000 0x4000>;
|
||||
interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -111,7 +102,6 @@
|
||||
};
|
||||
|
||||
gpio3: gpio@401c0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401c0000 0x4000>;
|
||||
interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -123,7 +113,6 @@
|
||||
};
|
||||
|
||||
gpio4: gpio@401c4000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x401c4000 0x4000>;
|
||||
interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -135,7 +124,6 @@
|
||||
};
|
||||
|
||||
gpio5: gpio@400c0000 {
|
||||
u-boot,dm-spl;
|
||||
compatible = "fsl,imxrt-gpio", "fsl,imx35-gpio";
|
||||
reg = <0x400c0000 0x4000>;
|
||||
interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
|
||||
@@ -150,8 +138,45 @@
|
||||
compatible = "fsl,imxrt-lcdif";
|
||||
reg = <0x402b8000 0x4000>;
|
||||
interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMXRT1050_CLK_LCDIF>;
|
||||
clock-names = "per";
|
||||
clocks = <&clks IMXRT1050_CLK_LCDIF_PIX>,
|
||||
<&clks IMXRT1050_CLK_LCDIF_APB>;
|
||||
clock-names = "pix", "axi";
|
||||
assigned-clocks = <&clks IMXRT1050_CLK_LCDIF_SEL>;
|
||||
assigned-clock-parents = <&clks IMXRT1050_CLK_PLL5_VIDEO>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
gpt1: gpt1@401ec000 {
|
||||
compatible = "fsl,imxrt-gpt";
|
||||
reg = <0x401ec000 0x4000>;
|
||||
interrupts = <100>;
|
||||
clocks = <&osc>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usbphy1: usbphy@400d9000 {
|
||||
compatible = "fsl,imxrt-usbphy";
|
||||
reg = <0x400d9000 0x1000>;
|
||||
interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
usbmisc: usbmisc@402e0800 {
|
||||
#index-cells = <1>;
|
||||
compatible = "fsl,imxrt-usbmisc";
|
||||
reg = <0x402e0800 0x200>;
|
||||
clocks = <&clks IMXRT1050_CLK_USBOH3>;
|
||||
};
|
||||
|
||||
usbotg1: usb@402e0000 {
|
||||
compatible = "fsl,imxrt-usb", "fsl,imx27-usb";
|
||||
reg = <0x402e0000 0x200>;
|
||||
interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMXRT1050_CLK_USBOH3>;
|
||||
fsl,usbphy = <&usbphy1>;
|
||||
fsl,usbmisc = <&usbmisc 0>;
|
||||
ahb-burst-config = <0x0>;
|
||||
tx-burst-size-dword = <0x10>;
|
||||
rx-burst-size-dword = <0x10>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
241
arch/arm/dts/o4-imx-nano.dts
Normal file
241
arch/arm/dts/o4-imx-nano.dts
Normal file
@@ -0,0 +1,241 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
// Copyright (C) 2021 Oleh Kravchenko <oleg@kaa.org.ua>
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
#include "o4-imx6ull-nano.dtsi"
|
||||
|
||||
/ {
|
||||
model = "O4-iMX-NANO";
|
||||
compatible = "out4,o4-imx-nano",
|
||||
"out4,o4-imx6ull-nano",
|
||||
"fsl,imx6ull";
|
||||
|
||||
aliases {
|
||||
mmc1 = &usdhc1;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = &uart1;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led@0 {
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
gpios = <&pcf8574a 0 GPIO_ACTIVE_LOW>;
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
led@1 {
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&pcf8574a 1 GPIO_ACTIVE_LOW>;
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
led@2 {
|
||||
gpios = <&pcf8574a 2 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
reg = <2>;
|
||||
};
|
||||
|
||||
led@3 {
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
gpios = <&pcf8574a 3 GPIO_ACTIVE_LOW>;
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
led@4 {
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&pcf8574a 4 GPIO_ACTIVE_LOW>;
|
||||
reg = <4>;
|
||||
};
|
||||
|
||||
led@5 {
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&pcf8574a 5 GPIO_ACTIVE_LOW>;
|
||||
reg = <5>;
|
||||
};
|
||||
};
|
||||
|
||||
usbotg1_vbus: reg_usbotg1_vbus {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&pcf8574a 6 GPIO_ACTIVE_HIGH>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-name = "usb0";
|
||||
};
|
||||
|
||||
usbotg2_vbus: reg_usbotg2_vbus {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&pcf8574a 7 GPIO_ACTIVE_HIGH>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-name = "usb1";
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1
|
||||
MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10069
|
||||
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059
|
||||
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_UART1_RTS_B__USDHC1_CD_B 0x03029
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_mdio: mdiogrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_GPIO1_IO06__ENET2_MDIO 0x1b0b0
|
||||
MX6UL_PAD_GPIO1_IO07__ENET2_MDC 0x1b0b0
|
||||
MX6UL_PAD_SNVS_TAMPER1__GPIO5_IO01 0xb0b0 /* RST */
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2: i2c2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_CSI_HSYNC__I2C2_SCL 0x4001b8b0
|
||||
MX6UL_PAD_CSI_VSYNC__I2C2_SDA 0x4001b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c2_gpio: i2c2gpiogrp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_CSI_HSYNC__GPIO4_IO20 0x1b8b0
|
||||
MX6UL_PAD_CSI_VSYNC__GPIO4_IO19 0x1b8b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_can1: can1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_LCD_DATA08__FLEXCAN1_TX 0x1b020
|
||||
MX6UL_PAD_LCD_DATA09__FLEXCAN1_RX 0x1b020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart2: uart2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1
|
||||
MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x1b0b1
|
||||
MX6UL_PAD_UART2_CTS_B__UART2_DCE_CTS 0x1b0b1
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
pinctrl-0 = <&pinctrl_uart1>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usdhc1 {
|
||||
bus-width = <4>;
|
||||
no-1-8-v;
|
||||
pinctrl-0 = <&pinctrl_usdhc1>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
&fec1 {
|
||||
phy-handle = <&phy0>;
|
||||
phy-mode = "rmii";
|
||||
pinctrl-0 = <&pinctrl_fec1>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fec2 {
|
||||
phy-handle = <&phy1>;
|
||||
phy-mode = "rmii";
|
||||
phy-reset-duration = <250>;
|
||||
phy-reset-post-delay = <100>;
|
||||
phy-reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-0 = <&pinctrl_fec2 &pinctrl_mdio>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy0: ethernet-phy@0 {
|
||||
clocks = <&clks IMX6UL_CLK_ENET_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
||||
pinctrl-0 = <&pinctrl_phy0_irq>;
|
||||
pinctrl-names = "default";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
phy1: ethernet-phy@1 {
|
||||
clocks = <&clks IMX6UL_CLK_ENET2_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
|
||||
pinctrl-0 = <&pinctrl_phy1_irq>;
|
||||
pinctrl-names = "default";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usbotg1 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
vbus-supply = <&usbotg1_vbus>;
|
||||
};
|
||||
|
||||
&usbotg2 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
vbus-supply = <&usbotg2_vbus>;
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
clock_frequency = <100000>;
|
||||
pinctrl-0 = <&pinctrl_i2c2>;
|
||||
pinctrl-1 = <&pinctrl_i2c2_gpio>;
|
||||
pinctrl-names = "default", "gpio";
|
||||
scl-gpios = <&gpio4 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
sda-gpios = <&gpio4 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
status = "okay";
|
||||
|
||||
pcf8574a: gpio@38 {
|
||||
compatible = "nxp,pcf8574a";
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
reg = <0x38>;
|
||||
};
|
||||
};
|
||||
|
||||
&can1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_can1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
linux,rs485-enabled-at-boot-time;
|
||||
pinctrl-0 = <&pinctrl_uart2>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
uart-has-rtscts;
|
||||
};
|
||||
87
arch/arm/dts/o4-imx6ull-nano.dtsi
Normal file
87
arch/arm/dts/o4-imx6ull-nano.dtsi
Normal file
@@ -0,0 +1,87 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
// Copyright (C) 2021 Oleh Kravchenko <oleg@kaa.org.ua>
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "imx6ull.dtsi"
|
||||
|
||||
/ {
|
||||
model = "O4-iMX6ULL-NANO";
|
||||
compatible = "out4,o4-imx6ull-nano", "fsl,imx6ull";
|
||||
|
||||
aliases {
|
||||
mmc0 = &usdhc2;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x80000000 0x20000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl_usdhc2: usdhc2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_NAND_ALE__USDHC2_RESET_B 0x17059
|
||||
MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059
|
||||
MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059
|
||||
MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059
|
||||
MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059
|
||||
MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059
|
||||
MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059
|
||||
MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059
|
||||
MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059
|
||||
MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069
|
||||
MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec1: fec1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0
|
||||
MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031
|
||||
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
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_fec2: fec2grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_ENET2_RX_DATA0__ENET2_RDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_DATA1__ENET2_RDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_EN__ENET2_RX_EN 0x1b0b0
|
||||
MX6UL_PAD_ENET2_RX_ER__ENET2_RX_ER 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 0x4001b031
|
||||
MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01 0x1b0b0
|
||||
MX6UL_PAD_ENET2_TX_EN__ENET2_TX_EN 0x1b0b0
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_phy0_irq: phy0grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x79
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_phy1_irq: phy1grp {
|
||||
fsl,pins = <
|
||||
MX6UL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x79
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&usdhc2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usdhc2>;
|
||||
no-1-8-v;
|
||||
non-removable;
|
||||
keep-power-in-suspend;
|
||||
wakeup-source;
|
||||
bus-width = <8>;
|
||||
status = "okay";
|
||||
};
|
||||
@@ -50,6 +50,8 @@
|
||||
#define MXC_CPU_IMX8QXP_A0 0x90 /* dummy ID */
|
||||
#define MXC_CPU_IMX8QM 0x91 /* dummy ID */
|
||||
#define MXC_CPU_IMX8QXP 0x92 /* dummy ID */
|
||||
#define MXC_CPU_IMXRT1020 0xB4 /* dummy ID */
|
||||
#define MXC_CPU_IMXRT1050 0xB6 /* dummy ID */
|
||||
#define MXC_CPU_MX7ULP 0xE1 /* Temporally hard code */
|
||||
#define MXC_CPU_VF610 0xF6 /* dummy ID */
|
||||
|
||||
@@ -57,6 +59,7 @@
|
||||
#define MXC_SOC_MX7 0x70
|
||||
#define MXC_SOC_IMX8M 0x80
|
||||
#define MXC_SOC_IMX8 0x90 /* dummy */
|
||||
#define MXC_SOC_IMXRT 0xB0 /* dummy */
|
||||
#define MXC_SOC_MX7ULP 0xE0 /* dummy */
|
||||
|
||||
#define CHIP_REV_1_0 0x10
|
||||
|
||||
@@ -23,4 +23,8 @@
|
||||
#include <asm/mach-imx/regs-lcdif.h>
|
||||
#endif
|
||||
|
||||
#define USB_BASE_ADDR 0x402E0000
|
||||
#define USB_PHY0_BASE_ADDR 0x400D9000
|
||||
#define USB_PHY1_BASE_ADDR 0x400DA000
|
||||
|
||||
#endif /* __ASM_ARCH_IMX_REGS_H__ */
|
||||
|
||||
@@ -31,6 +31,7 @@ struct bd_info;
|
||||
#define is_mx7() (is_soc_type(MXC_SOC_MX7))
|
||||
#define is_imx8m() (is_soc_type(MXC_SOC_IMX8M))
|
||||
#define is_imx8() (is_soc_type(MXC_SOC_IMX8))
|
||||
#define is_imxrt() (is_soc_type(MXC_SOC_IMXRT))
|
||||
|
||||
#define is_mx6dqp() (is_cpu_type(MXC_CPU_MX6QP) || is_cpu_type(MXC_CPU_MX6DP))
|
||||
#define is_mx6dq() (is_cpu_type(MXC_CPU_MX6Q) || is_cpu_type(MXC_CPU_MX6D))
|
||||
@@ -78,6 +79,9 @@ struct bd_info;
|
||||
|
||||
#define is_imx8qxp() (is_cpu_type(MXC_CPU_IMX8QXP))
|
||||
|
||||
#define is_imxrt1020() (is_cpu_type(MXC_CPU_IMXRT1020))
|
||||
#define is_imxrt1050() (is_cpu_type(MXC_CPU_IMXRT1050))
|
||||
|
||||
#ifdef CONFIG_MX6
|
||||
#define IMX6_SRC_GPR10_BMODE BIT(28)
|
||||
#define IMX6_SRC_GPR10_PERSIST_SECONDARY_BOOT BIT(30)
|
||||
|
||||
@@ -86,6 +86,12 @@ config TARGET_IMX8QM_MEK
|
||||
select BOARD_LATE_INIT
|
||||
select IMX8QM
|
||||
|
||||
config TARGET_CONGA_QMX8
|
||||
bool "Support congatec conga-QMX8 board"
|
||||
select BOARD_LATE_INIT
|
||||
select SUPPORT_SPL
|
||||
select IMX8QM
|
||||
|
||||
config TARGET_IMX8QM_ROM7720_A1
|
||||
bool "Support i.MX8QM ROM-7720-A1"
|
||||
select BOARD_LATE_INIT
|
||||
@@ -101,6 +107,7 @@ endchoice
|
||||
|
||||
source "board/freescale/imx8qm_mek/Kconfig"
|
||||
source "board/freescale/imx8qxp_mek/Kconfig"
|
||||
source "board/congatec/cgtqmx8/Kconfig"
|
||||
source "board/advantech/imx8qm_rom7720_a1/Kconfig"
|
||||
source "board/toradex/apalis-imx8/Kconfig"
|
||||
source "board/toradex/colibri-imx8x/Kconfig"
|
||||
|
||||
@@ -54,7 +54,7 @@ static struct imx_int_pll_rate_table imx8mm_fracpll_tbl[] = {
|
||||
PLL_1443X_RATE(600000000U, 300, 3, 2, 0),
|
||||
PLL_1443X_RATE(594000000U, 99, 1, 2, 0),
|
||||
PLL_1443X_RATE(400000000U, 300, 9, 1, 0),
|
||||
PLL_1443X_RATE(266666667U, 400, 9, 2, 0),
|
||||
PLL_1443X_RATE(266000000U, 400, 9, 2, 0),
|
||||
PLL_1443X_RATE(167000000U, 334, 3, 4, 0),
|
||||
PLL_1443X_RATE(100000000U, 300, 9, 3, 0),
|
||||
};
|
||||
@@ -72,7 +72,7 @@ static int fracpll_configure(enum pll_clocks pll, u32 freq)
|
||||
}
|
||||
|
||||
if (i == ARRAY_SIZE(imx8mm_fracpll_tbl)) {
|
||||
printf("No matched freq table %u\n", freq);
|
||||
printf("%s: No matched freq table %u\n", __func__, freq);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ void dram_enable_bypass(ulong clk_val)
|
||||
}
|
||||
|
||||
if (i == ARRAY_SIZE(imx8mm_dram_bypass_tbl)) {
|
||||
printf("No matched freq table %lu\n", clk_val);
|
||||
printf("%s: No matched freq table %lu\n", __func__, clk_val);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -646,7 +646,7 @@ static u32 decode_fracpll(enum clk_root_src frac_pll)
|
||||
pll_fdiv_ctl1 = readl(&ana_pll->video_pll1_fdiv_ctl1);
|
||||
break;
|
||||
default:
|
||||
printf("Not supported\n");
|
||||
printf("Unsupported clk_root_src %d\n", frac_pll);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -8,13 +8,14 @@
|
||||
#include <init.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/armv7_mpu.h>
|
||||
#include <asm/mach-imx/sys_proto.h>
|
||||
#include <linux/bitops.h>
|
||||
|
||||
int arch_cpu_init(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
struct mpu_region_config imxrt1050_region_config[] = {
|
||||
struct mpu_region_config imxrt_region_config[] = {
|
||||
{ 0x00000000, REGION_0, XN_DIS, PRIV_RW_USR_RW,
|
||||
STRONG_ORDER, REGION_4GB },
|
||||
{ PHYS_SDRAM, REGION_1, XN_DIS, PRIV_RW_USR_RW,
|
||||
@@ -29,9 +30,20 @@ int arch_cpu_init(void)
|
||||
* the whole 4GB address space.
|
||||
*/
|
||||
disable_mpu();
|
||||
for (i = 0; i < ARRAY_SIZE(imxrt1050_region_config); i++)
|
||||
mpu_config(&imxrt1050_region_config[i]);
|
||||
for (i = 0; i < ARRAY_SIZE(imxrt_region_config); i++)
|
||||
mpu_config(&imxrt_region_config[i]);
|
||||
enable_mpu();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 get_cpu_rev(void)
|
||||
{
|
||||
#if defined(CONFIG_IMXRT1020)
|
||||
return MXC_CPU_IMXRT1020 << 12;
|
||||
#elif defined(CONFIG_IMXRT1050)
|
||||
return MXC_CPU_IMXRT1050 << 12;
|
||||
#else
|
||||
#error This IMXRT SoC is not supported
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -453,6 +453,17 @@ config TARGET_NITROGEN6X
|
||||
imply USB_ETHER_SMSC95XX
|
||||
imply USB_HOST_ETHER
|
||||
|
||||
config TARGET_NPI_IMX6ULL
|
||||
bool "Seeed NPI-IMX6ULL"
|
||||
depends on MX6ULL
|
||||
select DM
|
||||
select DM_ETH
|
||||
select DM_MMC
|
||||
select DM_GPIO
|
||||
select DM_SERIAL
|
||||
select DM_THERMAL
|
||||
select SUPPORT_SPL
|
||||
|
||||
config TARGET_OPOS6ULDEV
|
||||
bool "Armadeus OPOS6ULDev board"
|
||||
depends on MX6UL
|
||||
@@ -619,6 +630,18 @@ config TARGET_BRPPT2
|
||||
Support
|
||||
B&R BRPPT2 platform
|
||||
based on Freescale's iMX6 SoC
|
||||
|
||||
config TARGET_O4_IMX6ULL_NANO
|
||||
bool "O4-iMX6ULL-NANO"
|
||||
depends on MX6ULL
|
||||
select BOARD_LATE_INIT
|
||||
select DM
|
||||
select DM_THERMAL
|
||||
imply CMD_DM
|
||||
help
|
||||
Support for www.out4.ru O4-iMX6UL-NANO platform
|
||||
based on Freescale's i.MX6UL/i.MX6ULL SoC.
|
||||
|
||||
endchoice
|
||||
|
||||
config SYS_SOC
|
||||
@@ -668,5 +691,6 @@ source "board/udoo/neo/Kconfig"
|
||||
source "board/wandboard/Kconfig"
|
||||
source "board/warp/Kconfig"
|
||||
source "board/BuR/brppt2/Kconfig"
|
||||
source "board/out4/o4-imx6ull-nano/Kconfig"
|
||||
|
||||
endif
|
||||
|
||||
@@ -70,6 +70,14 @@ config TARGET_PICO_IMX7D
|
||||
select SUPPORT_SPL
|
||||
imply CMD_DM
|
||||
|
||||
config TARGET_SMEGW01
|
||||
bool "smegw01"
|
||||
select BOARD_LATE_INIT
|
||||
select DM
|
||||
select DM_THERMAL
|
||||
select MX7D
|
||||
imply CMD_DM
|
||||
|
||||
config TARGET_WARP7
|
||||
bool "warp7"
|
||||
select BOARD_LATE_INIT
|
||||
@@ -94,6 +102,7 @@ source "board/compulab/cl-som-imx7/Kconfig"
|
||||
source "board/ronetix/imx7-cm/Kconfig"
|
||||
source "board/freescale/mx7dsabresd/Kconfig"
|
||||
source "board/novtech/meerkat96/Kconfig"
|
||||
source "board/storopack/smegw01/Kconfig"
|
||||
source "board/technexion/pico-imx7d/Kconfig"
|
||||
source "board/toradex/colibri_imx7/Kconfig"
|
||||
source "board/warp7/Kconfig"
|
||||
|
||||
Reference in New Issue
Block a user