From 712ebe95f81de11796d1ba02dfc1a402dbd203a2 Mon Sep 17 00:00:00 2001 From: Tino Reichardt Date: Sun, 26 Feb 2017 21:29:37 +0100 Subject: [PATCH] lantiq: add Allnet ALL0333CJ support This patch adds support for the Allnet ADSL2+ Modem ALL0333CJ. Specifications: - SoC: Amazon-SE - RAM: 16MB - Storage: 4MB NOR FLash - LEDs: Power, Ethernet, DSL (Sync) - Buttons: 1x Reset Button (not currently supported, will be done) - 1x Ethernet-Port: 1x RJ45 10/100BaseTX - 1x WAN-Port: AnnexB & J, G.992.1(ADSL), G.992.3(ADSL2), G.992.5(ADSL2+) Installation: - can be done via telnet+tftp or serial console - default passwords: - via telnet (root:admin) - via webinterface http://172.16.1.254:8235/ (admin:coolwhite) Installation via telnet / tftp: host: # your own host must have an tftpd daemon, then do this: host: ifconfig eth0:172 172.16.1.1 up host: # telnet to allnet modem, root:admin host: telnet 172.16.1.254 modem: # kill this daemon, it spams your console modem: killall dsl_cpe_control modem: # change to some place in ram: modem: cd /ramdisk/tftp_upload modem: # load lede-lantiq-ase-ALL0333CJ-squashfs-sysupgrade.bin alias uImage modem: tftp -g -r uImage 172.16.1.1 modem: # load these extra tools from your tftpd via: modem: # source: https://github.com/mcmilk/uboot-utils/releases/download/0.1/mips32.tar.gz modem: tftp -g -r flashwrite 172.16.1.1 modem: tftp -g -r fw_setenv 172.16.1.1 modem: tftp -g -r fw.conf 172.16.1.1 modem: ln -s fw_setenv fw_printenv modem: chmod +x * modem: ./fw_setenv disable_recovery y modem: ./fw_setenv kernel_addr 0xb0010000 modem: ./flashwrite /dev/mtd/1 uImage 0 Installation via serial line at uboot: uboot: # erase everything exept bootloader uboot: protect on b0000000 +10000; protect on b03f0000 +10000 uboot: erase all uboot: # get new firmware via tftp: uboot: tftpboot 0x80100000 uImage; setenv kernel_addr 0xb0010000 uboot: # copy to flash: uboot: cp.b 0x80100000 $(kernel_addr) $(filesize) uboot: # disable proprietary image checking: uboot: setenv disable_recovery=y; saveenv uboot: # reboot with LEDE ;) uboot: reset Ethernet works as expected, DSL syncronization does not work properly currently, I am working on this issue. Signed-off-by: Tino Reichardt --- .../lantiq/base-files/etc/board.d/01_leds | 3 + .../lantiq/base-files/etc/board.d/02_network | 7 ++ target/linux/lantiq/dts/ALL0333CJ.dts | 119 ++++++++++++++++++ target/linux/lantiq/image/Makefile | 10 ++ 4 files changed, 139 insertions(+) create mode 100644 target/linux/lantiq/dts/ALL0333CJ.dts diff --git a/target/linux/lantiq/base-files/etc/board.d/01_leds b/target/linux/lantiq/base-files/etc/board.d/01_leds index 8de222a7da..b6461f9e9a 100755 --- a/target/linux/lantiq/base-files/etc/board.d/01_leds +++ b/target/linux/lantiq/base-files/etc/board.d/01_leds @@ -35,6 +35,9 @@ led_internet="$(lantiq_get_dt_led internet)" board=$(board_name) case "$board" in +ALL0333CJ) + ucidef_set_led_netdev "lan" "lan" "all0333cj:green:lan" "eth0.1" + ;; ARV4525PW) ucidef_set_led_netdev "wifi" "wifi" "arv4525pw:green:wlan" "wlan0" ;; 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 f63be9e3fd..55498b9f59 100755 --- a/target/linux/lantiq/base-files/etc/board.d/02_network +++ b/target/linux/lantiq/base-files/etc/board.d/02_network @@ -26,6 +26,13 @@ ACMP252|GIGASX76X) "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0" ;; +ALL0333CJ) + annex="b" + lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr) + wan_mac=$(macaddr_add "$lan_mac" 1) + ucidef_set_interface_lan 'eth0' + ;; + ARV4510PW) lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr) wan_mac=$(macaddr_add "$lan_mac" 1) diff --git a/target/linux/lantiq/dts/ALL0333CJ.dts b/target/linux/lantiq/dts/ALL0333CJ.dts new file mode 100644 index 0000000000..99174c53fb --- /dev/null +++ b/target/linux/lantiq/dts/ALL0333CJ.dts @@ -0,0 +1,119 @@ +/dts-v1/; + +#include "amazonse.dtsi" + +/ { + model = "ALL0333CJ - Allnet ALL0333CJ DSL Modem"; + + chosen { + bootargs = "console=ttyLTQ0,115200"; + + aliases { + led-boot = &power; + led-failsafe = &power; + led-running = &power; + + led-dsl = &dsl; + led-internet = &online_green; + }; + + }; + + memory@0 { + reg = <0x0 0x1000000>; + }; + + fpi@b0000000 { + etop@E180000 { + phy-mode = "mii"; + }; + }; + + fpi@10000000 { + gpio: pinmux@E100B10 { + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + asc { + lantiq,groups = "asc"; + lantiq,function = "asc"; + }; + keys_in { + lantiq,pins = "io0",/* "io25", */"io29"; + lantiq,pull = <2>; + lantiq,open-drain = <1>; + }; + }; + }; + + localbus@0 { + nor-boot@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0 0x0 0x400000>; + #address-cells = <1>; + #size-cells = <1>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "uboot"; + reg = <0x00000 0x10000>; + read-only; + }; + + partition@10000 { + label = "firmware"; + reg = <0x10000 0x3ef200>; + }; + + partition@3ff200 { + label = "uboot_env"; + reg = <0x3ff200 0xc00>; + read-only; + }; + + partition@3ffe00 { + label = "dummy_bits"; + reg = <0x3ffe00 0x200>; + read-only; + }; + }; + }; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + /* power led: red=off, green=on */ + power: power { + label = "all0333cj:green:power"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + default-state = "keep"; + }; + + lan: lan { + label = "all0333cj:green:lan"; + gpios = <&gpio 3 GPIO_ACTIVE_LOW>; + }; + + dsl: dsl { + label = "all0333cj:green:dsl"; + gpios = <&gpio 1 GPIO_ACTIVE_LOW>; + }; + + online_green: online { + label = "all0333cj:green:online"; + gpios = <&gpio 12 GPIO_ACTIVE_LOW>; + }; + online_red { + label = "all0333cj:red:online"; + gpios = <&gpio 4 GPIO_ACTIVE_LOW>; + }; + }; +}; diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index 572c9b3ca7..1b194b3e7b 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -108,6 +108,16 @@ endef ifeq ($(SUBTARGET),ase) +define Device/ALL0333CJ + IMAGE_SIZE := 3700k + DEVICE_DTS := ALL0333CJ + DEVICE_TITLE := Allnet ALL0333CJ + DEVICE_PACKAGES := kmod-ltq-adsl-ase kmod-ltq-adsl-ase-mei \ + kmod-ltq-adsl-ase-fw-b kmod-ltq-atm-ase \ + ltq-adsl-app ppp-mod-pppoe +endef +TARGET_DEVICES += ALL0333CJ + define Device/DGN1000B IMAGE_SIZE := 6000k DEVICE_DTS := DGN1000B -- 2.30.2