ramips: Add DTS files for HiWiFi HC5x61 models
authorJohn Crispin <john@openwrt.org>
Mon, 5 Oct 2015 10:25:53 +0000 (10:25 +0000)
committerJohn Crispin <john@openwrt.org>
Mon, 5 Oct 2015 10:25:53 +0000 (10:25 +0000)
HiWiFi HC5661/5761/5861 models are manufactured by http://www.hiwifi.com. These models have similar hardware specs(MT7620A + 128M DDR2 + 16M flash). This patch adds support for them.

The original author is Justin Liu (rssnsj@gmail.com). I ported the patch to trunk and submitted it here with his approval.

v3 fix
  1: Merged most stuff into dtsi file
  2: Remove unnecessary empty lines.

Signed-off-by: Xiaoning Kang <kangxn@163.com>
SVN-Revision: 47112

target/linux/ramips/dts/HC5661.dts [new file with mode: 0644]
target/linux/ramips/dts/HC5761.dts [new file with mode: 0644]
target/linux/ramips/dts/HC5861.dts [new file with mode: 0644]
target/linux/ramips/dts/HC5XXX.dtsi [new file with mode: 0644]

diff --git a/target/linux/ramips/dts/HC5661.dts b/target/linux/ramips/dts/HC5661.dts
new file mode 100644 (file)
index 0000000..b9a717b
--- /dev/null
@@ -0,0 +1,32 @@
+/dts-v1/;
+
+/include/ "HC5XXX.dtsi"
+
+/ {
+       compatible = "HC5661", "ralink,mt7620a-soc";
+       model = "HiWiFi HC5661";
+
+       gpio-leds {
+               compatible = "gpio-leds";
+
+               system {
+                       label = "hc5661:blue:system";
+                       gpios = <&gpio0 9 1>;
+               };
+
+               internet {
+                       label = "hc5661:blue:internet";
+                       gpios = <&gpio0 11 1>;
+               };
+
+               wlan2g {
+                       label = "hc5661:blue:wlan2g";
+                       gpios = <&gpio3 0 1>;
+               };
+
+               wlan5g {
+                       label = "hc5661:blue:wlan5g";
+                       gpios = <&gpio0 7 1>;
+               };
+       };
+};
diff --git a/target/linux/ramips/dts/HC5761.dts b/target/linux/ramips/dts/HC5761.dts
new file mode 100644 (file)
index 0000000..a10904c
--- /dev/null
@@ -0,0 +1,32 @@
+/dts-v1/;
+
+/include/ "HC5XXX.dtsi"
+
+/ {
+       compatible = "HC5761", "ralink,mt7620a-soc";
+       model = "HiWiFi HC5761";
+
+       gpio-leds {
+               compatible = "gpio-leds";
+
+               system {
+                       label = "hc5761:blue:system";
+                       gpios = <&gpio0 9 1>;
+               };
+
+               internet {
+                       label = "hc5761:blue:internet";
+                       gpios = <&gpio0 11 1>;
+               };
+
+               wlan2g {
+                       label = "hc5761:blue:wlan2g";
+                       gpios = <&gpio3 0 1>;
+               };
+
+               wlan5g {
+                       label = "hc5761:blue:wlan5g";
+                       gpios = <&gpio0 7 1>;
+               };
+       };
+};
diff --git a/target/linux/ramips/dts/HC5861.dts b/target/linux/ramips/dts/HC5861.dts
new file mode 100644 (file)
index 0000000..05857ea
--- /dev/null
@@ -0,0 +1,92 @@
+/dts-v1/;
+
+/include/ "HC5XXX.dtsi"
+
+/ {
+       compatible = "HC5861", "ralink,mt7620a-soc";
+       model = "HiWiFi HC5861";
+
+       ethernet@10100000 {
+               status = "okay";
+               mtd-mac-address = <&factory 0x4>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;
+               ralink,port-map = "wllll";
+
+               port@4 {
+                       status = "okay";
+                       phy-handle = <&phy4>;
+                       phy-mode = "rgmii";
+               };
+
+               port@5 {
+                       status = "okay";
+                       phy-handle = <&phy5>;
+                       phy-mode = "rgmii";
+               };
+
+               mdio-bus {
+                       status = "okay";
+
+                       phy4: ethernet-phy@4 {
+                               reg = <4>;
+                               phy-mode = "rgmii";
+                       };
+
+                       phy5: ethernet-phy@5 {
+                               reg = <5>;
+                               phy-mode = "rgmii";
+                       };
+               };
+       };
+
+       gsw@10110000 {
+               ralink,port4 = "gmac";
+       };
+
+       gpio-leds {
+               compatible = "gpio-leds";
+
+               system {
+                       label = "hc5861:blue:system";
+                       gpios = <&gpio0 9 1>;
+               };
+
+               wlan2g {
+                       label = "hc5861:blue:wlan2g";
+                       gpios = <&gpio0 11 1>;
+               };
+
+               internet {
+                       label = "hc5861:blue:internet";
+                       gpios = <&gpio3 0 1>;
+               };
+
+               wlan5g {
+                       label = "hc5861:blue:wlan5g";
+                       gpios = <&gpio0 7 1>;
+               };
+
+               turbo {
+                       label = "hc5861:blue:turbo";
+                       gpios = <&gpio0 10 1>;
+               };
+       };
+
+       gpio_export {
+               compatible = "gpio-export";
+               #size-cells = <0>;
+
+               usbpower {
+                       gpio-export,name = "usbpower";
+                       gpio-export,output = <0>;
+                       gpios = <&gpio0 13 0>;
+               };
+
+               sdpower {
+                       gpio-export,name = "sdpower";
+                       gpio-export,output = <0>;
+                       gpios = <&gpio0 8 0>;
+               };
+       };
+};
diff --git a/target/linux/ramips/dts/HC5XXX.dtsi b/target/linux/ramips/dts/HC5XXX.dtsi
new file mode 100644 (file)
index 0000000..4a1d3ab
--- /dev/null
@@ -0,0 +1,143 @@
+/dts-v1/;
+
+/include/ "mt7620a.dtsi"
+
+/ {
+       chosen {
+               bootargs = "console=ttyS0,115200";
+       };
+
+       palmbus@10000000 {
+               sysc@0 {
+                       ralink,gpiomux = "i2c", "jtag";
+                       ralink,uartmux = "gpio";
+                       ralink,wdtmux = <1>;
+               };
+
+               gpio0: gpio@600 {
+                       status = "okay";
+               };
+
+               gpio2: gpio@660 {
+                       status = "okay";
+               };
+
+               gpio3: gpio@688 {
+                       status = "okay";
+               };
+
+               spi@b00 {
+                       status = "okay";
+
+                       m25p80@0 {
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+                               compatible = "w25q128";
+                               reg = <0 0>;
+                               linux,modalias = "m25p80", "w25q128";
+                               spi-max-frequency = <10000000>;
+
+                               partition@0 {
+                                       label = "u-boot";
+                                       reg = <0x0 0x30000>;
+                               };
+
+                               partition@30000 {
+                                       label = "u-boot-env";
+                                       reg = <0x30000 0x10000>;
+                                       read-only;
+                               };
+
+                               factory: partition@40000 {
+                                       label = "factory";
+                                       reg = <0x40000 0x10000>;
+                               };
+
+                               partition@50000 {
+                                       label = "firmware";
+                                       reg = <0x50000 0xf80000>;
+                               };
+
+                               partition@fd0000 {
+                                       label = "hwf_config";
+                                       reg = <0xfd0000 0x10000>;
+                               };
+
+                               bdinfo: partition@fe0000 {
+                                       label = "bdinfo";
+                                       reg = <0xfe0000 0x10000>;
+                               };
+
+                               partition@ff0000 {
+                                       label = "backup";
+                                       reg = <0xff0000 0x10000>;
+                               };
+                       };
+               };
+       };
+
+       ehci@101c0000 {
+               status = "okay";
+       };
+
+       ohci@101c1000 {
+               status = "okay";
+       };
+
+       ethernet@10100000 {
+               pinctrl-names = "default";
+               pinctrl-0 = <&ephy_pins>;
+               mtd-mac-address = <&factory 0x4>;
+               ralink,port-map = "wllll";
+       };
+
+       sdhci@10130000 {
+               status = "okay";
+       };
+
+       wmac@10180000 {
+               ralink,mtd-eeprom = <&factory 0>;
+       };
+
+       pcie@10140000 {
+               status = "okay";
+       };
+
+       pinctrl {
+               state_default: pinctrl0 {
+                       gpio {
+                               ralink,group = "uartf", "wled", "nd_sd";
+                               ralink,function = "gpio";
+                       };
+
+                       pa {
+                               ralink,group = "pa";
+                               ralink,function = "pa";
+                       };
+               };
+       };
+
+       gpio-keys-polled {
+               compatible = "gpio-keys-polled";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               poll-interval = <20>;
+
+               reset {
+                       label = "reset";
+                       gpios = <&gpio0 12 1>;
+                       linux,code = <0x198>;
+               };
+       };
+
+       gpio_export {
+               compatible = "gpio-export";
+               #size-cells = <0>;
+
+               usbpower {
+                       gpio-export,name = "usbpower";
+                       gpio-export,output = <1>;
+                       gpios = <&gpio0 13 0>;
+               };
+       };
+};