diff options
author | Johann Neuhauser <johann@it-neuhauser.de> | 2018-05-17 19:12:35 +0200 |
---|---|---|
committer | Mathias Kresin <dev@kresin.me> | 2018-07-18 19:17:46 +0200 |
commit | 02d53e6a2113f80ae429664e7990d167fbf44604 (patch) | |
tree | 839b9680b321fa840fa3bdfaaaeedaf10e4335bf /target/linux/lantiq | |
parent | f2f7802148f3d070b27f65b169efebfc6bf8286d (diff) | |
download | upstream-02d53e6a2113f80ae429664e7990d167fbf44604.tar.gz upstream-02d53e6a2113f80ae429664e7990d167fbf44604.tar.bz2 upstream-02d53e6a2113f80ae429664e7990d167fbf44604.zip |
lantiq: add support for FritzBox 7312
The FritzBox 7312 is also known as 1&1 WLAN-MODEM. The device is almost
the same as FB7330, but only one ETH-Port and no USB.
Hardware
SoC: Lantiq Xway ARX188 PSB 50812 EL
RAM: 64MB DDR1 (Zentel A4S12D40FTP-G5)
Ethernet: Atheros 8030
Wireless: Atheros AR9227 b/g/n 2x2
DSL: Lantiq ADSL2+
DECT: Dialog SC14441
Buttons: WiFi, DECT
LEDs: Power/DSL, Fon, DECT, WLAN, Info
LEDs
Power: GPIO#44 (active low)
Internet: GPIO#47 (active low)
DECT: GPIO#38 (active low)
WLAN: GPIO#37 (active low)
Info: GPIO#35 (active low)
The Fon LED is labeled as internet in avm gpl sources.
Buttons
WLAN: GPIO#1 (active low)
DECT: GPIO#2 (active low)
Phy
GPIO#03: 25 MHz
GPIO#34: Reset (active low)
GPIO#39: Int
GPIO#42: MII MDIO
GPIO#43: MII MDC
PCIe
GPIO#21: reset (active low)
Installation:
To install OpenWrt via Eva bootloader, within the first seconds after
power on a ftp connection need to be established to the FRITZ!Box at
192.168.178.1 and the the following ftp commands need to be run:
ftp> quote USER adam2
ftp> quote PASS adam2
ftp> binary
ftp> debug
ftp> passive
ftp> quote MEDIA FLSH
ftp> put /path/to/openwrt-lantiq-xway-avm_fritz7312-squashfs-sysupgrade.bin mtd1
ftp> quote REBOOT
Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
Diffstat (limited to 'target/linux/lantiq')
5 files changed, 197 insertions, 1 deletions
diff --git a/target/linux/lantiq/base-files/etc/board.d/02_network b/target/linux/lantiq/base-files/etc/board.d/02_network index 6e2e1934ae..7817bdd00e 100755 --- a/target/linux/lantiq/base-files/etc/board.d/02_network +++ b/target/linux/lantiq/base-files/etc/board.d/02_network @@ -144,6 +144,7 @@ avm,fritz3370-rev2-micron) "0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "6t@eth0" ;; +avm,fritz7312|\ avm,fritz7320) annex="b" wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2705)" 1) diff --git a/target/linux/lantiq/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom b/target/linux/lantiq/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom index 75b763076e..40642e580f 100644 --- a/target/linux/lantiq/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom +++ b/target/linux/lantiq/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom @@ -160,7 +160,7 @@ case "$FIRMWARE" in avm,fritz3370-rev2-micron) ath9k_eeprom_extract_reverse "urlader" 5441 1088 ;; - avm,fritz7320|avm,fritz7360sl) + avm,fritz7312|avm,fritz7320|avm,fritz7360sl) ath9k_eeprom_extract "urlader" 2437 0 ;; tplink,tdw8970|tplink,tdw8980) diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7312.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7312.dts new file mode 100644 index 0000000000..eca127ab4c --- /dev/null +++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7312.dts @@ -0,0 +1,181 @@ +/dts-v1/; + +#include "ar9.dtsi" + +#include <dt-bindings/input/input.h> + +/ { + compatible = "avm,fritz7312", "lantiq,xway", "lantiq,ar9"; + model = "FritzBox 7312 (1&1 WLAN-MODEM)"; + + chosen { + bootargs = "console=ttyLTQ0,115200"; + }; + + aliases { + led-boot = &power; + led-failsafe = &power; + led-running = &power; + + led-internet = &info_green; + led-dsl = &power; + led-wifi = &wlan; + }; + + memory@0 { + reg = <0x0 0x4000000>; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <100>; + + wlan { + label = "wlan"; + gpios = <&gpio 1 GPIO_ACTIVE_LOW>; + linux,code = <KEY_RFKILL>; + }; + dect { + label = "dect"; + gpios = <&gpio 2 GPIO_ACTIVE_LOW>; + linux,code = <KEY_PHONE>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + power: power { + label = "fritz7312:green:power"; + gpios = <&gpio 44 GPIO_ACTIVE_LOW>; + default-state = "keep"; + }; + voice { + label = "fritz7312:green:fon"; + gpios = <&gpio 47 GPIO_ACTIVE_LOW>; + }; + dect { + label = "fritz7312:green:dect"; + gpios = <&gpio 38 GPIO_ACTIVE_LOW>; + }; + wlan: wlan { + label = "fritz7312:green:wlan"; + gpios = <&gpio 37 GPIO_ACTIVE_LOW>; + }; + info_green: info_green { + label = "fritz7312:green:info"; + gpios = <&gpio 35 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&gpio { + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + pci { + lantiq,groups = "gnt1", "req1", "req2", "req4", "gnt2", "gnt3", "gnt4"; + lantiq,function = "pci"; + }; + pci-in { + lantiq,groups = "req1", "req2", "req4"; + lantiq,output = <0>; + lantiq,open-drain = <1>; + lantiq,pull = <2>; + }; + pci-out { + lantiq,groups = "gnt1", "gnt2", "gnt3", "gnt4"; + lantiq,output = <1>; + lantiq,pull = <0>; + }; + ar8030-intr { + lantiq,groups = "exin3"; + lantiq,function = "exin"; + lantiq,pull = <2>; + lantiq,output = <0>; + }; + ar8030-clk { + lantiq,groups = "clkout2"; + lantiq,output = <1>; + lantiq,open-drain; + }; + ar8030-rst { + lantiq,pins = "io34"; + lantiq,output = <1>; + lantiq,pull = <2>; + lantiq,open-drain; + }; + }; +}; + +&gsw { + phy-mode = "rmii"; + phy-handle = <&phy0>; + mtd-mac-address = <&ath9k_cal 0xa91>; + mtd-mac-address-increment = <(-2)>; + + mdio-bus { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + + phy0: ethernet-phy@0 { + reg = <0>; + reset-gpios = <&gpio 34 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&localbus { + nor@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0 0x0 0x1000000>; + #address-cells = <1>; + #size-cells = <1>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + ath9k_cal: partition@0 { + label = "urlader"; + reg = <0x00000 0x20000>; + read-only; + }; + + partition@20000 { + label = "firmware"; + reg = <0x20000 0xf60000>; + }; + + partition@f80000 { + label = "tffs (1)"; + reg = <0xf80000 0x40000>; + read-only; + }; + + partition@fc0000 { + label = "tffs (2)"; + reg = <0xfc0000 0x40000>; + read-only; + }; + }; + }; +}; + +&pci0 { + status = "okay"; + req-mask = <0xf>; + gpio-reset = <&gpio 21 GPIO_ACTIVE_LOW>; + + wifi@0,0 { + compatible = "pci0,0"; + reg = <0x7000 0 0 0 0>; + qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:00:0e.0.bin */ + }; +}; diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index c4419ce629..0bedfcf0af 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -485,6 +485,19 @@ define Device/buffalo_wbmr-hp-g300h-b endef TARGET_DEVICES += buffalo_wbmr-hp-g300h-b +define Device/avm_fritz7312 + $(Device/AVM) + DEVICE_DTS := FRITZ7312 + IMAGE_SIZE := 15744k + DEVICE_TITLE := 1&1 WLAN-MODEM - FRITZ7312 + DEVICE_PACKAGES := kmod-ath9k kmod-owl-loader wpad-mini \ + kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \ + kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \ + ltq-adsl-app ppp-mod-pppoa \ + kmod-ltq-deu-ar9 -swconfig +endef +TARGET_DEVICES += avm_fritz7312 + define Device/avm_fritz7320 $(Device/AVM) DEVICE_DTS := FRITZ7320 diff --git a/target/linux/lantiq/xway/config-4.14 b/target/linux/lantiq/xway/config-4.14 index 5e18a4deef..64a6c55832 100644 --- a/target/linux/lantiq/xway/config-4.14 +++ b/target/linux/lantiq/xway/config-4.14 @@ -1,5 +1,6 @@ CONFIG_ADM6996_PHY=y CONFIG_AR8216_PHY=y +CONFIG_AT803X_PHY=y CONFIG_BLK_MQ_PCI=y CONFIG_CRC16=y CONFIG_CRYPTO_ACOMP2=y |