/* Copyright (c) 2015, The Linux Foundation. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * */ #include "Fritz_qcom-ipq4019.dtsi" #include "../../../../include/linux/avm_hw_config_def.h" / { model = "AVM FRITZ!Box 4040"; compatible = "qcom,ipq4019"; avm-hw-revision{ compatible = "avm,avm_hw_revision"; revision = "227"; subrevision = "3"; }; reserved-memory { #address-cells = <1>; #size-cells = <1>; ranges; avm_sbl_boot_string@86FFFC00 { compatible = "avm_sbl_boot_string"; reg = <0x86FFFC00 0x512>; no-map; }; }; soc { #address-cells = <1>; #size-cells = <1>; mdio@90000 { #address-cells = <1>; #size-cells = <0>; phy0: ethernet-phy@0 { reg = <0>; }; phy1: ethernet-phy@1 { reg = <1>; }; phy2: ethernet-phy@2 { reg = <2>; }; phy3: ethernet-phy@3 { reg = <3>; }; phy4: ethernet-phy@4 { reg = <4>; }; }; edma: edma@c080000 { qcom,num-gmac = <5>; gmac0 { qcom,phy-mdio-addr = <0>; qcom,poll-required = <1>; qcom,forced-speed = <0>; qcom,forced-duplex = <0>; vlan-tag = <0 0x02>; devname = "eth0"; macname = "maca"; mac = <0>; }; gmac1 { qcom,phy-mdio-addr = <1>; qcom,poll-required = <1>; qcom,forced-speed = <0>; qcom,forced-duplex = <0>; vlan-tag = <0 0x04>; devname = "eth1"; macname = "macb"; mac = <0>; }; gmac2 { qcom,phy-mdio-addr = <2>; qcom,poll-required = <1>; qcom,forced-speed = <0>; qcom,forced-duplex = <0>; vlan-tag = <0 0x08>; devname = "eth2"; macname = "usb_board_mac"; mac = <0>; }; gmac3 { qcom,phy-mdio-addr = <3>; qcom,poll-required = <1>; qcom,forced-speed = <0>; qcom,forced-duplex = <0>; vlan-tag = <0 0x10>; devname = "eth3"; macname = "usb_rndis_mac"; mac = <1>; }; gmac4 { qcom,phy-mdio-addr = <4>; qcom,poll-required = <1>; qcom,forced-speed = <0>; qcom,forced-duplex = <0>; vlan-tag = <0 0x20>; devname = "wan"; macname = "macdsl"; mac = <1>; eee-adv = <0>; }; }; }; avm_hui { compatible = "avm,hui"; box-power { compatible = "avm,hui-generic-led-avm"; avm-gpios = <&led_power>; location = <1>; }; box-wlan-connect { compatible = "avm,hui-generic-led-avm"; avm-gpios = <&led_wlan>; location = <2>; }; box_lan: lan@0 { compatible = "avm,hui-generic-led-avm"; avm-gpios = <&led_lan>; location = <3>; }; box-internet@0 { compatible = "avm,hui-generic-led-avm"; avm-gpios = <&led_internet>; location = <4>; }; box_info: info { compatible = "avm,hui-generic-led-avm"; avm-gpios = <&led_info_red>, <&led_info>; location = <5>; colors { normal = <0x00>, <0xFF>, <0x00>; warn = <0xFF>, <0x00>, <0x00>; error = <0xFF>, <0x00>, <0x00>; }; }; box-wlan@1 { compatible = "avm,hui-generic-button-gpio"; gpios = <&tlmm 58 GPIO_ACTIVE_LOW>; }; box-connect { compatible = "avm,hui-generic-button-gpio"; gpios = <&tlmm 63 GPIO_ACTIVE_LOW>; }; }; avm_gpio { compatible = "avm,avm_gpio_generic"; led_power: gpio_avm_led_power { value = <205>; param = ; }; led_wlan: gpio_avm_led_wlan { value = <200>; param = ; }; led_lan: gpio_avm_led_lan_all { value = <206>; param = ; }; led_internet: gpio_avm_led_wan { value = <202>; param = ; }; led_info: gpio_avm_led_info { value = <207>; param = ; }; led_info_red: gpio_avm_led_info_red { value = <201>; param = ; }; gpio_avm_usb_power_enable { value = <203>; param = ; }; }; avm_netdev_map { compatible = "avm,port_netdev"; lan1 { netdev = "eth0"; }; lan2 { netdev = "eth1"; }; lan3 { netdev = "eth2"; }; lan4 { netdev = "eth3"; }; wan { netdev = "wan"; wanport; }; }; };