/dts-v1/; #include "vr9.dtsi" #include <dt-bindings/input/input.h> #include <dt-bindings/mips/lantiq_rcu_gphy.h> / { compatible = "buffalo,wbmr-300hpd", "lantiq,xway", "lantiq,vr9"; model = "Buffalo WBMR-300HPD"; chosen { bootargs = "console=ttyLTQ0,115200"; }; aliases { led-boot = &power_g; led-failsafe = &diag_r; led-running = &power_g; led-dsl = &dsl; led-internet = &router_g; led-wifi = &wifi_g; }; memory@0 { reg = <0x0 0x4000000>; }; gpio_poweroff { compatible = "gpio-poweroff"; gpios = <&gpio 6 GPIO_ACTIVE_LOW>; }; gpio-keys-polled { compatible = "gpio-keys-polled"; #address-cells = <1>; #size-cells = <0>; poll-interval = <100>; power { label = "power"; gpios = <&gpio 5 GPIO_ACTIVE_LOW>; linux,code = <KEY_POWER>; }; reset { label = "reset"; gpios = <&gpio 7 GPIO_ACTIVE_LOW>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; gpios = <&gpio 31 GPIO_ACTIVE_LOW>; linux,code = <KEY_WPS_BUTTON>; }; auto { label = "auto"; gpios = <&gpio 48 GPIO_ACTIVE_HIGH>; linux,code = <BTN_0>; linux,input-type = <EV_SW>; }; router { label = "router"; gpios = <&gpio 2 GPIO_ACTIVE_HIGH>; linux,code = <BTN_1>; linux,input-type = <EV_SW>; }; }; gpio-leds { compatible = "gpio-leds"; diag_r: diag_r { label = "wbmr300:red:diag"; gpios = <&gpio 0 GPIO_ACTIVE_HIGH>; default_state = "off"; }; wifi_g: wifi_g { label = "wbmr300:green:wifi"; gpios = <&gpio 1 GPIO_ACTIVE_HIGH>; }; dsl: dsl { label = "dsl"; gpios = <&gpio 4 GPIO_ACTIVE_HIGH>; }; router_y: router_y { label = "wbmr300:yellow:router"; gpios = <&gpio 8 GPIO_ACTIVE_HIGH>; }; wifi_y: wifi_y { label = "wbmr300:yellow:wifi"; gpios = <&gpio 9 GPIO_ACTIVE_HIGH>; }; lan1: lan1 { label = "wbmr300:green:lan1"; gpios = <&gpio 11 GPIO_ACTIVE_HIGH>; }; wan: wan { label = "wbmr300:green:wan"; gpios = <&gpio 12 GPIO_ACTIVE_HIGH>; }; lan3: lan3 { label = "wbmr300:green:lan3"; gpios = <&gpio 15 GPIO_ACTIVE_HIGH>; }; lan2: lan2 { label = "wbmr300:green:lan2"; gpios = <&gpio 33 GPIO_ACTIVE_HIGH>; }; internet_g: internet_g { label = "wbmr300:green:internet"; gpios = <&gpio 34 GPIO_ACTIVE_HIGH>; }; internet_y: internet_y { label = "wbmr300:yellow:internet"; gpios = <&gpio 35 GPIO_ACTIVE_HIGH>; }; router_g: router_g { label = "wbmr300:green:router"; gpios = <&gpio 36 GPIO_ACTIVE_HIGH>; }; power_g: power_g { label = "wbmr300:green:power"; gpios = <&gpio 49 GPIO_ACTIVE_HIGH>; }; }; usb_vbus: regulator-usb-vbus { compatible = "regulator-fixed"; regulator-name = "USB_VBUS"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio 33 GPIO_ACTIVE_HIGH>; enable-active-high; }; }; ð0 { lan: interface@0 { compatible = "lantiq,xrx200-pdi"; #address-cells = <1>; #size-cells = <0>; reg = <0>; lantiq,switch; ethernet@1 { compatible = "lantiq,xrx200-pdi-port"; reg = <4>; phy-mode = "mii"; phy-handle = <&phy13>; }; ethernet@2 { compatible = "lantiq,xrx200-pdi-port"; reg = <5>; phy-mode = "mii"; phy-handle = <&phy14>; }; ethernet@3 { compatible = "lantiq,xrx200-pdi-port"; reg = <2>; phy-mode = "mii"; phy-handle = <&phy11>; }; ethernet@4 { compatible = "lantiq,xrx200-pdi-port"; reg = <3>; phy-mode = "mii"; phy-handle = <&phy12>; }; }; mdio@0 { #address-cells = <1>; #size-cells = <0>; compatible = "lantiq,xrx200-mdio"; reg = <0>; phy11: ethernet-phy@11 { reg = <0x11>; compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22"; }; phy12: ethernet-phy@12 { reg = <0x12>; compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22"; }; phy13: ethernet-phy@13 { reg = <0x13>; compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22"; }; phy14: ethernet-phy@14 { reg = <0x14>; compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22"; }; }; }; &gphy0 { lantiq,gphy-mode = <GPHY_MODE_FE>; }; &gphy1 { lantiq,gphy-mode = <GPHY_MODE_FE>; }; &gpio { pinctrl-names = "default"; pinctrl-0 = <&state_default>; state_default: pinmux { mdio { lantiq,groups = "mdio"; lantiq,function = "mdio"; }; phy-rst { lantiq,pins = "io42"; lantiq,pull = <0>; lantiq,open-drain = <0>; lantiq,output = <1>; }; pcie-rst { lantiq,pins = "io38"; lantiq,pull = <0>; lantiq,output = <1>; }; }; pins_spi_default: pins_spi_default { spi_in { lantiq,groups = "spi_di"; lantiq,function = "spi"; }; spi_out { lantiq,groups = "spi_do", "spi_clk", "spi_cs4"; lantiq,function = "spi"; lantiq,output = <1>; }; }; }; &spi { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&pins_spi_default>; m25p80@4 { #address-cells = <1>; #size-cells = <1>; compatible = "jedec,spi-nor"; reg = <4 0>; spi-max-frequency = <20000000>; partition@0 { reg = <0x0 0x10000>; label = "u-boot"; read-only; }; partition@10000 { reg = <0x10000 0x10000>; label = "gphyfirmware"; read-only; }; partition@20000 { reg = <0x20000 0x80000>; label = "dsl_fw"; }; partition@de0000 { reg = <0xa0000 0xf40000>; label = "firmware"; }; partition@fe0000 { reg = <0xfe0000 0x10000>; label = "sysconfig"; read-only; }; partition@ff0000 { reg = <0xff0000 0x2000>; label = "ubootconfig"; }; partition@ff3000 { reg = <0xff3000 0x2000>; label = "board_config"; read-only; }; }; }; &usb_phy0 { status = "okay"; }; &usb_phy1 { status = "okay"; }; &usb0 { status = "okay"; vbus-supply = <&usb_vbus>; }; &usb1 { status = "okay"; vbus-supply = <&usb_vbus>; };