]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: imx8mp-skov: add revC BD500 board
authorAhmad Fatoum <a.fatoum@pengutronix.de>
Tue, 18 Feb 2025 18:38:17 +0000 (19:38 +0100)
committerShawn Guo <shawnguo@kernel.org>
Tue, 11 Mar 2025 01:40:17 +0000 (09:40 +0800)
The BD500 replaces the touch display with 3 bicolor LEDs and a push
button on top of a Skov i.MX8-CPU revision C.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm64/boot/dts/freescale/Makefile
arch/arm64/boot/dts/freescale/imx8mp-skov-revc-bd500.dts [new file with mode: 0644]

index 617408934665d856af47cd94f0e63a7714421700..dffe9cb8aff9508ed41000b907d3e16dff97ac95 100644 (file)
@@ -210,6 +210,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-basic.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revb-hdmi.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revb-lt6.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revb-mi1010ait-1cp1.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revc-bd500.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mp-ras314.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-var-som-symphony.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-skov-revc-bd500.dts b/arch/arm64/boot/dts/freescale/imx8mp-skov-revc-bd500.dts
new file mode 100644 (file)
index 0000000..b816c6c
--- /dev/null
@@ -0,0 +1,91 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+
+/dts-v1/;
+
+#include "imx8mp-skov-reva.dtsi"
+
+/ {
+       model = "SKOV IMX8MP CPU revC - bd500";
+       compatible = "skov,imx8mp-skov-revc-bd500", "fsl,imx8mp";
+
+       leds {
+               led_system_red: led-3 {
+                       label = "bd500:system:red";
+                       color = <LED_COLOR_ID_RED>;
+                       /* Inverted compared to others due to NMOS inverter */
+                       gpios = <&gpioexp 3 GPIO_ACTIVE_HIGH>;
+                       default-state = "off";
+               };
+
+               led_system_green: led-4 {
+                       label = "bd500:system:green";
+                       color = <LED_COLOR_ID_GREEN>;
+                       gpios = <&gpioexp 2 GPIO_ACTIVE_LOW>;
+                       default-state = "on";
+               };
+
+               led_lan1_red: led-5 {
+                       label = "bd500:lan1:act";
+                       color = <LED_COLOR_ID_RED>;
+                       linux,default-trigger = "netdev";
+                       gpios = <&gpioexp 1 GPIO_ACTIVE_LOW>;
+               };
+
+               led_lan1_green: led-6 {
+                       label = "bd500:lan1:link";
+                       color = <LED_COLOR_ID_GREEN>;
+                       linux,default-trigger = "netdev";
+                       gpios = <&gpioexp 0 GPIO_ACTIVE_LOW>;
+               };
+
+               led_lan2_red: led-7 {
+                       label = "bd500:lan2:act";
+                       color = <LED_COLOR_ID_RED>;
+                       linux,default-trigger = "netdev";
+                       gpios = <&gpioexp 6 GPIO_ACTIVE_LOW>;
+               };
+
+               led_lan2_green: led-8 {
+                       label = "bd500:lan2:link";
+                       color = <LED_COLOR_ID_GREEN>;
+                       linux,default-trigger = "netdev";
+                       gpios = <&gpioexp 7 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+
+               button-1 {
+                       label = "S1";
+                       linux,code = <KEY_CONFIG>;
+                       gpios = <&gpioexp 5 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&i2c2 {
+       clock-frequency = <100000>;
+       status = "okay";
+
+       gpioexp: gpio@20 {
+               compatible = "nxp,pca6408";
+               reg = <0x20>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_gpio_exp>;
+               interrupts-extended = <&gpio4 28 IRQ_TYPE_EDGE_FALLING>;
+               reset-gpios = <&gpio4 29 GPIO_ACTIVE_LOW>;
+               vcc-supply = <&reg_vdd_3v3>;
+               gpio-controller;
+               #gpio-cells = <2>;
+       };
+};
+
+&iomuxc {
+       pinctrl_gpio_exp: gpioexpgrp {
+               fsl,pins = <
+                       MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28      0x0
+                       MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29       0x0
+               >;
+       };
+};