[openwrt/openwrt] ramips: fix GB-PC1 and GB-PC2 device support

LEDE Commits lede-commits at lists.infradead.org
Fri Aug 26 15:22:56 PDT 2022


hauke pushed a commit to openwrt/openwrt.git, branch openwrt-22.03:
https://git.openwrt.org/d1f14d17aaa1866eee1fe2d0d074b2a003c2a210

commit d1f14d17aaa1866eee1fe2d0d074b2a003c2a210
Author: Arınç ÜNAL <arinc.unal at arinc9.com>
AuthorDate: Tue Jul 5 17:10:43 2022 +0300

    ramips: fix GB-PC1 and GB-PC2 device support
    
    Change switch port labels to ethblack & ethblue.
    Change lan1 & lan2 LEDs to ethblack_act & ethblue_act and fix GPIO pins.
    Add the external phy with ethyellow label on the GB-PC2 devicetree.
    Do not claim rgmii2 as gpio, it's used for ethernet with rgmii2 function.
    Enable ICPlus PHY driver for IP1001 which GB-PC2 has got.
    Update interface name and change netdev function.
    Enable lzma compression to make up for the increased size of the kernel.
    Make spi flash bindings on par with mainline Linux to fix read errors.
    
    Tested on GB-PC2 by Petr.
    
    Tested-by: Petr Louda <petr.louda at outlook.cz>
    Signed-off-by: Arınç ÜNAL <arinc.unal at arinc9.com>
    (cherry picked from commit 4807bd6a00bcf44dd821047db76a2a799f403cd4)
---
 target/linux/ramips/dts/mt7621_gnubee_gb-pc1.dts   | 47 +++++++-------
 target/linux/ramips/dts/mt7621_gnubee_gb-pc2.dts   | 71 +++++++++++-----------
 target/linux/ramips/image/mt7621.mk                |  2 +
 .../ramips/mt7621/base-files/etc/board.d/01_leds   |  4 +-
 .../mt7621/base-files/etc/board.d/02_network       |  6 +-
 target/linux/ramips/mt7621/config-5.10             |  1 +
 6 files changed, 68 insertions(+), 63 deletions(-)

diff --git a/target/linux/ramips/dts/mt7621_gnubee_gb-pc1.dts b/target/linux/ramips/dts/mt7621_gnubee_gb-pc1.dts
index 6854d56266..21a1839127 100644
--- a/target/linux/ramips/dts/mt7621_gnubee_gb-pc1.dts
+++ b/target/linux/ramips/dts/mt7621_gnubee_gb-pc1.dts
@@ -8,10 +8,10 @@
 	model = "GB-PC1";
 
 	aliases {
-		led-boot = &led_status;
-		led-failsafe = &led_status;
-		led-running = &led_status;
-		led-upgrade = &led_status;
+		led-boot = &led_system;
+		led-failsafe = &led_system;
+		led-running = &led_system;
+		led-upgrade = &led_system;
 	};
 
 	keys {
@@ -27,24 +27,26 @@
 	leds {
 		compatible = "gpio-leds";
 
-		system {
-			label = "green:system";
-			gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
+		ethblack_act {
+			label = "green:ethblack_act";
+			gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
 		};
 
-		led_status: status {
-			label = "green:status";
-			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+		ethblue_act {
+			label = "green:ethblue_act";
+			gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
 		};
 
-		lan1 {
-			label = "green:lan1";
-			gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
+		power {
+			label = "green:power";
+			gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "default-on";
 		};
 
-		lan2 {
-			label = "green:lan2";
-			gpios = <&gpio 25 GPIO_ACTIVE_LOW>;
+		led_system: system {
+			label = "green:system";
+			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "disk-activity";
 		};
 	};
 };
@@ -59,9 +61,8 @@
 	flash at 0 {
 		compatible = "jedec,spi-nor";
 		reg = <0>;
-		spi-max-frequency = <80000000>;
+		spi-max-frequency = <50000000>;
 		broken-flash-reset;
-		m25p,fast-read;
 
 		partitions {
 			compatible = "fixed-partitions";
@@ -99,10 +100,6 @@
 	status = "okay";
 };
 
-&ethernet {
-	pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
-};
-
 &gmac0 {
 	nvmem-cells = <&macaddr_factory_e000>;
 	nvmem-cell-names = "mac-address";
@@ -112,19 +109,19 @@
 	ports {
 		port at 0 {
 			status = "okay";
-			label = "lan1";
+			label = "ethblack";
 		};
 
 		port at 4 {
 			status = "okay";
-			label = "lan2";
+			label = "ethblue";
 		};
 	};
 };
 
 &state_default {
 	gpio {
-		groups = "jtag", "rgmii2", "uart3", "wdt";
+		groups = "jtag", "uart3", "wdt";
 		function = "gpio";
 	};
 };
diff --git a/target/linux/ramips/dts/mt7621_gnubee_gb-pc2.dts b/target/linux/ramips/dts/mt7621_gnubee_gb-pc2.dts
index de113c2a5a..cd72ea1d62 100644
--- a/target/linux/ramips/dts/mt7621_gnubee_gb-pc2.dts
+++ b/target/linux/ramips/dts/mt7621_gnubee_gb-pc2.dts
@@ -8,10 +8,10 @@
 	model = "GB-PC2";
 
 	aliases {
-		led-boot = &led_status;
-		led-failsafe = &led_status;
-		led-running = &led_status;
-		led-upgrade = &led_status;
+		led-boot = &led_system;
+		led-failsafe = &led_system;
+		led-running = &led_system;
+		led-upgrade = &led_system;
 	};
 
 	keys {
@@ -27,34 +27,26 @@
 	leds {
 		compatible = "gpio-leds";
 
-		system {
-			label = "green:system";
-			gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
-		};
-
-		led_status: status {
-			label = "green:status";
-			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+		ethblack_act {
+			label = "green:ethblack_act";
+			gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
 		};
 
-		lan1 {
-			label = "green:lan1";
-			gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
+		ethblue_act {
+			label = "green:ethblue_act";
+			gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
 		};
 
-		lan2 {
-			label = "green:lan2";
-			gpios = <&gpio 25 GPIO_ACTIVE_LOW>;
-		};
-
-		lan3-yellow {
-			label = "yellow:lan3";
-			gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+		power {
+			label = "green:power";
+			gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "default-on";
 		};
 
-		lan3-green {
-			label = "green:lan3";
-			gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
+		led_system: system {
+			label = "green:system";
+			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "disk-activity";
 		};
 	};
 };
@@ -69,9 +61,8 @@
 	flash at 0 {
 		compatible = "jedec,spi-nor";
 		reg = <0>;
-		spi-max-frequency = <80000000>;
+		spi-max-frequency = <50000000>;
 		broken-flash-reset;
-		m25p,fast-read;
 
 		partitions {
 			compatible = "fixed-partitions";
@@ -109,32 +100,44 @@
 	status = "okay";
 };
 
-&ethernet {
-	pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
+&gmac0 {
+	nvmem-cells = <&macaddr_factory_e000>;
+	nvmem-cell-names = "mac-address";
 };
 
-&gmac0 {
+&gmac1 {
+	status = "okay";
+	label = "ethyellow";
+	phy-handle = <&ethphy5>;
+
 	nvmem-cells = <&macaddr_factory_e000>;
 	nvmem-cell-names = "mac-address";
 };
 
+&mdio {
+	ethphy5: ethernet-phy at 5 {
+		reg = <5>;
+		phy-mode = "rgmii-rxid";
+	};
+};
+
 &switch0 {
 	ports {
 		port at 0 {
 			status = "okay";
-			label = "lan1";
+			label = "ethblack";
 		};
 
 		port at 4 {
 			status = "okay";
-			label = "lan2";
+			label = "ethblue";
 		};
 	};
 };
 
 &state_default {
 	gpio {
-		groups = "jtag", "rgmii2", "uart3", "wdt";
+		groups = "jtag", "uart3", "wdt";
 		function = "gpio";
 	};
 };
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index e3608d8d4e..7f903485aa 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -697,6 +697,7 @@ TARGET_DEVICES += glinet_gl-mt1300
 
 define Device/gnubee_gb-pc1
   $(Device/dsa-migration)
+  $(Device/uimage-lzma-loader)
   DEVICE_VENDOR := GnuBee
   DEVICE_MODEL := Personal Cloud One
   DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620 -wpad-basic-wolfssl
@@ -706,6 +707,7 @@ TARGET_DEVICES += gnubee_gb-pc1
 
 define Device/gnubee_gb-pc2
   $(Device/dsa-migration)
+  $(Device/uimage-lzma-loader)
   DEVICE_VENDOR := GnuBee
   DEVICE_MODEL := Personal Cloud Two
   DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620 -wpad-basic-wolfssl
diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
index 5ff7dc4199..bffb7c18c8 100644
--- a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
+++ b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
@@ -52,8 +52,8 @@ dlink,dir-882-r1)
 	;;
 gnubee,gb-pc1|\
 gnubee,gb-pc2)
-	ucidef_set_led_netdev "lan1" "lan1" "green:lan1" "lan1"
-	ucidef_set_led_netdev "lan2" "lan2" "green:lan2" "lan2"
+	ucidef_set_led_netdev "ethblack_act" "ethblack act" "green:ethblack_act" "ethblack" "tx rx"
+	ucidef_set_led_netdev "ethblue_act" "ethblue act" "green:ethblue_act" "ethblue" "tx rx"
 	;;
 linksys,e5600)
 	ucidef_set_led_netdev "wan" "wan link" "blue:wan" "wan" "link"
diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
index 2d119cb55e..2a08aded34 100644
--- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
@@ -63,9 +63,11 @@ ramips_setup_interfaces()
 		uci add_list firewall. at zone[1].network='eth_data'
 		uci add_list firewall. at zone[1].network='eth_om'
 		;;
-	gnubee,gb-pc1|\
+	gnubee,gb-pc1)
+		ucidef_set_interface_lan "ethblack ethblue"
+		;;
 	gnubee,gb-pc2)
-		ucidef_set_interface_lan "lan1 lan2"
+		ucidef_set_interface_lan "ethblack ethblue ethyellow"
 		;;
 	linksys,re6500|\
 	netgear,wac104)
diff --git a/target/linux/ramips/mt7621/config-5.10 b/target/linux/ramips/mt7621/config-5.10
index 804dbe3edb..ec6822fa6d 100644
--- a/target/linux/ramips/mt7621/config-5.10
+++ b/target/linux/ramips/mt7621/config-5.10
@@ -101,6 +101,7 @@ CONFIG_I2C_BOARDINFO=y
 CONFIG_I2C_CHARDEV=y
 CONFIG_I2C_GPIO=y
 CONFIG_I2C_MT7621=y
+CONFIG_ICPLUS_PHY=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_IRQCHIP=y
 CONFIG_IRQ_DOMAIN=y




More information about the lede-commits mailing list