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>
Fri, 26 Aug 2022 20:30:56 +0000 (22:30 +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>
(cherry picked from commit 4807bd6a00bcf44dd821047db76a2a799f403cd4)

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

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 e3608d8d4e464146d88bdcd8efdd6ec870823fb7..7f903485aa9e3055ae0bb490bb8e6d5aab565b45 100644 (file)
@@ -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
index 5ff7dc41998c2fd5c8b52710ebe76a02be660df0..bffb7c18c8fa1bb617d4e1e661972d5c1e590379 100644 (file)
@@ -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"
index 2d119cb55ef2e1a2a5bcb6813ce803cccbcb791b..2a08aded3456bcf951ba6a3349206696b1c6373d 100644 (file)
@@ -63,9 +63,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 804dbe3edbbf0d941213a775df70586b6af21d42..ec6822fa6d2f8b3cc9bdf4a1795c80426723b6de 100644 (file)
@@ -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