2022-02-19 21:32:54 +00:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
|
|
|
|
|
|
|
#include "mt7621.dtsi"
|
|
|
|
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
|
|
|
|
/ {
|
|
|
|
compatible = "tplink,tl-wpa8631p-v3", "mediatek,mt7621-soc";
|
2022-03-08 19:33:37 +00:00
|
|
|
model = "TP-Link TL-WPA8631P v3";
|
2022-02-19 21:32:54 +00:00
|
|
|
|
|
|
|
aliases {
|
|
|
|
label-mac-device = &gmac0;
|
|
|
|
led-boot = &led_power;
|
|
|
|
led-failsafe = &led_power;
|
|
|
|
led-running = &led_power;
|
|
|
|
led-upgrade = &led_power;
|
|
|
|
};
|
|
|
|
|
|
|
|
keys {
|
|
|
|
compatible = "gpio-keys";
|
|
|
|
|
|
|
|
reset {
|
|
|
|
label = "reset";
|
|
|
|
linux,code = <KEY_RESTART>;
|
|
|
|
gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
|
|
|
|
debounce-interval = <60>;
|
|
|
|
};
|
|
|
|
|
|
|
|
led {
|
|
|
|
label = "led";
|
|
|
|
linux,code = <KEY_LIGHTS_TOGGLE>;
|
|
|
|
gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
|
|
|
|
debounce-interval = <60>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pair {
|
|
|
|
label = "pair";
|
|
|
|
linux,code = <BTN_1>;
|
|
|
|
gpios = <&gpio 32 GPIO_ACTIVE_LOW>;
|
|
|
|
debounce-interval = <60>;
|
|
|
|
};
|
|
|
|
|
|
|
|
wifi {
|
|
|
|
label = "wifi";
|
|
|
|
linux,code = <KEY_RFKILL>;
|
|
|
|
gpios = <&gpio 33 GPIO_ACTIVE_LOW>;
|
|
|
|
debounce-interval = <60>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
leds {
|
|
|
|
compatible = "gpio-leds";
|
|
|
|
|
|
|
|
led_power: power {
|
|
|
|
label = "green:power";
|
|
|
|
gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
lan {
|
|
|
|
label = "green:lan";
|
|
|
|
gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
wifi2g {
|
|
|
|
label = "green:wifi2g";
|
|
|
|
gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
|
|
|
|
linux,default-trigger = "phy0tpt";
|
|
|
|
};
|
|
|
|
|
|
|
|
wifi5g {
|
|
|
|
label = "green:wifi5g";
|
|
|
|
gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
|
|
|
|
linux,default-trigger = "phy1tpt";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2022-03-08 19:33:37 +00:00
|
|
|
gpio-export {
|
|
|
|
compatible = "gpio-export";
|
2022-02-19 21:32:54 +00:00
|
|
|
|
2022-03-08 19:33:37 +00:00
|
|
|
led_control {
|
|
|
|
gpio-export,name = "tp-link:led:control";
|
|
|
|
gpio-export,output = <0>;
|
|
|
|
gpios = <&gpio 25 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
};
|
2022-02-19 21:32:54 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
&spi0 {
|
|
|
|
status = "okay";
|
|
|
|
|
|
|
|
flash@0 {
|
|
|
|
compatible = "jedec,spi-nor";
|
|
|
|
reg = <0>;
|
|
|
|
spi-max-frequency = <25000000>;
|
|
|
|
|
|
|
|
partitions {
|
|
|
|
compatible = "fixed-partitions";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
|
|
|
|
|
|
|
partition@0 {
|
|
|
|
label = "u-boot";
|
|
|
|
reg = <0x0 0x20000>;
|
|
|
|
read-only;
|
|
|
|
};
|
|
|
|
|
|
|
|
partition@20000 {
|
|
|
|
compatible = "tplink,firmware";
|
|
|
|
label = "firmware";
|
|
|
|
reg = <0x20000 0x710000>;
|
|
|
|
};
|
|
|
|
|
|
|
|
config: partition@730000 {
|
|
|
|
label = "config";
|
|
|
|
reg = <0x730000 0xc0000>;
|
|
|
|
read-only;
|
2023-10-02 02:12:02 +00:00
|
|
|
|
2023-11-07 23:55:58 +00:00
|
|
|
nvmem-layout {
|
|
|
|
compatible = "fixed-layout";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
|
|
|
|
|
|
|
macaddr_config_2008: macaddr@2008 {
|
2023-11-08 03:39:00 +00:00
|
|
|
compatible = "mac-base";
|
2023-11-07 23:55:58 +00:00
|
|
|
reg = <0x2008 0x6>;
|
2023-11-08 03:39:00 +00:00
|
|
|
#nvmem-cell-cells = <1>;
|
2023-11-07 23:55:58 +00:00
|
|
|
};
|
2023-10-02 02:12:02 +00:00
|
|
|
};
|
2022-02-19 21:32:54 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
radio: partition@7f0000 {
|
|
|
|
label = "radio";
|
|
|
|
reg = <0x7f0000 0x10000>;
|
|
|
|
read-only;
|
2023-10-02 02:12:02 +00:00
|
|
|
|
2023-11-07 23:55:58 +00:00
|
|
|
nvmem-layout {
|
|
|
|
compatible = "fixed-layout";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
|
|
|
|
|
|
|
eeprom_radio_0: eeprom@0 {
|
|
|
|
reg = <0x0 0x400>;
|
|
|
|
};
|
2023-10-02 02:12:02 +00:00
|
|
|
|
2023-11-07 23:55:58 +00:00
|
|
|
eeprom_radio_8000: eeprom@8000 {
|
|
|
|
reg = <0x8000 0x4da8>;
|
|
|
|
};
|
2023-10-02 02:12:02 +00:00
|
|
|
};
|
2022-02-19 21:32:54 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&state_default {
|
|
|
|
gpio {
|
|
|
|
groups = "rgmii2", "wdt";
|
|
|
|
function = "gpio";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&pcie {
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&pcie0 {
|
|
|
|
wifi@0,0 {
|
|
|
|
compatible = "mediatek,mt76";
|
|
|
|
reg = <0x0000 0 0 0 0>;
|
2023-11-08 03:39:00 +00:00
|
|
|
nvmem-cells = <&eeprom_radio_0>, <&macaddr_config_2008 0>;
|
2023-10-02 02:12:02 +00:00
|
|
|
nvmem-cell-names = "eeprom", "mac-address";
|
2022-02-19 21:32:54 +00:00
|
|
|
ieee80211-freq-limit = <2400000 2500000>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&pcie1 {
|
|
|
|
wifi@0,0 {
|
|
|
|
compatible = "mediatek,mt76";
|
|
|
|
reg = <0x0000 0 0 0 0>;
|
2023-11-08 03:39:00 +00:00
|
|
|
nvmem-cells = <&eeprom_radio_8000>, <&macaddr_config_2008 1>;
|
2023-10-02 02:12:02 +00:00
|
|
|
nvmem-cell-names = "eeprom", "mac-address";
|
2022-02-19 21:32:54 +00:00
|
|
|
ieee80211-freq-limit = <5000000 6000000>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2022-03-08 19:33:37 +00:00
|
|
|
ðernet {
|
|
|
|
pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
|
|
|
|
};
|
|
|
|
|
2022-02-19 21:32:54 +00:00
|
|
|
&gmac0 {
|
2023-11-08 03:39:00 +00:00
|
|
|
nvmem-cells = <&macaddr_config_2008 0>;
|
2022-02-19 21:32:54 +00:00
|
|
|
nvmem-cell-names = "mac-address";
|
|
|
|
};
|
|
|
|
|
|
|
|
&switch0 {
|
|
|
|
ports {
|
|
|
|
port@0 {
|
|
|
|
status = "okay";
|
|
|
|
label = "plc0";
|
|
|
|
};
|
|
|
|
|
|
|
|
port@1 {
|
|
|
|
status = "okay";
|
|
|
|
label = "lan1";
|
|
|
|
};
|
|
|
|
|
|
|
|
port@2 {
|
|
|
|
status = "okay";
|
|
|
|
label = "lan2";
|
|
|
|
};
|
|
|
|
|
|
|
|
port@3 {
|
|
|
|
status = "okay";
|
|
|
|
label = "lan3";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|