summaryrefslogtreecommitdiffstats
path: root/master/Hans_Ulli_Kroll.patch
diff options
context:
space:
mode:
Diffstat (limited to 'master/Hans_Ulli_Kroll.patch')
-rw-r--r--master/Hans_Ulli_Kroll.patch989
1 files changed, 989 insertions, 0 deletions
diff --git a/master/Hans_Ulli_Kroll.patch b/master/Hans_Ulli_Kroll.patch
new file mode 100644
index 0000000..895af38
--- /dev/null
+++ b/master/Hans_Ulli_Kroll.patch
@@ -0,0 +1,989 @@
+commit 738b0b62be025b09ea71cb59debc354df1b91d5d
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Thu Oct 6 12:22:41 2016 +0200
+
+ build integration into LEDE cde6ebc3f670c245172ca89cca94e454f1c00937
+
+diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk
+index b1afb82..b7ca97f 100644
+--- a/target/linux/ramips/image/mt7620.mk
++++ b/target/linux/ramips/image/mt7620.mk
+@@ -413,3 +413,23 @@ define Device/tiny-ac
+ DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
+ endef
+ TARGET_DEVICES += tiny-ac
++
++define Device/br-6478ac-v2
++ DTS := BR-6478AC-V2
++ DEVICE_TITLE := Edimax BR-6478AC-V2
++ BLOCKSIZE := 4k
++ IMAGES += factory.bin
++ IMAGE_SIZE := $(ralink_default_fw_size_8M)
++ IMAGE/sysupgrade.bin := \
++ append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
++ seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
++ pad-rootfs | check-size $$$$(IMAGE_SIZE)
++ IMAGE/factory.bin := \
++ append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
++ append-rootfs | pad-rootfs -x 64 | \
++ seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
++ seama-seal -m "signature=wapn22_dlink.2013gui_dap1320b" | \
++ check-size $$$$(IMAGE_SIZE)
++ DEVICE_PACKAGES := kmod-mt76
++endef
++TARGET_DEVICES += br-6478ac-v2
+commit 63f49a2f6af6d9b09a3cc2dcd980ed2375a51690
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Thu Oct 6 12:23:48 2016 +0200
+
+ first DTS and update
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit ebb1dc8ea31b9c14a4a7eccba51e2d40c8237de9)
+
+diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network
+index 6157d87..6783576 100755
+--- a/target/linux/ramips/base-files/etc/board.d/02_network
++++ b/target/linux/ramips/base-files/etc/board.d/02_network
+@@ -177,6 +177,7 @@ ramips_setup_interfaces()
+ ucidef_add_switch "switch0" \
+ "1:lan" "0:wan" "6@eth0"
+ ;;
++ br-6478ac-v2|\
+ e1700|\
+ mt7620a_mt7530)
+ ucidef_add_switch "switch1" \
+diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
+index 10139d7..0fa260b 100755
+--- a/target/linux/ramips/base-files/lib/ramips.sh
++++ b/target/linux/ramips/base-files/lib/ramips.sh
+@@ -76,6 +76,9 @@ ramips_board_detect() {
+ *"BR-6475nD")
+ name="br-6475nd"
+ ;;
++ *"BR-6478AC-v2")
++ name="br-6478ac-v2"
++ ;;
+ *"Broadway")
+ name="broadway"
+ ;;
+commit 85eacfde9ea48acf0c90ca3ad3ada9b8e9e8577c
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Thu Oct 6 12:24:37 2016 +0200
+
+ add DTS
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 3e92f50702735086e69994fc87177e4bb49df8a5)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+new file mode 100644
+index 0000000..a428652
+--- /dev/null
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -0,0 +1,179 @@
++/*
++ * Device Tree file for the Edimax BR-6478AC V2
++ * based on Linksys E1700
++ *
++ * Copyright (C) 2016 Hasn Ulli Kroll <ulli.kroll@googlemail.com>
++ *
++ * This file is licensed under the terms of the GNU General Public
++ * License version 2. This program is licensed "as is" without any
++ * warranty of any kind, whether express or implied.
++ */
++
++/dts-v1/;
++
++/include/ "mt7620a.dtsi"
++
++/ {
++ compatible = "BR-6478AC-V2", "ralink,mt7620a-soc";
++ model = "Edimax BR-6478ACV2";
++
++ chosen {
++ bootargs = "console=ttyS0,57600";
++ };
++
++ palmbus@10000000 {
++ spi@b00 {
++ status = "okay";
++
++ m25p80@0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "mx25l6405d";
++ reg = <0 0>;
++ linux,modalias = "m25p80", "mx25l6405d";
++ spi-max-frequency = <10000000>;
++
++ partition@0 {
++ label = "u-boot";
++ reg = <0x0 0x30000>;
++ read-only;
++ };
++
++ partition@30000 {
++ label = "u-boot-env";
++ reg = <0x30000 0x10000>;
++ read-only;
++ };
++
++ factory: partition@40000 {
++ label = "factory";
++ reg = <0x40000 0x10000>;
++ read-only;
++ };
++
++ partition@50000 {
++ label = "cimage";
++ reg = <0x50000 0x20000>;
++ read-only;
++ };
++
++ partition@70000 {
++ label = "firmware";
++ reg = <0x00070000 0x00790000>;
++ };
++ };
++ };
++ };
++
++ pinctrl {
++ state_default: pinctrl0 {
++ gpio {
++ ralink,group = "i2c", "uartf";
++ ralink,function = "gpio";
++ };
++ };
++ };
++
++ ethernet@10100000 {
++ status = "okay";
++ mtd-mac-address = <&factory 0x28>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;
++
++ port@5 {
++ status = "okay";
++ mediatek,fixed-link = <1000 1 1 1>;
++ phy-mode = "rgmii";
++ };
++
++ mdio-bus {
++ status = "okay";
++
++ phy0: ethernet-phy@0 {
++ reg = <0>;
++ phy-mode = "rgmii";
++ };
++
++ phy1: ethernet-phy@1 {
++ reg = <1>;
++ phy-mode = "rgmii";
++ };
++
++ phy2: ethernet-phy@2 {
++ reg = <2>;
++ phy-mode = "rgmii";
++ };
++
++ phy3: ethernet-phy@3 {
++ reg = <3>;
++ phy-mode = "rgmii";
++ };
++
++ phy4: ethernet-phy@4 {
++ reg = <4>;
++ phy-mode = "rgmii";
++ };
++
++ phy1f: ethernet-phy@1f {
++ reg = <0x1f>;
++ phy-mode = "rgmii";
++ };
++ };
++ };
++
++ gsw@10110000 {
++ mediatek,port4 = "gmac";
++ mediatek,mt7530 = <1>;
++ };
++
++ wmac@10180000 {
++ ralink,mtd-eeprom = <&factory 0>;
++ };
++
++ gpio-keys-polled {
++ compatible = "gpio-keys-polled";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ poll-interval = <20>;
++
++ reset {
++ label = "reset";
++ gpios = <&gpio0 1 0>;
++ linux,code = <0x198>;
++ };
++
++ wps {
++ label = "wps";
++ gpios = <&gpio0 2 0>;
++ linux,code = <0x211>;
++ };
++ };
++
++ gpio-leds {
++ compatible = "gpio-leds";
++
++ power {
++ label = "br-6478ac-v2:green:power";
++ gpios = <&gpio0 10 1>;
++ };
++
++ wan {
++ label = "br-6478ac-v2:green:wps";
++ gpios = <&gpio0 12 1>;
++ };
++ };
++
++ pcie@10140000 {
++ status = "okay";
++ };
++
++ ehci@101c0000 {
++ status = "okay";
++ };
++
++ ohci@101c1000 {
++ status = "okay";
++ };
++};
++
++
+commit d5dce4b6dada43f9b582eb089527beff4c196517
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Thu Oct 6 12:27:10 2016 +0200
+
+ update nor in DTS
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 3d80ef2f6f078d037578e0d9e401fe56adb22927)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index a428652..8b4c260 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -28,7 +28,7 @@
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+- compatible = "mx25l6405d";
++ compatible = "jedec,spi-nor";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l6405d";
+ spi-max-frequency = <10000000>;
+commit b72722ae171cfd9924a481f88ba377543b713fa1
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Wed Aug 31 12:33:13 2016 +0200
+
+ fix in dts, wrong name compatible string
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 1c5f34583369b06c5345f74550b7056de2b240b0)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index 8b4c260..0951b5a 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -14,7 +14,7 @@
+ /include/ "mt7620a.dtsi"
+
+ / {
+- compatible = "BR-6478AC-V2", "ralink,mt7620a-soc";
++ compatible = "edimax,br-6478ac-v2", "ralink,mt7620a-soc";
+ model = "Edimax BR-6478ACV2";
+
+ chosen {
+commit 1a0b201045c4fd03458feaae07cb730d446e4485
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Thu Oct 6 12:49:23 2016 +0200
+
+ update from oPENWRT forum, need author
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit ed77ae35eb477c52df09aa6552165ae89598469c)
+
+diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds
+index 460253c..48126f2 100755
+--- a/target/linux/ramips/base-files/etc/board.d/01_leds
++++ b/target/linux/ramips/base-files/etc/board.d/01_leds
+@@ -74,6 +74,12 @@ bc2)
+ br-6425)
+ set_wifi_led "$board:orange:wlan"
+ ;;
++br-6478ac-v2)
++ ucidef_set_led_default "power" "POWER" "$board:white:power" "1"
++ ucidef_set_led_default "wan" "WAN LED" "$board:blue:wan" "1"
++ set_wifi_led "$board:blue:wlan"
++ set_usb_led "$board:blue:usb"
++ ;;
+ broadway)
+ set_usb_led "$board:red:diskmounted"
+ set_wifi_led "$board:red:wps_active"
+diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network
+index 6783576..8a9cb47 100755
+--- a/target/linux/ramips/base-files/etc/board.d/02_network
++++ b/target/linux/ramips/base-files/etc/board.d/02_network
+@@ -154,6 +154,14 @@ ramips_setup_interfaces()
+ ucidef_add_switch "switch0" \
+ "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
+ ;;
++
++ br-6478ac-v2)
++ // ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
++ ucidef_set_interface_lan "eth0.1"
++ ucidef_add_switch "switch1" \
++ "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
++ ;;
++
+ cf-wr800n|\
+ ex2700)
+ ucidef_add_switch "switch0" \
+@@ -282,6 +290,11 @@ ramips_setup_macs()
+ lan_mac=$(cat /sys/class/net/eth0/address)
+ wan_mac=$(mtd_get_mac_binary devdata 7)
+ ;;
++ br-6478ac-v2)
++ lan_mac=$(cat /sys/class/net/eth0/address)
++ wan_mac=$(cat /sys/class/net/eth0.2/address)
++ //wan_mac=$(mtd_get_mac_binary devdata 7)
++ ;;
+ cy-swr1100|\
+ dir-645)
+ lan_mac=$(mtd_get_mac_ascii nvram lanmac)
+diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
+index 0c5abb2..c19ab08 100644
+--- a/target/linux/ramips/base-files/etc/diag.sh
++++ b/target/linux/ramips/base-files/etc/diag.sh
+@@ -33,6 +33,9 @@ get_status_led() {
+ xdxrn502j)
+ status_led="$board:green:power"
+ ;;
++ br-6478ac-v2)
++ status_led="$board:white:power"
++ ;;
+ a5-v11|\
+ cs-qr10|\
+ d105|\
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index 0951b5a..b32a7df 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -18,10 +18,16 @@
+ model = "Edimax BR-6478ACV2";
+
+ chosen {
+- bootargs = "console=ttyS0,57600";
++ bootargs = "console=ttyS0,57600";
+ };
+
+ palmbus@10000000 {
++ gpio1: gpio@638 {
++ satus = "okay";
++ };
++ gpio2: gpio@660 {
++ status = "okay";
++ };
+ spi@b00 {
+ status = "okay";
+
+@@ -74,6 +80,14 @@
+ };
+ };
+
++ usbphy: usbphy {
++ compatible = "mediatek,mt7620-usbphy";
++ #phy-cells = <1>;
++ // resets = <&rstctrl 22 &rstctrl 25>;
++ resets = <&rstctrl 22 &rstctrl 19>;
++ reset-names = "host", "device";
++ };
++
+ ethernet@10100000 {
+ status = "okay";
+ mtd-mac-address = <&factory 0x28>;
+@@ -138,14 +152,14 @@
+
+ reset {
+ label = "reset";
+- gpios = <&gpio0 1 0>;
+- linux,code = <0x198>;
++ gpios = <&gpio0 12 1>;
++ linux,code = <0x101>;
+ };
+
+ wps {
+ label = "wps";
+- gpios = <&gpio0 2 0>;
+- linux,code = <0x211>;
++ gpios = <&gpio0 1 1>;
++ linux,code = <0x100>;
+ };
+ };
+
+@@ -153,13 +167,20 @@
+ compatible = "gpio-leds";
+
+ power {
+- label = "br-6478ac-v2:green:power";
+- gpios = <&gpio0 10 1>;
++ label = "br-6478ac-v2:white:power";
++ gpios = <&gpio0 11 1>;
+ };
+-
+ wan {
+- label = "br-6478ac-v2:green:wps";
+- gpios = <&gpio0 12 1>;
++ label = "br-6478ac-v2:blue:wan";
++ gpios = <&gpio0 7 1>;
++ };
++ wlan {
++ label = "br-6478ac-v2:blue:wlan";
++ gpios = <&gpio0 10 1>;
++ };
++ usb {
++ label = "br-6478ac-v2:blue:usb";
++ gpios = <&gpio0 14 1>;
+ };
+ };
+
+@@ -169,10 +190,14 @@
+
+ ehci@101c0000 {
+ status = "okay";
++ interrupt-parent = <&intc>;
++ interrupts = <18>;
+ };
+
+ ohci@101c1000 {
+ status = "okay";
++ interrupt-parent = <&intc>;
++ interrupts = <18>;
+ };
+ };
+
+commit be7a5d4f45b8090cf39da90840d19dcf0cbf68cc
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Mon Oct 10 06:33:31 2016 +0200
+
+ change Image size
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 19652a6a2f07f804ffbcf254779ae1a56e7eddf7)
+
+diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk
+index b7ca97f..9454865 100644
+--- a/target/linux/ramips/image/mt7620.mk
++++ b/target/linux/ramips/image/mt7620.mk
+@@ -419,10 +419,10 @@ define Device/br-6478ac-v2
+ DEVICE_TITLE := Edimax BR-6478AC-V2
+ BLOCKSIZE := 4k
+ IMAGES += factory.bin
+- IMAGE_SIZE := $(ralink_default_fw_size_8M)
++ IMAGE_SIZE := 7616k
+ IMAGE/sysupgrade.bin := \
+ append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
+- seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
++ seama -m "dev=/dev/mtdblock/5" -m "type=firmware" | \
+ pad-rootfs | check-size $$$$(IMAGE_SIZE)
+ IMAGE/factory.bin := \
+ append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
+commit 195015bf6b19e1c4f822afc4fdf2513fa380c262
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Mon Oct 10 06:46:00 2016 +0200
+
+ add rohan
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 3813cdf50cf50312845d99158125f4b759f02e5b)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index b32a7df..14cc054 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -2,7 +2,8 @@
+ * Device Tree file for the Edimax BR-6478AC V2
+ * based on Linksys E1700
+ *
+- * Copyright (C) 2016 Hasn Ulli Kroll <ulli.kroll@googlemail.com>
++ * Copyright (C) 2016 Rohan Murch <rohan.murch@gmail.com>
++ * Copyright (C) 2016 Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2. This program is licensed "as is" without any
+commit 57ab022f3d3aaccbeab94ca95bedb00cba3aa4ca
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Mon Oct 10 17:42:33 2016 +0200
+
+ fix mac address
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 3713190ded352690ba4dadf9c08460808d7f91fe)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index 14cc054..dc49d6d 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -39,31 +39,31 @@
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l6405d";
+ spi-max-frequency = <10000000>;
+-
++
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+-
++
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+-
++
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+-
++
+ partition@50000 {
+ label = "cimage";
+ reg = <0x50000 0x20000>;
+ read-only;
+ };
+-
++
+ partition@70000 {
+ label = "firmware";
+ reg = <0x00070000 0x00790000>;
+@@ -88,10 +88,10 @@
+ resets = <&rstctrl 22 &rstctrl 19>;
+ reset-names = "host", "device";
+ };
+-
++
+ ethernet@10100000 {
+ status = "okay";
+- mtd-mac-address = <&factory 0x28>;
++ mtd-mac-address = <&factory 0x4>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;
+
+@@ -144,7 +144,7 @@
+ wmac@10180000 {
+ ralink,mtd-eeprom = <&factory 0>;
+ };
+-
++
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+@@ -202,4 +202,4 @@
+ };
+ };
+
+-
++
+commit c1e3abd23e7b9e479fe0befc2472431e10524538
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Mon Oct 10 19:02:17 2016 +0200
+
+ add more gpios
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 308d1fd214eb25823ce1b88aa0e4dd45d01cb6cd)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index dc49d6d..9fb6575 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -74,10 +74,10 @@
+
+ pinctrl {
+ state_default: pinctrl0 {
+- gpio {
+- ralink,group = "i2c", "uartf";
+- ralink,function = "gpio";
+- };
++ gpio {
++ ralink,group = "i2c", "uartf", "wdt", "pa", "ephy", "nd_sd", "wled";
++ ralink,function = "gpio";
++ };
+ };
+ };
+
+commit ad587c0868f957d5535bfad37fed3978457499c2
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Tue Oct 11 20:40:01 2016 +0200
+
+ ass 5ghz mac
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit c2fd19ad18b5c25ec49e2370c55ed40f1ae038d5)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index 9fb6575..5426b42 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -187,6 +187,15 @@
+
+ pcie@10140000 {
+ status = "okay";
++ pcie-bridge {
++ mt76@0,0 {
++ reg = <0x0000 0 0 0 0>;
++ device_type = "pci";
++ mediatek,mtd-eeprom = <&factory 0x8000>;
++ mediatek,2ghz = <0>;
++ };
++ };
++
+ };
+
+ ehci@101c0000 {
+commit cf11599d082187f99f10da38dfd6844c1532f232
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Tue Oct 11 21:10:31 2016 +0200
+
+ update fix reset button
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 025f12b538493e1a5dfe3af398c81573fb3e8f5c)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index 5426b42..1044131 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -153,14 +153,8 @@
+
+ reset {
+ label = "reset";
+- gpios = <&gpio0 12 1>;
+- linux,code = <0x101>;
+- };
+-
+- wps {
+- label = "wps";
+- gpios = <&gpio0 1 1>;
+- linux,code = <0x100>;
++ gpios = <&gpio0 2 1>;
++ linux,code = <0x198>;
+ };
+ };
+
+commit f51ece4199d0805920a8fd09f422860aa198cfef
+Author: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+Date: Wed Oct 12 19:19:39 2016 +0200
+
+ fix portmap on switch but no GBits/s on lan and dts rewrite
+
+ Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
+ (cherry picked from commit 87a3b8fe350028ba19ad35803808be5ce2d2cb44)
+
+diff --git a/target/linux/ramips/dts/BR-6478AC-V2.dts b/target/linux/ramips/dts/BR-6478AC-V2.dts
+index 1044131..ac870cc 100644
+--- a/target/linux/ramips/dts/BR-6478AC-V2.dts
++++ b/target/linux/ramips/dts/BR-6478AC-V2.dts
+@@ -22,129 +22,6 @@
+ bootargs = "console=ttyS0,57600";
+ };
+
+- palmbus@10000000 {
+- gpio1: gpio@638 {
+- satus = "okay";
+- };
+- gpio2: gpio@660 {
+- status = "okay";
+- };
+- spi@b00 {
+- status = "okay";
+-
+- m25p80@0 {
+- #address-cells = <1>;
+- #size-cells = <1>;
+- compatible = "jedec,spi-nor";
+- reg = <0 0>;
+- linux,modalias = "m25p80", "mx25l6405d";
+- spi-max-frequency = <10000000>;
+-
+- partition@0 {
+- label = "u-boot";
+- reg = <0x0 0x30000>;
+- read-only;
+- };
+-
+- partition@30000 {
+- label = "u-boot-env";
+- reg = <0x30000 0x10000>;
+- read-only;
+- };
+-
+- factory: partition@40000 {
+- label = "factory";
+- reg = <0x40000 0x10000>;
+- read-only;
+- };
+-
+- partition@50000 {
+- label = "cimage";
+- reg = <0x50000 0x20000>;
+- read-only;
+- };
+-
+- partition@70000 {
+- label = "firmware";
+- reg = <0x00070000 0x00790000>;
+- };
+- };
+- };
+- };
+-
+- pinctrl {
+- state_default: pinctrl0 {
+- gpio {
+- ralink,group = "i2c", "uartf", "wdt", "pa", "ephy", "nd_sd", "wled";
+- ralink,function = "gpio";
+- };
+- };
+- };
+-
+- usbphy: usbphy {
+- compatible = "mediatek,mt7620-usbphy";
+- #phy-cells = <1>;
+- // resets = <&rstctrl 22 &rstctrl 25>;
+- resets = <&rstctrl 22 &rstctrl 19>;
+- reset-names = "host", "device";
+- };
+-
+- ethernet@10100000 {
+- status = "okay";
+- mtd-mac-address = <&factory 0x4>;
+- pinctrl-names = "default";
+- pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;
+-
+- port@5 {
+- status = "okay";
+- mediatek,fixed-link = <1000 1 1 1>;
+- phy-mode = "rgmii";
+- };
+-
+- mdio-bus {
+- status = "okay";
+-
+- phy0: ethernet-phy@0 {
+- reg = <0>;
+- phy-mode = "rgmii";
+- };
+-
+- phy1: ethernet-phy@1 {
+- reg = <1>;
+- phy-mode = "rgmii";
+- };
+-
+- phy2: ethernet-phy@2 {
+- reg = <2>;
+- phy-mode = "rgmii";
+- };
+-
+- phy3: ethernet-phy@3 {
+- reg = <3>;
+- phy-mode = "rgmii";
+- };
+-
+- phy4: ethernet-phy@4 {
+- reg = <4>;
+- phy-mode = "rgmii";
+- };
+-
+- phy1f: ethernet-phy@1f {
+- reg = <0x1f>;
+- phy-mode = "rgmii";
+- };
+- };
+- };
+-
+- gsw@10110000 {
+- mediatek,port4 = "gmac";
+- mediatek,mt7530 = <1>;
+- };
+-
+- wmac@10180000 {
+- ralink,mtd-eeprom = <&factory 0>;
+- };
+-
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+@@ -179,30 +56,141 @@
+ };
+ };
+
+- pcie@10140000 {
+- status = "okay";
+- pcie-bridge {
+- mt76@0,0 {
+- reg = <0x0000 0 0 0 0>;
+- device_type = "pci";
+- mediatek,mtd-eeprom = <&factory 0x8000>;
+- mediatek,2ghz = <0>;
+- };
++ usbphy: usbphy {
++ compatible = "mediatek,mt7620-usbphy";
++ #phy-cells = <1>;
++ resets = <&rstctrl 22 &rstctrl 25>;
++ reset-names = "host", "device";
++ };
++
++};
++
++&spi0 {
++ status = "okay";
++
++ m25p80@0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "jedec,spi-nor";
++ reg = <0 0>;
++ linux,modalias = "m25p80", "mx25l6405d";
++ spi-max-frequency = <10000000>;
++
++ partition@0 {
++ label = "u-boot";
++ reg = <0x0 0x30000>;
++ read-only;
++ };
++
++ partition@30000 {
++ label = "u-boot-env";
++ reg = <0x30000 0x10000>;
++ read-only;
++ };
++
++ factory: partition@40000 {
++ label = "factory";
++ reg = <0x40000 0x10000>;
++ read-only;
+ };
+
++ partition@50000 {
++ label = "cimage";
++ reg = <0x50000 0x20000>;
++ read-only;
++ };
++
++ partition@70000 {
++ label = "firmware";
++ reg = <0x00070000 0x00790000>;
++ };
+ };
++};
++
++&pinctrl {
++ state_default: pinctrl0 {
++ gpio {
++ ralink,group = "i2c", "uartf", "wdt", "pa", "ephy", "nd_sd", "wled";
++ ralink,function = "gpio";
++ };
++ };
++};
+
+- ehci@101c0000 {
++&ethernet{
++ status = "okay";
++ mtd-mac-address = <&factory 0x4>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;
++ mediatek,portmap = "wllll";
++
++ port@5 {
+ status = "okay";
+- interrupt-parent = <&intc>;
+- interrupts = <18>;
++ mediatek,fixed-link = <1000 1 1 1>;
++ phy-mode = "rgmii";
+ };
+
+- ohci@101c1000 {
++ mdio-bus {
+ status = "okay";
+- interrupt-parent = <&intc>;
+- interrupts = <18>;
++
++ phy0: ethernet-phy@0 {
++ reg = <0>;
++ phy-mode = "rgmii";
++ };
++
++ phy1: ethernet-phy@1 {
++ reg = <1>;
++ phy-mode = "rgmii";
++ };
++
++ phy2: ethernet-phy@2 {
++ reg = <2>;
++ phy-mode = "rgmii";
++ };
++
++ phy3: ethernet-phy@3 {
++ reg = <3>;
++ phy-mode = "rgmii";
++ };
++
++ phy4: ethernet-phy@4 {
++ reg = <4>;
++ phy-mode = "rgmii";
++ };
++
++ phy1f: ethernet-phy@1f {
++ reg = <0x1f>;
++ phy-mode = "rgmii";
++ };
+ };
+ };
+
++&gsw {
++ mediatek,port4 = "gmac";
++ mediatek,mt7530 = <1>;
++};
+
++&wmac {
++ ralink,mtd-eeprom = <&factory 0>;
++};
++
++&pcie {
++ status = "okay";
++
++ pcie0 {
++ mt76@0,0 {
++ reg = <0x0000 0 0 0 0>;
++ device_type = "pci";
++ mediatek,mtd-eeprom = <&factory 0x8000>;
++ mediatek,2ghz = <0>;
++ };
++ };
++
++};
++
++&ehci {
++ status = "okay";
++};
++
++&ohci {
++ status = "okay";
++};