[openwrt/openwrt] qualcommax: ipq807x: mx4200v2: fix LED controller
LEDE Commits
lede-commits at lists.infradead.org
Sun Jan 5 03:12:17 PST 2025
robimarko pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/7ce4ed4829fafdd37a57681304ea91e3749bc3c8
commit 7ce4ed4829fafdd37a57681304ea91e3749bc3c8
Author: Manuel Fombuena <fombuena at outlook.com>
AuthorDate: Thu Jan 2 18:28:16 2025 +0000
qualcommax: ipq807x: mx4200v2: fix LED controller
The Linksys MX4200v2 doesn't have the same LED controller as the MX4200v1 or MX4300. It comes with the STMicroelectronics LED1202 while the others come with the NXP PCA9633.
This LED controller has a driver under development which is currently being reviewed by the respective kernel maintainers. They are currently on v11.
Apart from the changes needed on the MX4200v2, this commit also amends the configuration of other devices affected by this change as the LED controller is no common to all of them as it was originally thought.
Signed-off-by: Manuel Fombuena <fombuena at outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17451
Signed-off-by: Robert Marko <robimarko at gmail.com>
---
.../arch/arm64/boot/dts/qcom/ipq8174-mx4200v1.dts | 29 ++++++++++++++++++++++
.../arch/arm64/boot/dts/qcom/ipq8174-mx4200v2.dts | 26 +++++++++++++++++++
.../arch/arm64/boot/dts/qcom/ipq8174-mx4300.dts | 29 ++++++++++++++++++++++
.../arch/arm64/boot/dts/qcom/ipq8174-mx4x00.dtsi | 26 -------------------
target/linux/qualcommax/image/ipq807x.mk | 12 +++++----
5 files changed, 91 insertions(+), 31 deletions(-)
diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v1.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v1.dts
index 7946e5c54d..12897419bb 100644
--- a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v1.dts
+++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v1.dts
@@ -11,6 +11,35 @@
compatible = "linksys,mx4200v1", "qcom,ipq8074";
};
+&blsp1_i2c2 {
+
+ led-controller at 62 {
+ compatible = "nxp,pca9633";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x62>;
+ nxp,hw-blink;
+
+ led_system_red: led at 0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_RED>;
+ function = LED_FUNCTION_STATUS;
+ };
+
+ led_system_green: led at 1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_STATUS;
+ };
+
+ led_system_blue: led at 2 {
+ reg = <2>;
+ color = <LED_COLOR_ID_BLUE>;
+ function = LED_FUNCTION_STATUS;
+ };
+ };
+};
+
&wifi {
status = "okay";
diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v2.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v2.dts
index 44e1b72f16..c1779a2d48 100644
--- a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v2.dts
+++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4200v2.dts
@@ -10,6 +10,32 @@
compatible = "linksys,mx4200v2", "qcom,ipq8074";
};
+&blsp1_i2c2 {
+
+ led-controller at 58 {
+ compatible = "st,led1202";
+ reg = <0x58>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led_system_green: led at 0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_STATUS;
+ };
+ led_system_red: led at 1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_RED>;
+ function = LED_FUNCTION_STATUS;
+ };
+ led_system_blue: led at 2 {
+ reg = <2>;
+ color = <LED_COLOR_ID_BLUE>;
+ function = LED_FUNCTION_STATUS;
+ };
+ };
+};
+
&wifi {
status = "okay";
diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4300.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4300.dts
index 1477019ab9..d09710b9c4 100644
--- a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4300.dts
+++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4300.dts
@@ -242,6 +242,35 @@
};
};
+&blsp1_i2c2 {
+
+ led-controller at 62 {
+ compatible = "nxp,pca9633";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x62>;
+ nxp,hw-blink;
+
+ led_system_red: led at 0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_RED>;
+ function = LED_FUNCTION_STATUS;
+ };
+
+ led_system_green: led at 1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_STATUS;
+ };
+
+ led_system_blue: led at 2 {
+ reg = <2>;
+ color = <LED_COLOR_ID_BLUE>;
+ function = LED_FUNCTION_STATUS;
+ };
+ };
+};
+
&dp2 {
status = "okay";
phy-handle = <&qca8075_1>;
diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4x00.dtsi b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4x00.dtsi
index 84e68dae35..2dca7ffd3b 100644
--- a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4x00.dtsi
+++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8174-mx4x00.dtsi
@@ -94,32 +94,6 @@
&blsp1_i2c2 {
status = "okay";
-
- led-controller at 62 {
- compatible = "nxp,pca9633";
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0x62>;
- nxp,hw-blink;
-
- led_system_red: led at 0 {
- reg = <0>;
- color = <LED_COLOR_ID_RED>;
- function = LED_FUNCTION_STATUS;
- };
-
- led_system_green: led at 1 {
- reg = <1>;
- color = <LED_COLOR_ID_GREEN>;
- function = LED_FUNCTION_STATUS;
- };
-
- led_system_blue: led at 2 {
- reg = <2>;
- color = <LED_COLOR_ID_BLUE>;
- function = LED_FUNCTION_STATUS;
- };
- };
};
&mdio {
diff --git a/target/linux/qualcommax/image/ipq807x.mk b/target/linux/qualcommax/image/ipq807x.mk
index 260b358ce8..731c2ba0ca 100644
--- a/target/linux/qualcommax/image/ipq807x.mk
+++ b/target/linux/qualcommax/image/ipq807x.mk
@@ -167,7 +167,6 @@ define Device/linksys_mx
SOC := ipq8072
IMAGES += factory.bin
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=$$$$(DEVICE_MODEL)
- DEVICE_PACKAGES := kmod-leds-pca963x
endef
define Device/linksys_mx4x00
@@ -180,13 +179,15 @@ define Device/linksys_mx4200v1
$(call Device/linksys_mx4x00)
DEVICE_MODEL := MX4200
DEVICE_VARIANT := v1
- DEVICE_PACKAGES += kmod-bluetooth
+ DEVICE_PACKAGES += kmod-bluetooth kmod-leds-pca963x
endef
TARGET_DEVICES += linksys_mx4200v1
define Device/linksys_mx4200v2
- $(call Device/linksys_mx4200v1)
+ $(call Device/linksys_mx4x00)
+ DEVICE_MODEL := MX4200
DEVICE_VARIANT := v2
+ DEVICE_PACKAGES += kmod-bluetooth kmod-leds-st1202
endef
TARGET_DEVICES += linksys_mx4200v2
@@ -198,6 +199,7 @@ define Device/linksys_mx4300
KERNEL_SIZE := 8192k
IMAGE_SIZE := 171264k
NAND_SIZE := 1024m
+ DEVICE_PACKAGES += kmod-leds-pca963x
endef
TARGET_DEVICES += linksys_mx4300
@@ -205,7 +207,7 @@ define Device/linksys_mx5300
$(call Device/linksys_mx)
DEVICE_MODEL := MX5300
DEVICE_PACKAGES += kmod-rtc-ds1307 ipq-wifi-linksys_mx5300 \
- kmod-ath10k-ct ath10k-firmware-qca9984-ct
+ kmod-ath10k-ct ath10k-firmware-qca9984-ct kmod-leds-pca963x
endef
TARGET_DEVICES += linksys_mx5300
@@ -213,7 +215,7 @@ define Device/linksys_mx8500
$(call Device/linksys_mx)
DEVICE_MODEL := MX8500
DEVICE_PACKAGES += ipq-wifi-linksys_mx8500 kmod-ath11k-pci \
- ath11k-firmware-qcn9074 kmod-bluetooth
+ ath11k-firmware-qcn9074 kmod-bluetooth kmod-leds-pca963x
endef
TARGET_DEVICES += linksys_mx8500
More information about the lede-commits
mailing list