ramips: fix GB-PC1 and GB-PC2 device support
authorArınç ÜNAL <arinc.unal@arinc9.com>
Tue, 5 Jul 2022 14:10:43 +0000 (17:10 +0300)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 20 Aug 2022 20:56:12 +0000 (22:56 +0200)
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@outlook.cz>
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
target/linux/ramips/dts/mt7621_gnubee_gb-pc1.dts
target/linux/ramips/dts/mt7621_gnubee_gb-pc2.dts
target/linux/ramips/image/mt7621.mk
target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
target/linux/ramips/mt7621/base-files/etc/board.d/02_network
target/linux/ramips/mt7621/config-5.10
target/linux/ramips/mt7621/config-5.15

index 6854d56266eac3f9bc590d6fdb194e5ce07186f1..21a18391275bb5d24472ef216d8d1350698de629 100644 (file)
@@ -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 {
        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@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";
        status = "okay";
 };
 
-&ethernet {
-       pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
-};
-
 &gmac0 {
        nvmem-cells = <&macaddr_factory_e000>;
        nvmem-cell-names = "mac-address";
        ports {
                port@0 {
                        status = "okay";
-                       label = "lan1";
+                       label = "ethblack";
                };
 
                port@4 {
                        status = "okay";
-                       label = "lan2";
+                       label = "ethblue";
                };
        };
 };
 
 &state_default {
        gpio {
-               groups = "jtag", "rgmii2", "uart3", "wdt";
+               groups = "jtag", "uart3", "wdt";
                function = "gpio";
        };
 };
index de113c2a5ab06dc9ef9a44dba32c8c036da2961f..cd72ea1d62801bb46ece9b6ef564d345576e5e9b 100644 (file)
@@ -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 {
        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@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";
        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@5 {
+               reg = <5>;
+               phy-mode = "rgmii-rxid";
+       };
+};
+
 &switch0 {
        ports {
                port@0 {
                        status = "okay";
-                       label = "lan1";
+                       label = "ethblack";
                };
 
                port@4 {
                        status = "okay";
-                       label = "lan2";
+                       label = "ethblue";
                };
        };
 };
 
 &state_default {
        gpio {
-               groups = "jtag", "rgmii2", "uart3", "wdt";
+               groups = "jtag", "uart3", "wdt";
                function = "gpio";
        };
 };
index c3a63fa934940bf69e592256e3801f83f637cbbc..dbafaaddde1ddc7191783646d62c84ffce0b2aa9 100644 (file)
@@ -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
index 0daf15dd4dacbf5c63150f2a33061244f668811a..0e8244772d39459c347bcd628510bfc97c098fda 100644 (file)
@@ -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"
index af493789bab7598b95810d7db2a1b4115c7c74fd..1fa6182c4d8786384e6a6ac12f807c41ebf89206 100644 (file)
@@ -71,9 +71,11 @@ ramips_setup_interfaces()
                uci add_list firewall.@zone[1].network='eth_data'
                uci add_list firewall.@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|\
index 761ed23d770881974a0d4e1c02358ecbbf623df2..1b415f3e665bbd2d869b416dcbd691a568b2ab85 100644 (file)
@@ -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
index 5fbcefc3aeaa6d383779b1a42c758217398a6dc6..cbab647d7c3ec795d8b229823283a65a880a3b94 100644 (file)
@@ -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