summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShiji Yang2025-01-01 08:16:29 +0000
committerHauke Mehrtens2025-01-04 18:25:34 +0000
commitf311c9754c359736481ac2a3285ba16352da46d8 (patch)
tree1cfb1fd97b545d3037f5d84672b64c8464c4b26e
parentf81f707c0595bb990ea579a7edd4dd0d2723ba0b (diff)
downloadopenwrt-f311c9754c359736481ac2a3285ba16352da46d8.tar.gz
ramips: fix SDXC function for mt76x8 one eth port devices
There are only 5 devices in mt76x8 sub-target selected the MTK SDXC driver package. And they are all single ethernet port routers or dev boards: * LinkIt Smart 7688 * Onion Omega2+ * RAVPower RP-WD009 * VoCore VoCore2 * VoCore VoCore2-Lite For these devices, they are using the ephy p1 - p4 as the SDXC IO pins. Therefore, these GPIO pads must be configured in "digital" IO mode. Signed-off-by: Shiji Yang <yangshiji66@qq.com> Link: https://github.com/openwrt/openwrt/pull/17446 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit f5996ae947c88461029060d74ace6a85a30dd9fd)
-rw-r--r--target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts19
-rw-r--r--target/linux/ramips/dts/mt7628an_onion_omega2.dtsi19
-rw-r--r--target/linux/ramips/dts/mt7628an_ravpower_rp-wd009.dts19
-rw-r--r--target/linux/ramips/dts/mt7628an_vocore_vocore2.dtsi23
4 files changed, 80 insertions, 0 deletions
diff --git a/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts b/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts
index 34ef15eca0..fab70dc7b7 100644
--- a/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts
+++ b/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts
@@ -168,8 +168,27 @@
nvmem-cell-names = "mac-address";
};
+&pinctrl {
+ ephy-digital;
+
+ sdxc_iot_mode: sdxc_iot_mode {
+ esd {
+ groups = "esd";
+ function = "iot";
+ };
+
+ sdxc {
+ groups = "sdmode";
+ function = "sdxc";
+ };
+ };
+};
+
&sdhci {
status = "okay";
+
+ pinctrl-0 = <&sdxc_iot_mode>;
+ pinctrl-1 = <&sdxc_iot_mode>;
cd-inverted;
};
diff --git a/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi b/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi
index d279cbcfb8..2d45e0385f 100644
--- a/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi
+++ b/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi
@@ -170,8 +170,27 @@
nvmem-cell-names = "mac-address";
};
+&pinctrl {
+ ephy-digital;
+
+ sdxc_iot_mode: sdxc_iot_mode {
+ esd {
+ groups = "esd";
+ function = "iot";
+ };
+
+ sdxc {
+ groups = "sdmode";
+ function = "sdxc";
+ };
+ };
+};
+
&sdhci {
status = "okay";
+
+ pinctrl-0 = <&sdxc_iot_mode>;
+ pinctrl-1 = <&sdxc_iot_mode>;
};
&wmac {
diff --git a/target/linux/ramips/dts/mt7628an_ravpower_rp-wd009.dts b/target/linux/ramips/dts/mt7628an_ravpower_rp-wd009.dts
index 607787f68e..71c77d7ae6 100644
--- a/target/linux/ramips/dts/mt7628an_ravpower_rp-wd009.dts
+++ b/target/linux/ramips/dts/mt7628an_ravpower_rp-wd009.dts
@@ -84,6 +84,22 @@
};
};
+&pinctrl {
+ ephy-digital;
+
+ sdxc_iot_mode: sdxc_iot_mode {
+ esd {
+ groups = "esd";
+ function = "iot";
+ };
+
+ sdxc {
+ groups = "sdmode";
+ function = "sdxc";
+ };
+ };
+};
+
&state_default {
gpio {
groups = "uart1", "wled_an", "p0led_an", "p2led_an", "p3led_an",
@@ -94,6 +110,9 @@
&sdhci {
status = "okay";
+
+ pinctrl-0 = <&sdxc_iot_mode>;
+ pinctrl-1 = <&sdxc_iot_mode>;
};
&i2c {
diff --git a/target/linux/ramips/dts/mt7628an_vocore_vocore2.dtsi b/target/linux/ramips/dts/mt7628an_vocore_vocore2.dtsi
index 4982d8bccc..da2026ec7d 100644
--- a/target/linux/ramips/dts/mt7628an_vocore_vocore2.dtsi
+++ b/target/linux/ramips/dts/mt7628an_vocore_vocore2.dtsi
@@ -68,6 +68,22 @@
};
};
+&pinctrl {
+ ephy-digital;
+
+ sdxc_iot_mode: sdxc_iot_mode {
+ esd {
+ groups = "esd";
+ function = "iot";
+ };
+
+ sdxc {
+ groups = "sdmode";
+ function = "sdxc";
+ };
+ };
+};
+
&state_default {
gpio {
groups = "wled_an", "refclk", "wdt";
@@ -75,6 +91,13 @@
};
};
+&sdhci {
+ status = "okay";
+
+ pinctrl-0 = <&sdxc_iot_mode>;
+ pinctrl-1 = <&sdxc_iot_mode>;
+};
+
&wmac {
status = "okay";