mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
arm64: dts: imx8mp: add aristainetos3 board support
Add support for the i.MX8MP based aristainetos3 boards from ABB. The board uses a ABB specific SoM from ADLink, based on NXP i.MX8MP SoC. The SoM is used on 3 different carrier boards, with small differences. Signed-off-by: Heiko Schocher <hs@denx.de> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
parent
7157135384
commit
eead8f3536
6 changed files with 1521 additions and 0 deletions
|
@ -165,6 +165,11 @@ imx8mn-tqma8mqnl-mba8mx-usbotg-dtbs += imx8mn-tqma8mqnl-mba8mx.dtb imx8mn-tqma8m
|
||||||
dtb-$(CONFIG_ARCH_MXC) += imx8mn-tqma8mqnl-mba8mx-lvds-tm070jvhg33.dtb
|
dtb-$(CONFIG_ARCH_MXC) += imx8mn-tqma8mqnl-mba8mx-lvds-tm070jvhg33.dtb
|
||||||
dtb-$(CONFIG_ARCH_MXC) += imx8mn-tqma8mqnl-mba8mx-usbotg.dtb
|
dtb-$(CONFIG_ARCH_MXC) += imx8mn-tqma8mqnl-mba8mx-usbotg.dtb
|
||||||
|
|
||||||
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-aristainetos3-adpismarc.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-aristainetos3-helios.dtb
|
||||||
|
imx8mp-aristainetos3-helios-lvds-dtbs += imx8mp-aristainetos3-helios.dtb imx8mp-aristainetos3-helios-lvds.dtbo
|
||||||
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-aristainetos3-helios-lvds.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-aristainetos3-proton2s.dtb
|
||||||
dtb-$(CONFIG_ARCH_MXC) += imx8mp-beacon-kit.dtb
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-beacon-kit.dtb
|
||||||
dtb-$(CONFIG_ARCH_MXC) += imx8mp-data-modul-edm-sbc.dtb
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-data-modul-edm-sbc.dtb
|
||||||
dtb-$(CONFIG_ARCH_MXC) += imx8mp-debix-model-a.dtb
|
dtb-$(CONFIG_ARCH_MXC) += imx8mp-debix-model-a.dtb
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2024 Heiko Schocher <hs@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/interrupt-controller/irq.h>
|
||||||
|
#include "imx8mp-aristainetos3a-som-v1.dtsi"
|
||||||
|
|
||||||
|
&{/} {
|
||||||
|
model = "Aristainetos3 ADLink PI SMARC carrier";
|
||||||
|
compatible = "abb,imx8mp-aristanetos3-adpismarc",
|
||||||
|
"abb,imx8mp-aristanetos3-som",
|
||||||
|
"fsl,imx8mp";
|
||||||
|
};
|
||||||
|
|
||||||
|
&flexcan1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c2 {
|
||||||
|
gpio8: pinctrl@3e {
|
||||||
|
compatible = "semtech,sx1509q";
|
||||||
|
reg = <0x3e>;
|
||||||
|
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
semtech,probe-reset;
|
||||||
|
gpio-controller;
|
||||||
|
interrupt-controller;
|
||||||
|
interrupt-parent = <&gpio6>;
|
||||||
|
interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
|
@ -0,0 +1,113 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2024 Heiko Schocher <hs@denx.de>
|
||||||
|
*/
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||||
|
#include <dt-bindings/pwm/pwm.h>
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
/plugin/;
|
||||||
|
|
||||||
|
&{/} {
|
||||||
|
model = "Aristainetos3 helios carrier with LVDS";
|
||||||
|
compatible = "abb,imx8mp-aristanetos3-helios",
|
||||||
|
"abb,imx8mp-aristanetos3-som",
|
||||||
|
"fsl,imx8mp";
|
||||||
|
|
||||||
|
panel_lvds: panel-lvds {
|
||||||
|
compatible = "lg,lb070wv8";
|
||||||
|
power-supply = <®_vcc_disp>;
|
||||||
|
backlight = <&lvds_backlight>;
|
||||||
|
|
||||||
|
port {
|
||||||
|
in_lvds0: endpoint {
|
||||||
|
remote-endpoint = <&ldb_lvds_ch0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_vcc_disp: regulator-disp {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_lcd0_vcc_en>;
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "disp_power_en_2v8";
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
gpio = <&gpio1 13 GPIO_ACTIVE_HIGH>;
|
||||||
|
enable-active-high;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio3 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_gpio3_hog>;
|
||||||
|
|
||||||
|
lvdssel-hog {
|
||||||
|
gpio-hog;
|
||||||
|
gpios = <23 GPIO_ACTIVE_HIGH>;
|
||||||
|
output-low;
|
||||||
|
line-name = "LVDSSEL";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi_blk_ctrl {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi_pvi {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi_tx {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi_tx_phy {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&irqsteer_hdmi {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ldb_lvds_ch0 {
|
||||||
|
remote-endpoint = <&in_lvds0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&lcdif1 {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&lcdif2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&lcdif3 {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&lvds_backlight {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&lvds_bridge {
|
||||||
|
/* IMX8MP_CLK_MEDIA_LDB = IMX8MP_CLK_MEDIA_DISP2_PIX * 7 */
|
||||||
|
assigned-clock-rates = <232820000>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&media_blk_ctrl {
|
||||||
|
/*
|
||||||
|
* currently it is not possible to let display clocks configure
|
||||||
|
* automatically, so we need to set them manually
|
||||||
|
*/
|
||||||
|
assigned-clock-rates = <500000000>, <200000000>, <0>,
|
||||||
|
/* IMX8MP_CLK_MEDIA_DISP2_PIX = pixelclk of lvds panel */
|
||||||
|
<33260000>, <0>,
|
||||||
|
/* IMX8MP_VIDEO_PLL1 = IMX8MP_CLK_MEDIA_LDB * 2 */
|
||||||
|
<465640000>;
|
||||||
|
};
|
|
@ -0,0 +1,98 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2024 Heiko Schocher <hs@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include "imx8mp-aristainetos3a-som-v1.dtsi"
|
||||||
|
|
||||||
|
&{/} {
|
||||||
|
model = "Aristainetos3 helios carrier";
|
||||||
|
compatible = "abb,imx8mp-aristanetos3-helios",
|
||||||
|
"abb,imx8mp-aristanetos3-som",
|
||||||
|
"fsl,imx8mp";
|
||||||
|
|
||||||
|
led-controller {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led-0 {
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function-enumerator = <20>;
|
||||||
|
gpios = <&pca6416 12 GPIO_ACTIVE_LOW>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led-1 {
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_YELLOW>;
|
||||||
|
function-enumerator = <20>;
|
||||||
|
gpios = <&pca6416 13 GPIO_ACTIVE_LOW>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led-2 {
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function-enumerator = <20>;
|
||||||
|
gpios = <&pca6416 14 GPIO_ACTIVE_LOW>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led-3 {
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
function-enumerator = <20>;
|
||||||
|
gpios = <&pca6416 15 GPIO_ACTIVE_LOW>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ðphy1 {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&fec {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c1 {
|
||||||
|
eeprom@57 {
|
||||||
|
compatible = "atmel,24c64";
|
||||||
|
reg = <0x57>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c3 {
|
||||||
|
pca6416: gpio@20 {
|
||||||
|
compatible = "ti,tca6416";
|
||||||
|
reg = <0x20>;
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-line-names = "DIN0_CON",
|
||||||
|
"DIN1_CON",
|
||||||
|
"DIN2_CON",
|
||||||
|
"DIN3_CON",
|
||||||
|
"DIN4_CON",
|
||||||
|
"DIN5_CON",
|
||||||
|
"DIN6_CON",
|
||||||
|
"DIN7_CON",
|
||||||
|
"PM102_RES",
|
||||||
|
"COMx_RES",
|
||||||
|
"BPL_RES",
|
||||||
|
"PC_RES",
|
||||||
|
"LED_RED",
|
||||||
|
"LED_YELLOW",
|
||||||
|
"LED_GREEN",
|
||||||
|
"LED_BLUE";
|
||||||
|
};
|
||||||
|
|
||||||
|
rtc@68 {
|
||||||
|
compatible = "st,m41t00";
|
||||||
|
reg = <0x68>;
|
||||||
|
};
|
||||||
|
};
|
161
arch/arm64/boot/dts/freescale/imx8mp-aristainetos3-proton2s.dts
Normal file
161
arch/arm64/boot/dts/freescale/imx8mp-aristainetos3-proton2s.dts
Normal file
|
@ -0,0 +1,161 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2024 Heiko Schocher <hs@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
#include "imx8mp-aristainetos3a-som-v1.dtsi"
|
||||||
|
|
||||||
|
&{/} {
|
||||||
|
model = "Aristainetos3 proton2s carrier";
|
||||||
|
compatible = "abb,imx8mp-aristanetos3-proton2s",
|
||||||
|
"abb,imx8mp-aristanetos3-som",
|
||||||
|
"fsl,imx8mp";
|
||||||
|
|
||||||
|
watchdog {
|
||||||
|
/* MAX6371KA */
|
||||||
|
compatible = "linux,wdt-gpio";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_watchdog_gpio>;
|
||||||
|
always-running;
|
||||||
|
gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||||
|
hw_algo = "level";
|
||||||
|
/* Reset triggers in 3..9 seconds */
|
||||||
|
hw_margin_ms = <1500>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ðphy1 {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&eqos {
|
||||||
|
max-speed = <100>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&ecspi1{
|
||||||
|
pinctrl-0 = <&pinctrl_ecspi1>;
|
||||||
|
cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&fec {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio1 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_gpio_proton2s>;
|
||||||
|
|
||||||
|
gpio-line-names =
|
||||||
|
"", "", "", "", "", "", "", "POWER",
|
||||||
|
"", "", "", "", "", "", "", "",
|
||||||
|
"", "", "", "", "", "", "", "",
|
||||||
|
"", "", "", "", "", "", "", "";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio6 {
|
||||||
|
gpio-line-names =
|
||||||
|
"RELAY0", "RELAY1", "RELAY2", "HEATER",
|
||||||
|
"FAN", "SPARE", "CLEAR", "FAULT",
|
||||||
|
"", "", "", "", "", "", "", "", "";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c2 {
|
||||||
|
tlc59108@40 {
|
||||||
|
compatible = "ti,tlc59108";
|
||||||
|
reg = <0x40>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
led@0 {
|
||||||
|
reg = <0x0>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function-enumerator = <20>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@1 {
|
||||||
|
reg = <0x1>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function-enumerator = <20>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@2 {
|
||||||
|
reg = <0x2>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function-enumerator = <21>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@3 {
|
||||||
|
reg = <0x3>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function-enumerator = <21>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@4 {
|
||||||
|
reg = <0x4>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
function-enumerator = <21>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@5 {
|
||||||
|
reg = <0x5>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_RED>;
|
||||||
|
function-enumerator = <22>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@6 {
|
||||||
|
reg = <0x6>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_GREEN>;
|
||||||
|
function-enumerator = <22>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@7 {
|
||||||
|
reg = <0x7>;
|
||||||
|
function = LED_FUNCTION_STATUS;
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
function-enumerator = <22>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
rtc1: rtc@68 {
|
||||||
|
compatible = "dallas,ds1339";
|
||||||
|
reg = <0x68>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart1 {
|
||||||
|
pinctrl-0 = <&pinctrl_uart1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart2 {
|
||||||
|
pinctrl-0 = <&pinctrl_uart2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart3 {
|
||||||
|
pinctrl-0 = <&pinctrl_uart3>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart4 {
|
||||||
|
linux,rs485-enabled-at-boot-time;
|
||||||
|
rs485-rts-active-low;
|
||||||
|
rs485-rts-delay = <0 0>;
|
||||||
|
rts-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&usdhc1 {
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wdog1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
1107
arch/arm64/boot/dts/freescale/imx8mp-aristainetos3a-som-v1.dtsi
Normal file
1107
arch/arm64/boot/dts/freescale/imx8mp-aristainetos3a-som-v1.dtsi
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue