ramips: consolidate Netgear devices for mt7628
This creates a common DTSI and shared image definition for the relatively similar Netgear devices for mt7628 platform. As a side effect, this raises SPI flash frequency for the R6120, as it's expected to work there as well if it works for R6080 and R6020. Based on the data from the other devices, it also seems probable the 5g MAC address for R6120 could be extracted from the caldata, and the mtd-mac-address there could be dropped. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
parent
ad81e2da08
commit
11478524a2
@ -1,10 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "mt7628an.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include "mt7628an_netgear_r6xxx.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "netgear,r6020", "mediatek,mt7628an-soc";
|
||||
@ -17,16 +14,6 @@
|
||||
led-upgrade = &led_power;
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 38 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
@ -65,101 +52,47 @@
|
||||
|
||||
&state_default {
|
||||
gpio {
|
||||
groups = "p0led_an", "p1led_an", "p2led_an",
|
||||
"p3led_an", "p4led_an", "wdt",
|
||||
"wled_an";
|
||||
groups = "p0led_an", "p1led_an", "p2led_an", "p3led_an",
|
||||
"p4led_an", "wdt", "wled_an";
|
||||
function = "gpio";
|
||||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <86000000>;
|
||||
m25p,fast-read;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0 0x40000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
factory: partition@40000 {
|
||||
label = "factory";
|
||||
reg = <0x40000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@60000 {
|
||||
label = "nvram";
|
||||
reg = <0x60000 0x30000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@90000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x90000 0x6f0000>;
|
||||
};
|
||||
|
||||
partition@780000 {
|
||||
label = "ML";
|
||||
reg = <0x780000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@7a0000 {
|
||||
label = "ML1";
|
||||
reg = <0x7a0000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@7c0000 {
|
||||
label = "ML2";
|
||||
reg = <0x7c0000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@7e0000 {
|
||||
label = "POT";
|
||||
reg = <0x7e0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@7f0000 {
|
||||
label = "reserved";
|
||||
reg = <0x7f0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
&partitions {
|
||||
partition@90000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x90000 0x6f0000>;
|
||||
};
|
||||
};
|
||||
|
||||
&wmac {
|
||||
status = "okay";
|
||||
};
|
||||
partition@780000 {
|
||||
label = "ML";
|
||||
reg = <0x780000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
ðernet {
|
||||
mtd-mac-address = <&factory 0x4>;
|
||||
};
|
||||
partition@7a0000 {
|
||||
label = "ML1";
|
||||
reg = <0x7a0000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
partition@7c0000 {
|
||||
label = "ML2";
|
||||
reg = <0x7c0000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
wifi@0,0 {
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
partition@7e0000 {
|
||||
label = "POT";
|
||||
reg = <0x7e0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@7f0000 {
|
||||
label = "reserved";
|
||||
reg = <0x7f0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -1,10 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include "mt7628an.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include "mt7628an_netgear_r6xxx.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "netgear,r6080", "mediatek,mt7628an-soc";
|
||||
@ -18,16 +15,6 @@
|
||||
label-mac-device = ðernet;
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 38 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
@ -72,70 +59,17 @@
|
||||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <86000000>;
|
||||
m25p,fast-read;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0 0x40000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
factory: partition@40000 {
|
||||
label = "factory";
|
||||
reg = <0x40000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@60000 {
|
||||
label = "nvram";
|
||||
reg = <0x60000 0x30000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@90000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x90000 0x760000>;
|
||||
};
|
||||
|
||||
partition@7f0000 {
|
||||
label = "reserved";
|
||||
reg = <0x7f0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
&partitions {
|
||||
partition@90000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x90000 0x760000>;
|
||||
};
|
||||
};
|
||||
|
||||
&wmac {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
ðernet {
|
||||
mtd-mac-address = <&factory 0x4>;
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
wifi@0,0 {
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
partition@7f0000 {
|
||||
label = "reserved";
|
||||
reg = <0x7f0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -1,9 +1,6 @@
|
||||
/dts-v1/;
|
||||
|
||||
#include "mt7628an.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include "mt7628an_netgear_r6xxx.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "netgear,r6120", "mediatek,mt7628an-soc";
|
||||
@ -17,16 +14,6 @@
|
||||
label-mac-device = ðernet;
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 38 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
@ -77,77 +64,27 @@
|
||||
|
||||
&state_default {
|
||||
gpio {
|
||||
groups = "p0led_an", "p1led_an", "p2led_an",
|
||||
"p3led_an", "p4led_an", "wdt",
|
||||
"wled_an", "uart1";
|
||||
groups = "p0led_an", "p1led_an", "p2led_an", "p3led_an",
|
||||
"p4led_an", "wdt", "wled_an", "uart1";
|
||||
function = "gpio";
|
||||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
&partitions {
|
||||
partition@90000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x90000 0xf60000>;
|
||||
};
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <10000000>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0 0x40000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
factory: partition@40000 {
|
||||
label = "factory";
|
||||
reg = <0x40000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@60000 {
|
||||
label = "nvram";
|
||||
reg = <0x60000 0x30000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@90000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x90000 0xf60000>;
|
||||
};
|
||||
|
||||
partition@ff0000 {
|
||||
label = "reserved";
|
||||
reg = <0xff0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
partition@ff0000 {
|
||||
label = "reserved";
|
||||
reg = <0xff0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
|
||||
&wmac {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
ðernet {
|
||||
&wifi5 {
|
||||
mtd-mac-address = <&factory 0x4>;
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
wifi@0,0 {
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
mtd-mac-address = <&factory 0x4>;
|
||||
mtd-mac-address-increment = <(2)>;
|
||||
};
|
||||
mtd-mac-address-increment = <(2)>;
|
||||
};
|
||||
|
73
target/linux/ramips/dts/mt7628an_netgear_r6xxx.dtsi
Normal file
73
target/linux/ramips/dts/mt7628an_netgear_r6xxx.dtsi
Normal file
@ -0,0 +1,73 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "mt7628an.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 38 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <86000000>;
|
||||
m25p,fast-read;
|
||||
|
||||
partitions: partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0 0x40000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
factory: partition@40000 {
|
||||
label = "factory";
|
||||
reg = <0x40000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@60000 {
|
||||
label = "nvram";
|
||||
reg = <0x60000 0x30000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&wmac {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
ðernet {
|
||||
mtd-mac-address = <&factory 0x4>;
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
wifi5: wifi@0,0 {
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
};
|
||||
};
|
@ -11,7 +11,7 @@ DEVICE_VARS += LOADER_TYPE
|
||||
DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_HW_ID
|
||||
DEVICE_VARS += BUFFALO_TAG_PLATFORM BUFFALO_TAG_VERSION BUFFALO_TAG_MINOR
|
||||
DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
|
||||
DEVICE_VARS += SERCOMM_HWID SERCOMM_HWVER SERCOMM_SWVER
|
||||
DEVICE_VARS += SERCOMM_HWNAME SERCOMM_HWID SERCOMM_HWVER SERCOMM_SWVER
|
||||
DEVICE_VARS += JCG_MAXSIZE
|
||||
|
||||
loadaddr-y := 0x80000000
|
||||
|
@ -7,7 +7,7 @@ include ./common-tp-link.mk
|
||||
DEFAULT_SOC := mt7621
|
||||
|
||||
KERNEL_DTB += -d21
|
||||
DEVICE_VARS += UIMAGE_MAGIC SERCOMM_HWNAME
|
||||
DEVICE_VARS += UIMAGE_MAGIC
|
||||
|
||||
# The OEM webinterface expects an kernel with initramfs which has the uImage
|
||||
# header field ih_name.
|
||||
|
@ -189,60 +189,51 @@ define Device/mercury_mac1200r-v2
|
||||
endef
|
||||
TARGET_DEVICES += mercury_mac1200r-v2
|
||||
|
||||
define Device/netgear_r6020
|
||||
define Device/netgear_r6xxx
|
||||
BLOCKSIZE := 64k
|
||||
IMAGE_SIZE := 7104k
|
||||
DEVICE_VENDOR := NETGEAR
|
||||
DEVICE_MODEL := R6020
|
||||
DEVICE_PACKAGES := kmod-mt76x2
|
||||
SERCOMM_HWID := CFR
|
||||
SERCOMM_HWVER := A001
|
||||
SERCOMM_SWVER := 0x0040
|
||||
IMAGES += factory.img
|
||||
IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
|
||||
pad-rootfs
|
||||
IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size
|
||||
IMAGE/factory.img := pad-extra 576k | $$(IMAGE/default) | \
|
||||
pad-to $$$$(BLOCKSIZE) | sercom-footer | pad-to 128 | zip R6020.bin | \
|
||||
sercom-seal
|
||||
pad-to $$$$(BLOCKSIZE) | sercom-footer | pad-to 128 | \
|
||||
zip $$$$(SERCOMM_HWNAME).bin | sercom-seal
|
||||
endef
|
||||
|
||||
define Device/netgear_r6020
|
||||
$(Device/netgear_r6xxx)
|
||||
IMAGE_SIZE := 7104k
|
||||
DEVICE_MODEL := R6020
|
||||
DEVICE_PACKAGES := kmod-mt76x2
|
||||
SERCOMM_HWNAME := R6020
|
||||
SERCOMM_HWID := CFR
|
||||
SERCOMM_HWVER := A001
|
||||
SERCOMM_SWVER := 0x0040
|
||||
endef
|
||||
TARGET_DEVICES += netgear_r6020
|
||||
|
||||
define Device/netgear_r6080
|
||||
BLOCKSIZE := 64k
|
||||
$(Device/netgear_r6xxx)
|
||||
IMAGE_SIZE := 7552k
|
||||
DEVICE_VENDOR := NETGEAR
|
||||
DEVICE_MODEL := R6080
|
||||
DEVICE_PACKAGES := kmod-mt76x2
|
||||
SERCOMM_HWNAME := R6080
|
||||
SERCOMM_HWID := CFR
|
||||
SERCOMM_HWVER := A001
|
||||
SERCOMM_SWVER := 0x0040
|
||||
IMAGES += factory.img
|
||||
IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
|
||||
pad-rootfs
|
||||
IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size
|
||||
IMAGE/factory.img := pad-extra 576k | $$(IMAGE/default) | \
|
||||
pad-to $$$$(BLOCKSIZE) | sercom-footer | pad-to 128 | zip R6080.bin | \
|
||||
sercom-seal
|
||||
endef
|
||||
TARGET_DEVICES += netgear_r6080
|
||||
|
||||
define Device/netgear_r6120
|
||||
BLOCKSIZE := 64k
|
||||
$(Device/netgear_r6xxx)
|
||||
IMAGE_SIZE := 15744k
|
||||
DEVICE_VENDOR := NETGEAR
|
||||
DEVICE_MODEL := R6120
|
||||
DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci
|
||||
SERCOMM_HWNAME := R6120
|
||||
SERCOMM_HWID := CGQ
|
||||
SERCOMM_HWVER := A001
|
||||
SERCOMM_SWVER := 0x0040
|
||||
IMAGES += factory.img
|
||||
IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
|
||||
pad-rootfs
|
||||
IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size
|
||||
IMAGE/factory.img := pad-extra 576k | $$(IMAGE/default) | \
|
||||
pad-to $$$$(BLOCKSIZE) | sercom-footer | pad-to 128 | zip R6120.bin | \
|
||||
sercom-seal
|
||||
endef
|
||||
TARGET_DEVICES += netgear_r6120
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user