HG255D is a kind of popular low-end home gateway in China, this patch bring
the the trunk support for it. It is adapted from a local Chinese community (
www.right.com.cn), so credit should given to them.

This patch is tested to work except trivial LED issues.

Signed-off-by: Leon Xu <ylx...@gmail.com>
---

diff -NaurbB
trunk/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
b/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom

---
trunk/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
2013-07-20 17:32:55.082403664 +0800
+++
b/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
2013-07-11 22:47:42.954107000 +0800

@@ -104,7 +104,8 @@
     mzk-w300nh2 | \
     ur-326n4g | \
     ur-336un | \
-    xdxrn502j)
+    xdxrn502j | \
+    hg255d)
         rt2x00_eeprom_extract "factory" 0 512
         ;;

diff -NaurbB trunk/target/linux/ramips/base-files/etc/uci-defaults/01_leds
b/target/linux/ramips/base-files/etc/uci-defaults/01_leds

--- trunk/target/linux/ramips/base-files/etc/uci-defaults/01_leds
2013-07-20 17:32:55.135403721 +0800
+++ b/target/linux/ramips/base-files/etc/uci-defaults/01_leds    2013-07-11
22:49:19.699489000 +0800
@@ -124,6 +124,11 @@

     wcr-150gn)
         set_usb_led "wcr150gn:amber:user"
         ;;
+    hg255d)
+        set_wifi_led "hg255d:wlan"
+        set_usb_led "hg255d:usb"
+        ucidef_set_led_netdev "eth" "Internet" "hg255d:internet" "eth0.2"

+        ;;
     wnce2001)
         set_wifi_led "netgear:green:wlan"
         ;;
diff -NaurbB
trunk/target/linux/ramips/base-files/etc/uci-defaults/02_network
b/target/linux/ramips/base-files/etc/uci-defaults/02_network

--- trunk/target/linux/ramips/base-files/etc/uci-defaults/02_network
2013-07-20 17:32:55.182403772 +0800
+++ b/target/linux/ramips/base-files/etc/uci-defaults/02_network
2013-07-17 23:48:00.407189000 +0800
@@ -192,6 +192,7 @@

         ;;

     rt-n13u | \
+    hg256d    | \
     fonera20n)
         lan_mac=$(mtd_get_mac_binary factory 40)
         wan_mac=$(macaddr_add "$lan_mac" 1)
diff -NaurbB trunk/target/linux/ramips/base-files/lib/ramips.sh
b/target/linux/ramips/base-files/lib/ramips.sh

--- trunk/target/linux/ramips/base-files/lib/ramips.sh    2013-07-20
17:32:54.870403435 +0800
+++ b/target/linux/ramips/base-files/lib/ramips.sh    2013-07-11
22:50:23.130741000 +0800
@@ -217,6 +217,9 @@
     *"XDX RN502J")

         name="xdxrn502j"
         ;;
+    *"HG255D")
+        name="hg255d"
+        ;;
     *)
         name="generic"
         ;;
diff -NaurbB trunk/target/linux/ramips/base-files/lib/upgrade/platform.sh
b/target/linux/ramips/base-files/lib/upgrade/platform.sh

--- trunk/target/linux/ramips/base-files/lib/upgrade/platform.sh
2013-07-20 17:32:54.877403443 +0800
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh    2013-07-19
22:09:09.776006000 +0800
@@ -42,6 +42,7 @@

     rt-n13u | \
     freestation5 | \
     hw550-3g | \
+    hg255d | \
     mofi3500-3gn | \
     mpr-a2 | \
     mzk-w300nh2 | \
diff -NaurbB trunk/target/linux/ramips/dts/HG255D.dts
b/target/linux/ramips/dts/HG255D.dts

--- trunk/target/linux/ramips/dts/HG255D.dts    1970-01-01
08:00:00.000000000 +0800
+++ b/target/linux/ramips/dts/HG255D.dts    2013-07-18 21:24:30.948375000
+0800
@@ -0,0 +1,120 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"

+
+/ {
+    compatible = "HG255D", "ralink,rt3052-soc";
+    model = "HuaWei HG255D";
+
+    palmbus@10000000 {
+        sysc@0 {
+            ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio",
"sdram", "rgmii";

+            ralink,uartmux = "gpio";
+            ralink,wdtmux = <1>;
+        };
+
+        gpio0: gpio@600 {
+            status = "okay";
+        };
+    };
+
+    cfi@1f000000 {
+        compatible = "cfi-flash";

+        reg = <0x1f000000 0x1000000>;
+
+        bank-width = <2>;
+        device-width = <2>;
+        #address-cells = <1>;
+        #size-cells = <1>;
+
+        partition@0 {
+            label = "u-boot";

+            reg = <0x0 0x40000>;
+            read-only;
+        };
+
+        partition@30000 {
+            label = "u-boot-env";
+            reg = <0x40000 0x20000>;
+            read-only;
+        };
+
+        factory: partition@60000 {

+            label = "factory";
+            reg = <0x60000 0x20000>;
+            read-only;
+        };
+
+        partition@80000 {
+            label = "firmware";
+            reg = <0x80000 0xf80000>;
+        };
+    };

+
+    gpio-leds {
+        compatible = "gpio-leds";
+        power {
+            label = "hg255d:power";
+            gpios = <&gpio0 8 1>;
+        };
+        internet {
+            label = "hg255d:internet";

+            gpios = <&gpio0 13 1>;
+        };
+        wifi {
+            label = "hg255d:wlan";
+            gpios = <&gpio0 14 1>;
+        };
+        usb {
+            label = "hg255d:usb";
+            gpios = <&gpio0 9 1>;

+        };
+        wps {
+            label = "hg255d:wps";
+            gpios = <&gpio0 12 1>;
+        };
+        voice {
+            label = "hg255d:voice";
+            gpios = <&gpio0 5 1>;
+        };
+    };
+

+    gpio-keys-polled {
+        compatible = "gpio-keys-polled";
+        #address-cells = <1>;
+        #size-cells = <0>;
+        poll-interval = <10>;
+        reset {
+            label = "reset";
+            gpios = <&gpio0 4 1>;

+            linux,code = <0x198>;
+        };
+        wps {
+            label = "wps";
+            gpios = <&gpio0 10 1>;
+            linux,code = <0x211>;
+        };
+        rfkill {
+            label = "rfkill";

+            gpios = <&gpio0 0 1>;
+            linux,code = <0xf7>;
+        };
+    };
+
+    ethernet@10100000 {
+        status = "okay";
+    };
+
+    esw@10110000 {
+        status = "okay";
+        ralink,portmap = <0x2f>;

+    };
+
+    wmac@10180000 {
+        status = "okay";
+    };
+
+    otg@101c0000 {
+        status = "okay";
+    };
+};
diff -NaurbB trunk/target/linux/ramips/image/Makefile
b/target/linux/ramips/image/Makefile

--- trunk/target/linux/ramips/image/Makefile    2013-07-20
17:32:52.403400790 +0800
+++ b/target/linux/ramips/image/Makefile    2013-07-13 16:13:45.581761000
+0800
@@ -114,6 +114,15 @@
 BuildFirmware/Default8M/squashfs=$(call
BuildFirmware/OF,$(1),$(2),$(3),$(ralink_default_fw_size_8M),$(4))

 BuildFirmware/Default8M/initramfs=$(call
BuildFirmware/OF/initramfs,$(1),$(2),$(3),$(4))

+# Build images for default ralink layout for 16MB flash
+# kernel + roots = 0xf80000
+# $(1) = squashfs/initramfs

+# $(2) = lowercase board name
+# $(3) = dts file
+ralink_default_fw_size_16M=16252928
+BuildFirmware/Default16M/squashfs=$(call
BuildFirmware/OF,$(1),$(2),$(3),$(ralink_default_fw_size_16M),$(4))
+BuildFirmware/Default16M/initramfs=$(call
BuildFirmware/OF/initramfs,$(1),$(2),$(3),$(4))

+
 # Build images for a custom sized flash layout
 # $(1) = squashfs/initramfs
 # $(2) = lowercase board name
@@ -328,6 +337,8 @@

 Image/Build/Profile/RT-N13U=$(call
BuildFirmware/Default8M/$(1),$(1),rt-n13u,RT-N13U)


+Image/Build/Profile/HG255D=$(call
BuildFirmware/Default16M/$(1),$(1),hg255d,HG255D)
+
 Image/Build/Profile/FREESTATION5=$(call
BuildFirmware/Default8M/$(1),$(1),freestation5,FREESTATION5)

 Image/Build/Profile/MOFI3500-3GN=$(call
BuildFirmware/Default8M/$(1),$(1),mofi3500-3gn,MOFI3500-3GN)

@@ -460,6 +471,7 @@
     $(call Image/Build/Profile/F5D8235V2,$(1))
     $(call Image/Build/Profile/FONERA20N,$(1))
     $(call Image/Build/Profile/FREESTATION5,$(1))
+    $(call Image/Build/Profile/HG255D,$(1))
     $(call Image/Build/Profile/HW550-3G,$(1))

     $(call Image/Build/Profile/MOFI3500-3GN,$(1))
     $(call Image/Build/Profile/MPRA2,$(1))
diff -NaurbB 
trunk/target/linux/ramips/rt305x/profiles/hg255d.mkb/target/linux/ramips/rt305x/profiles/
hg255d.mk

--- trunk/target/linux/ramips/rt305x/profiles/hg255d.mk    1970-01-01
08:00:00.000000000 +0800
+++ b/target/linux/ramips/rt305x/profiles/hg255d.mk    2013-07-11
22:46:48.735895000 +0800

@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/HG255D

+    NAME:=HuaWei HG255D
+    PACKAGES:=kmod-leds-gpio kmod-rt2800-pci wpad-mini
kmod-usb-rt305x-dwc_otg
+endef
+
+define Profile/HG255D/Description
+    Package set for HuaWei HG255D.
+endef
+
+$(eval $(call Profile,HG255D))

---
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to