From patchwork Tue Nov 20 17:04:54 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Reinhard Max X-Patchwork-Id: 1000644 X-Patchwork-Delegate: zajec5@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=lists.openwrt.org (client-ip=198.137.202.133; helo=bombadil.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=m4x.de Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="K0brgA84"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42zsbq4h8rz9s55 for ; Wed, 21 Nov 2018 04:08:23 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:Message-Id:Date:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=1/+8TrDmO4+f1titxNr4H+Gq+K2mPqFjLmbigcqpEOo=; b=K0brgA84FIUgou mRkqOpqwRH/XQqeDNLLNxzz3V1xlyiSkioBgT2IV9c+WgofmcL1NCl4qclcxb1aeKCmcV35hTQhKP JMTVa+59OcHr5qGvIY6YbNTtVe4tY1cWuBz/Z/Q5qPG84txeaJuVQ13ip3xI1VZzDU0K/lMDssnmm MaTu0TS2y4LJfvbkxlHWtHCyDEbNaCZYZbKgFjQ/cnsHVTWoqT1AKA8QOJBZBewhIURoQIHrs0hcs 5hKrBoJcaZcej+7TsbaZ7koI1Sbbhpf7bqihRGAKxJepqa3cDfFtBd78d7CXEmiNIVc2nhoBpjE/H 4C4Bvd9OSXgGYdl8bgxA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gP9TL-0001MP-N8; Tue, 20 Nov 2018 17:05:59 +0000 Received: from mx2.suse.de ([195.135.220.15] helo=mx1.suse.de) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gP9TC-0001G9-Ac for openwrt-devel@lists.openwrt.org; Tue, 20 Nov 2018 17:05:57 +0000 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 6D81DB11C; Tue, 20 Nov 2018 17:05:35 +0000 (UTC) From: Reinhard Max To: openwrt-devel@lists.openwrt.org Date: Tue, 20 Nov 2018 18:04:54 +0100 Message-Id: <20181120170454.17314-1-reinhard@m4x.de> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181120_090550_659439_E0E67B6E X-CRM114-Status: GOOD ( 13.46 ) X-Spam-Score: -2.3 (--) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (-2.3 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at http://www.dnswl.org/, medium trust [195.135.220.15 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different Subject: [OpenWrt-Devel] [PATCH] lantiq: add support for Fritz!Box 7360v2 X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Reinhard Max Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org This patch adds support for Fritz!Box 7360 v2 (pollin.de currently sells these as refurbished). It has 32 MiB of flash compared to the 16 MiB of v1 and SL. Signed-off-by: Reinhard Max Reviewed-by: Torsten Duwe --- .../arch/mips/boot/dts/FRITZ7360.dtsi | 201 ++++++++++++++++++ .../arch/mips/boot/dts/FRITZ7360SL.dts | 198 +---------------- .../arch/mips/boot/dts/FRITZ7360v2.dts | 51 +++++ target/linux/lantiq/image/Makefile | 10 + 4 files changed, 264 insertions(+), 196 deletions(-) create mode 100644 target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360.dtsi create mode 100644 target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360v2.dts diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360.dtsi b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360.dtsi new file mode 100644 index 0000000000..d7ff374bf4 --- /dev/null +++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360.dtsi @@ -0,0 +1,201 @@ +/dts-v1/; + +#include "vr9.dtsi" + +#include +#include + +/ { + compatible = "avm,fritz7360", "lantiq,xway", "lantiq,vr9"; + + chosen { + bootargs = "console=ttyLTQ0,115200"; + }; + + aliases { + led-boot = &power_green; + led-failsafe = &power_red; + led-running = &power_green; + led-upgrade = &power_green; + + led-dsl = &info_green; + led-wifi = &wifi; + }; + + memory@0 { + reg = <0x0 0x8000000>; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <100>; + dect { + label = "dect"; + gpios = <&gpio 1 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + wifi { + label = "wifi"; + gpios = <&gpio 29 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + power_green: power { + label = "fritz7360sl:green:power"; + gpios = <&gpio 32 GPIO_ACTIVE_LOW>; + default-state = "keep"; + }; + power_red: power2 { + label = "fritz7360sl:red:power"; + gpios = <&gpio 33 GPIO_ACTIVE_LOW>; + }; + info_red { + label = "fritz7360sl:red:info"; + gpios = <&gpio 34 GPIO_ACTIVE_LOW>; + }; + info_green: info_green { + label = "fritz7360sl:green:info"; + gpios = <&gpio 47 GPIO_ACTIVE_LOW>; + }; + wifi: wifi { + label = "fritz7360sl:green:wlan"; + gpios = <&gpio 36 GPIO_ACTIVE_LOW>; + }; + dect { + label = "fritz7360sl:green:dect"; + gpios = <&gpio 35 GPIO_ACTIVE_LOW>; + }; + }; +}; + +ð0 { + lan: interface@0 { + compatible = "lantiq,xrx200-pdi"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + mtd-mac-address = <&urlader 0xa91>; + mtd-mac-address-increment = <(-2)>; + lantiq,switch; + + ethernet@0 { + compatible = "lantiq,xrx200-pdi-port"; + reg = <0>; + phy-mode = "rmii"; + phy-handle = <&phy0>; + }; + ethernet@1 { + compatible = "lantiq,xrx200-pdi-port"; + reg = <1>; + phy-mode = "rmii"; + phy-handle = <&phy1>; + }; + ethernet@2 { + compatible = "lantiq,xrx200-pdi-port"; + reg = <2>; + phy-mode = "gmii"; + phy-handle = <&phy11>; + }; + ethernet@3 { + compatible = "lantiq,xrx200-pdi-port"; + reg = <4>; + phy-mode = "gmii"; + phy-handle = <&phy13>; + }; + }; + + mdio@0 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "lantiq,xrx200-mdio"; + reg = <0>; + + phy0: ethernet-phy@0 { + reg = <0x00>; + compatible = "ethernet-phy-ieee802.3-c22"; + reset-gpios = <&gpio 37 GPIO_ACTIVE_LOW>; + }; + phy1: ethernet-phy@1 { + reg = <0x01>; + compatible = "ethernet-phy-ieee802.3-c22"; + reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>; + }; + 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"; + }; + }; +}; + +&gphy0 { + lantiq,gphy-mode = ; +}; + +&gphy1 { + lantiq,gphy-mode = ; +}; + +&gpio { + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + mdio { + lantiq,groups = "mdio"; + lantiq,function = "mdio"; + }; + phy-rst { + lantiq,pins = "io37", "io44"; + lantiq,pull = <0>; + lantiq,open-drain; + lantiq,output = <1>; + }; + pcie-rst { + lantiq,pins = "io38"; + lantiq,pull = <0>; + lantiq,output = <1>; + }; + }; +}; + +&pcie0 { + pcie@0 { + reg = <0 0 0 0 0>; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + device_type = "pci"; + + wifi@168c,002e { + compatible = "pci168c,002e"; + reg = <0 0 0 0 0>; + qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:01:00.0.bin */ + }; + }; +}; + +&usb_phy0 { + status = "okay"; +}; + +&usb_phy1 { + status = "okay"; +}; + +&usb0 { + status = "okay"; +}; + +&usb1 { + status = "okay"; +}; diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts index 91520c8137..865d443c63 100644 --- a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts +++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360SL.dts @@ -1,172 +1,10 @@ /dts-v1/; -#include "vr9.dtsi" - -#include -#include +#include "FRITZ7360.dtsi" / { - compatible = "avm,fritz7360sl", "lantiq,xway", "lantiq,vr9"; + compatible = "avm,fritz7360sl", "avm,fritz7360", "lantiq,xway", "lantiq,vr9"; model = "1&1 HomeServer"; - - chosen { - bootargs = "console=ttyLTQ0,115200"; - }; - - aliases { - led-boot = &power_green; - led-failsafe = &power_red; - led-running = &power_green; - led-upgrade = &power_green; - - led-dsl = &info_green; - led-wifi = &wifi; - }; - - memory@0 { - reg = <0x0 0x8000000>; - }; - - gpio-keys-polled { - compatible = "gpio-keys-polled"; - #address-cells = <1>; - #size-cells = <0>; - poll-interval = <100>; - dect { - label = "dect"; - gpios = <&gpio 1 GPIO_ACTIVE_HIGH>; - linux,code = ; - }; - wifi { - label = "wifi"; - gpios = <&gpio 29 GPIO_ACTIVE_HIGH>; - linux,code = ; - }; - }; - - gpio-leds { - compatible = "gpio-leds"; - - power_green: power { - label = "fritz7360sl:green:power"; - gpios = <&gpio 32 GPIO_ACTIVE_LOW>; - default-state = "keep"; - }; - power_red: power2 { - label = "fritz7360sl:red:power"; - gpios = <&gpio 33 GPIO_ACTIVE_LOW>; - }; - info_red { - label = "fritz7360sl:red:info"; - gpios = <&gpio 34 GPIO_ACTIVE_LOW>; - }; - info_green: info_green { - label = "fritz7360sl:green:info"; - gpios = <&gpio 47 GPIO_ACTIVE_LOW>; - }; - wifi: wifi { - label = "fritz7360sl:green:wlan"; - gpios = <&gpio 36 GPIO_ACTIVE_LOW>; - }; - dect { - label = "fritz7360sl:green:dect"; - gpios = <&gpio 35 GPIO_ACTIVE_LOW>; - }; - }; -}; - -ð0 { - lan: interface@0 { - compatible = "lantiq,xrx200-pdi"; - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - mtd-mac-address = <&urlader 0xa91>; - mtd-mac-address-increment = <(-2)>; - lantiq,switch; - - ethernet@0 { - compatible = "lantiq,xrx200-pdi-port"; - reg = <0>; - phy-mode = "rmii"; - phy-handle = <&phy0>; - }; - ethernet@1 { - compatible = "lantiq,xrx200-pdi-port"; - reg = <1>; - phy-mode = "rmii"; - phy-handle = <&phy1>; - }; - ethernet@2 { - compatible = "lantiq,xrx200-pdi-port"; - reg = <2>; - phy-mode = "gmii"; - phy-handle = <&phy11>; - }; - ethernet@3 { - compatible = "lantiq,xrx200-pdi-port"; - reg = <4>; - phy-mode = "gmii"; - phy-handle = <&phy13>; - }; - }; - - mdio@0 { - #address-cells = <1>; - #size-cells = <0>; - compatible = "lantiq,xrx200-mdio"; - reg = <0>; - - phy0: ethernet-phy@0 { - reg = <0x00>; - compatible = "ethernet-phy-ieee802.3-c22"; - reset-gpios = <&gpio 37 GPIO_ACTIVE_LOW>; - }; - phy1: ethernet-phy@1 { - reg = <0x01>; - compatible = "ethernet-phy-ieee802.3-c22"; - reset-gpios = <&gpio 44 GPIO_ACTIVE_LOW>; - }; - 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"; - }; - }; -}; - -&gphy0 { - lantiq,gphy-mode = ; -}; - -&gphy1 { - lantiq,gphy-mode = ; -}; - -&gpio { - pinctrl-names = "default"; - pinctrl-0 = <&state_default>; - - state_default: pinmux { - mdio { - lantiq,groups = "mdio"; - lantiq,function = "mdio"; - }; - phy-rst { - lantiq,pins = "io37", "io44"; - lantiq,pull = <0>; - lantiq,open-drain; - lantiq,output = <1>; - }; - pcie-rst { - lantiq,pins = "io38"; - lantiq,pull = <0>; - lantiq,output = <1>; - }; - }; }; &localbus { @@ -206,35 +44,3 @@ }; }; }; - -&pcie0 { - pcie@0 { - reg = <0 0 0 0 0>; - #interrupt-cells = <1>; - #size-cells = <2>; - #address-cells = <3>; - device_type = "pci"; - - wifi@168c,002e { - compatible = "pci168c,002e"; - reg = <0 0 0 0 0>; - qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:01:00.0.bin */ - }; - }; -}; - -&usb_phy0 { - status = "okay"; -}; - -&usb_phy1 { - status = "okay"; -}; - -&usb0 { - status = "okay"; -}; - -&usb1 { - status = "okay"; -}; diff --git a/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360v2.dts b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360v2.dts new file mode 100644 index 0000000000..549b0caa93 --- /dev/null +++ b/target/linux/lantiq/files-4.14/arch/mips/boot/dts/FRITZ7360v2.dts @@ -0,0 +1,51 @@ +/dts-v1/; + +#include "FRITZ7360.dtsi" + +/ { + compatible = "avm,fritz7360v2", "avm,fritz7360", "lantiq,xway", "lantiq,vr9"; + model = "AVM Fritz!Box Fon WLAN 7360 Rev. 2"; +}; + +&localbus { + nor@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0 0x0 0x2000000>; + #address-cells = <1>; + #size-cells = <1>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + urlader: partition@0 { + label = "urlader"; + reg = <0x00000 0x20000>; + read-only; + }; + + partition@20000 { + label = "firmware"; + reg = <0x20000 0x1e60000>; + }; + + partition@1e80000 { + label = "jffs2"; + reg = <0x1e80000 0x100000>; + }; + + partition@1f80000 { + label = "tffs (1)"; + reg = <0x1f80000 0x40000>; + read-only; + }; + + partition@1fc0000 { + label = "tffs (2)"; + reg = <0x1fc0000 0x40000>; + read-only; + }; + }; + }; +}; diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index e9d9e42027..099e8cecea 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -664,6 +664,16 @@ define Device/avm_fritz7360sl endef TARGET_DEVICES += avm_fritz7360sl +define Device/avm_fritz7360v2 + $(Device/AVM) + IMAGE_SIZE := 31104k + DEVICE_DTS := FRITZ7360v2 + DEVICE_TITLE := AVM Fritz!Box Fon WLAN 7360 Rev. 2 + DEVICE_PACKAGES := kmod-ath9k kmod-owl-loader wpad-basic kmod-usb-dwc2 + SUPPORTED_DEVICES += FRITZ7360v2 +endef +TARGET_DEVICES += avm_fritz7360v2 + define Device/arcadyan_vg3503j IMAGE_SIZE := 8000k DEVICE_DTS := VG3503J