openwrt/target/linux/ramips/dts/mt7628an_ravpower_rp-wd009.dts
Shiji Yang f53fa2a0cb
ramips: convert mt76 PCIe NIC EEPROM to NVMEM format for legacy SoCs
This patch converts MT761{0,2,3} PCIe WiFi calibration data to NVMEM
format for legacy Ralink SoCs (MT7620 and Mt7628). The EEPROM size of
the MT7610 and MT7612 is 0x200. there are only three devices uses
MT7613 NIC, ASUS RT-AC1200 V2, COMFAST CF-WR758AC V2 and Keenetic
KN-1613. The EEPROM size of them is 0x4da8.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2023-10-17 12:07:27 +02:00

210 lines
3.4 KiB
Plaintext

// 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>
/ {
compatible = "ravpower,rp-wd009", "mediatek,mt7628an-soc";
model = "RAVPower RP-WD009";
aliases {
led-boot = &led_globe;
led-failsafe = &led_globe;
led-running = &led_globe;
led-upgrade = &led_globe;
};
leds {
compatible = "gpio-leds";
led_globe: globe {
label = "white:globe";
gpios = <&gpio 43 GPIO_ACTIVE_LOW>;
};
wlan2 {
label = "white:wlan2";
gpios = <&gpio 44 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "phy0tpt";
};
wlan5 {
label = "white:wlan5";
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1tpt";
};
sd_white {
label = "white:sd";
gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
};
sd_red {
label = "red:sd";
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
};
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
/* Power interrupt on Pin 39 */
rfkill {
label = "rfkill";
gpios = <&gpio 21 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RFKILL>;
};
backup {
label = "backup";
gpios = <&gpio 40 GPIO_ACTIVE_LOW>;
linux,code = <KEY_COPY>;
};
};
};
&gpio {
mt7610-power {
gpio-hog;
gpios = <20 GPIO_ACTIVE_HIGH>;
output-high;
line-name = "mt7610-power";
};
};
&state_default {
gpio {
groups = "uart1", "wled_an", "p0led_an", "p2led_an", "p3led_an",
"p4led_an", "uart2", "pwm0", "i2s";
function = "gpio";
};
};
&sdhci {
status = "okay";
};
&i2c {
status = "okay";
/* Custom PMIC at 0x0a */
};
&pcie {
status = "okay";
};
&pcie0 {
wifi@0,0 {
reg = <0x0000 0 0 0 0>;
nvmem-cells = <&eeprom_factory_8000>;
nvmem-cell-names = "eeprom";
ieee80211-freq-limit = <5470000 6000000>;
};
};
&spi0 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <40000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "bootloader";
reg = <0x0 0x30000>;
read-only;
};
partition@30000 {
label = "config";
reg = <0x30000 0x10000>;
read-only;
};
factory: partition@40000 {
compatible = "nvmem-cells";
label = "factory";
reg = <0x40000 0x10000>;
#address-cells = <1>;
#size-cells = <1>;
read-only;
eeprom_factory_0: eeprom@0 {
reg = <0x0 0x400>;
};
eeprom_factory_8000: eeprom@8000 {
reg = <0x8000 0x200>;
};
macaddr_factory_4: macaddr@4 {
reg = <0x4 0x6>;
};
};
partition@50000 {
label = "loader";
reg = <0x50000 0x180000>;
};
partition@1d0000 {
label = "params";
reg = <0x1d0000 0x10000>;
read-only;
};
partition@1e0000 {
label = "user_backup";
reg = <0x1e0000 0x10000>;
read-only;
};
partition@1f0000 {
label = "user";
reg = <0x1f0000 0x10000>;
read-only;
};
partition@200000 {
compatible = "denx,uimage";
label = "firmware";
reg = <0x200000 0xdf0000>;
};
partition@ff0000 {
label = "mode";
reg = <0xff0000 0x10000>;
read-only;
};
};
};
};
&wmac {
status = "okay";
nvmem-cells = <&eeprom_factory_0>;
nvmem-cell-names = "eeprom";
};
&ethernet {
nvmem-cells = <&macaddr_factory_4>;
nvmem-cell-names = "mac-address";
};