ramips: TEW-692GR: fix switch and wireless
authorMathias Kresin <dev@kresin.me>
Sat, 13 Aug 2016 22:47:14 +0000 (00:47 +0200)
committerMathias Kresin <dev@kresin.me>
Sat, 20 Aug 2016 09:45:45 +0000 (11:45 +0200)
The AR8327 initvals were not copied to the DTS during the switch from
mach file to device tree and broke the switch on the device.

The former used PORT6 related initvals were wrong and have been
corrected.

The phy mode setting for the switch was missing in the DTS as well.

The wireless requires an eeprom to work. The dual band wireless chips
have both bands enabled by default but only one band per chip is
working.

The stock firmware uses the following mac addresses:

LAN:    AA:BB:CC:DD:EE:E4
WAN:    AA:BB:CC:DD:EE:E4
2.4GHz: AA:BB:CC:DD:EE:E4
5 GHz:  AA:BB:CC:DD:EE:E8

Assuming the mac address range :E4 to :E8 is reserved for this device,
the MAC addresses were reorder to have a unique MAC address for each
interface:

LAN:    AA:BB:CC:DD:EE:E4
2.4GHz: AA:BB:CC:DD:EE:E4
WAN:    AA:BB:CC:DD:EE:E5
5 GHz:  AA:BB:CC:DD:EE:E8

Signed-off-by: Mathias Kresin <dev@kresin.me>
target/linux/ramips/base-files/etc/board.d/02_network
target/linux/ramips/dts/TEW-692GR.dts

index 0bf1a8a3ba546f44b019f3c7ef825c03503049c6..73404d91b0581a0636af9e61d0335b211c9ecc03 100755 (executable)
@@ -337,8 +337,7 @@ ramips_setup_macs()
                wan_mac=$(macaddr_add "$lan_mac" 3)
                ;;
        tew-692gr)
-               lan_mac=$(cat /sys/class/net/eth0/address)
-               wan_mac=$(macaddr_add "$lan_mac" 4)
+               wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 1)
                ;;
        tiny-ac)
                lan_mac=$(mtd_get_mac_ascii u-boot-env LAN_MAC_ADDR)
index 5bba8a50b8d5a09d6f58da260436d5ea213edc30..1a56710e5217b7fd7b075291bc9ad952594866ea 100644 (file)
@@ -86,7 +86,7 @@
 
 &ethernet {
        status = "okay";
-       mtd-mac-address = <&factory 0x28>;
+       mtd-mac-address = <&factory 0x4>;
 
        port@0 {
                phy-handle = <&phy0>;
 
                phy0: ethernet-phy@0 {
                        reg = <0>;
+                       phy-mode = "rgmii";
+
+                       qca,ar8327-initvals = <
+                               0x04 0x07600000 /* PORT0 PAD MODE CTRL */
+                               0x0c 0x07600000 /* PORT6 PAD MODE CTRL */
+                               0x10 0x40000000 /* Power-on Strapping: 176-pin interface configuration */
+                               0x50 0xc437c437 /* LED Control Register 0 */
+                               0x54 0xc337c337 /* LED Control Register 1 */
+                               0x58 0x00000000 /* LED Control Register 2 */
+                               0x5c 0x03ffff00 /* LED Control Register 3 */
+                               0x7c 0x0000007e /* PORT0_STATUS */
+                               0x94 0x0000007e /* PORT6 STATUS */
+                       >;
                };
        };
 };
        host-bridge {
                pci-bridge@1 {
                        status = "okay";
+
+                       wmac@0,0 {
+                               compatible = "ralink,rt2880-pci", "pciclass060400", "pciclass0604";
+                               reg = < 0x10000 0 0 0 0 >;
+                               ralink,2ghz = <0>;
+                       };
                };
        };
 };
 
 &wmac {
+       status = "okay";
+       ralink,mtd-eeprom = <&factory 0x0>;
        ralink,5ghz = <0>;
 };