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

LEDE Commits lede-commits at lists.infradead.org
Sat Aug 20 14:18:34 PDT 2022


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/4807bd6a00bcf44dd821047db76a2a799f403cd4

commit 4807bd6a00bcf44dd821047db76a2a799f403cd4
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>
---
 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 +
 target/linux/ramips/mt7621/config-5.15             |  1 +
 7 files changed, 69 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 c3a63fa934..dbafaaddde 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -771,6 +771,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
@@ -780,6 +781,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 0daf15dd4d..0e8244772d 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
@@ -66,8 +66,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 af493789ba..1fa6182c4d 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
@@ -71,9 +71,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 761ed23d77..1b415f3e66 100644
--- a/target/linux/ramips/mt7621/config-5.10
+++ b/target/linux/ramips/mt7621/config-5.10
@@ -100,6 +100,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
diff --git a/target/linux/ramips/mt7621/config-5.15 b/target/linux/ramips/mt7621/config-5.15
index 5fbcefc3ae..cbab647d7c 100644
--- a/target/linux/ramips/mt7621/config-5.15
+++ b/target/linux/ramips/mt7621/config-5.15
@@ -105,6 +105,7 @@ CONFIG_I2C_BOARDINFO=y
 CONFIG_I2C_CHARDEV=y
 CONFIG_I2C_GPIO=y
 CONFIG_I2C_MT7621=y
+CONFIG_ICPLUS_PHY=y
 # CONFIG_INGENIC_CGU_JZ4760 is not set
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_IRQCHIP=y




More information about the lede-commits mailing list