openwrt/target/linux/lantiq/dts/VGV7519.dtsi
Mathias Kresin 254bf7961e lantiq: xrx200: use vlan for ethernet wan port
Using the lantiq,wan device tree property for one interface node and
the lantiq,switch device tree property for another interface node at
the same time was never intended/isn't supported at the moment.

The property is meant to be used in two phy operation mode where one
phy is assigned to an interface without lantiq,* device tree property
and the other phy is assigned to an interface with the lantiq,wan
device property to have two netdevs.

If both properties are used at the same time, the lantiq,wan interface
is shown as independent netdev but not able to operate independent. The
port needs to be managed via swconfig. These dependency is not obvious
and fooled already a lot of users.

Add a default WAN vlan for xrx200 devices having an ethernet WAN port
and remove the lantiq,wan device tree property. Leave it up to the user
to set the ethernet WAN port as default WAN interface or to use this
port as additional LAN port.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-03 16:09:33 +02:00

297 lines
6.2 KiB
Plaintext

#include "vr9.dtsi"
#include <dt-bindings/input/input.h>
/ {
chosen {
bootargs = "console=ttyLTQ0,115200 mem=62M vpe1_load_addr=0x83e00000 vpe1_mem=2M maxvpes=1 maxtcs=1";
};
aliases {
led-boot = &power_green;
led-failsafe = &power_red;
led-running = &power_green;
led-dsl = &broadband_green;
led-internet = &internet_green;
led-wifi = &wireless_green;
};
sram@1F000000 {
vmmc@107000 {
status = "okay";
gpios = <&gpio 30 GPIO_ACTIVE_HIGH //fxs relay
&gpio 31 GPIO_ACTIVE_HIGH //still unknown
&gpio 3 GPIO_ACTIVE_HIGH>; //reset_slic?
};
};
memory@0 {
reg = <0x0 0x4000000>;
};
fpi@10000000 {
localbus@0 {
nor-boot@0 {
compatible = "lantiq,nor";
bank-width = <2>;
reg = <0 0x0 0x800000>, <1 0x800000 0x800000>;
#address-cells = <1>;
#size-cells = <1>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boardconfig: partition@40000 {
label = "board_config";
reg = <0x40000 0x10000>;
read-only;
};
};
};
};
gpio: pinmux@E100B10 {
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
state_default: pinmux {
stp {
lantiq,groups = "stp";
lantiq,function = "stp";
lantiq,open-drain = <0>;
lantiq,output = <1>;
lantiq,pull = <0>;
};
mdio {
lantiq,groups = "mdio";
lantiq,function = "mdio";
};
pci-rst {
lantiq,pins = "io21";
lantiq,open-drain = <0>;
lantiq,pull = <0>;
lantiq,output = <1>;
};
gphy-leds {
lantiq,groups = "gphy0 led1", "gphy1 led0";
lantiq,function = "gphy";
lantiq,open-drain = <0>;
lantiq,pull = <0>;
lantiq,output = <1>;
};
};
};
stp: stp@E100BB0 {
compatible = "lantiq,gpio-stp-xway";
reg = <0xE100BB0 0x40>;
#gpio-cells = <2>;
gpio-controller;
lantiq,shadow = <0xffff>;
lantiq,groups = <0x3>;
lantiq,dsl = <0x0>;
lantiq,phy1 = <0x0>;
lantiq,phy2 = <0x0>;
/* lantiq,rising; */
};
ifxhcd@E101000 {
status = "okay";
gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
lantiq,portmask = <0x3>;
};
ifxhcd@E106000 {
status = "okay";
gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
};
pcie@d900000 {
status = "disabled";
};
};
gphy-xrx200 {
compatible = "lantiq,phy-xrx200";
firmware1 = "lantiq/vr9_phy11g_a1x.bin"; /*VR9 1.1*/
firmware2 = "lantiq/vr9_phy11g_a2x.bin"; /*VR9 1.2*/
phys = [ 00 01 ];
};
gpio-keys-polled {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
poll-interval = <100>;
reset {
label = "reset";
gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
eco {
label = "eco";
gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
linux,code = <BTN_0>;
};
rfkill {
label = "rfkill";
gpios = <&gpio 45 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RFKILL>;
};
wps {
label = "wps";
gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WPS_BUTTON>;
};
};
gpio-leds {
compatible = "gpio-leds";
eco {
label = "vgv7519:blue:eco";
gpios = <&stp 2 GPIO_ACTIVE_LOW>;
};
wps_red {
label = "vgv7519:red:wps";
gpios = <&stp 3 GPIO_ACTIVE_LOW>;
};
wps_green {
label = "vgv7519:green:wps";
gpios = <&stp 4 GPIO_ACTIVE_LOW>;
};
upgrade {
label = "vgv7519:blue:upgrade";
gpios = <&stp 5 GPIO_ACTIVE_LOW>;
};
tv {
label = "vgv7519:green:tv";
gpios = <&stp 6 GPIO_ACTIVE_LOW>;
};
internet_green: internet_green {
label = "vgv7519:green:internet";
gpios = <&stp 7 GPIO_ACTIVE_LOW>;
};
internet_red {
label = "vgv7519:red:internet";
gpios = <&stp 8 GPIO_ACTIVE_LOW>;
};
broadband_red {
label = "vgv7519:red:broadband";
gpios = <&stp 9 GPIO_ACTIVE_LOW>;
};
broadband_green: broadband_green {
label = "vgv7519:green:broadband";
gpios = <&stp 10 GPIO_ACTIVE_LOW>;
};
voice {
label = "vgv7519:green:voice";
gpios = <&stp 11 GPIO_ACTIVE_LOW>;
};
wireless_red {
label = "vgv7519:red:wireless";
gpios = <&stp 12 GPIO_ACTIVE_LOW>;
};
wireless_green: wireless_green {
label = "vgv7519:green:wireless";
gpios = <&stp 13 GPIO_ACTIVE_LOW>;
};
power_green: power2 {
label = "vgv7519:green:power";
gpios = <&stp 14 GPIO_ACTIVE_LOW>;
default-state = "keep";
};
power_red: power {
label = "vgv7519:red:power";
gpios = <&stp 15 GPIO_ACTIVE_LOW>;
};
};
};
&pci0 {
status = "okay";
gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
wifi@1814,3091 {
compatible = "pci1814,3091";
reg = <0x7000 0 0 0 0>;
ralink,mtd-eeprom = <&boardconfig 0x410>;
ralink,mtd-eeprom-swap;
mtd-mac-address = <&boardconfig 0x16>;
mtd-mac-address-increment = <1>;
};
};
&eth0 {
lan: interface@0 {
compatible = "lantiq,xrx200-pdi";
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
mtd-mac-address = <&boardconfig 0x16>;
mtd-mac-address-increment = <1>;
lantiq,switch;
ethernet@0 {
compatible = "lantiq,xrx200-pdi-port";
reg = <0>;
phy-mode = "rgmii";
phy-handle = <&phy0>;
};
ethernet@1 {
compatible = "lantiq,xrx200-pdi-port";
reg = <1>;
phy-mode = "rgmii";
phy-handle = <&phy1>;
};
ethernet@2 {
compatible = "lantiq,xrx200-pdi-port";
reg = <2>;
phy-mode = "gmii";
phy-handle = <&phy11>;
};
ethernet@4 {
compatible = "lantiq,xrx200-pdi-port";
reg = <4>;
phy-mode = "gmii";
phy-handle = <&phy13>;
};
ethernet@5 {
compatible = "lantiq,xrx200-pdi-port";
reg = <5>;
phy-mode = "rgmii";
phy-handle = <&phy5>;
};
};
mdio@0 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "lantiq,xrx200-mdio";
phy0: ethernet-phy@0 {
reg = <0x0>;
compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
phy1: ethernet-phy@1 {
reg = <0x1>;
compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
phy5: ethernet-phy@5 {
reg = <0x5>;
compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
phy11: ethernet-phy@11 {
reg = <0x11>;
compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
phy13: ethernet-phy@13 {
reg = <0x13>;
compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
};
};
};