diff options
author | Jihoon Han <rapid_renard@renard.ga> | 2021-10-01 14:53:06 +0900 |
---|---|---|
committer | Adrian Schmutzler <freifunk@adrianschmutzler.de> | 2021-10-31 21:58:28 +0100 |
commit | 84451173f08e7af9e47c85c1a0cd8e041f4ec568 (patch) | |
tree | 7dc4dcc6d5b3b90bd3957f71cd5743d332dbfb8d /target/linux/ath79/image | |
parent | a61a41d4aac6765544961aa9ea303af2a3a9634c (diff) | |
download | upstream-84451173f08e7af9e47c85c1a0cd8e041f4ec568.tar.gz upstream-84451173f08e7af9e47c85c1a0cd8e041f4ec568.tar.bz2 upstream-84451173f08e7af9e47c85c1a0cd8e041f4ec568.zip |
ath79: add support for Dongwon T&I DW02-412H
Dongwon T&I DW02-412H is a 2.4/5GHz band 11ac (WiFi-5) router, based on
Qualcomm Atheros QCA9557.
Specifications
--------------
- SoC: Qualcomm Atheros QCA9557-AT4A
- RAM: DDR2 128MB
- Flash: SPI NOR 2MB (Winbond W25Q16DVSSIG / ESMT F25L16PA(2S)) +
NAND 64/128MB
- WiFi:
- 2.4GHz: QCA9557 WMAC
- 5GHz: QCA9882-BR4A
- Ethernet: 5x 10/100/1000Mbps
- Switch: QCA8337N-AL3C
- USB: 1x USB 2.0
- UART:
- JP2: 3.3V, TX, RX, GND (3.3V is the square pad) / 115200 8N1
Installation
--------------
1. Connect a serial interface to UART header and
interrupt the autostart of kernel.
2. Transfer the factory image via TFTP and write it to the NAND flash.
3. Update U-Boot environment variable.
> tftpboot 0x81000000 <your image>-factory.img
> nand erase 0x1000000
> nand write 0x81000000 0x1000000 ${filesize}
> setenv bootpart 2
> saveenv
Revert to stock firmware
--------------
1. Revert to stock U-Boot environment variable.
> setenv bootpart 1
> saveenv
MAC addresses as verified by OEM firmware
--------------
WAN: *:XX (label)
LAN: *:XX + 1
2.4G: *:XX + 3
5G: *:XX + 4
The label MAC address was found in art 0x0.
Credits
--------------
Credit goes to the @manatails who first developed how to port OpenWRT
to this device and had a significant impact on this patch.
And thanks to @adschm and @mans0n for guiding me to revise the code
in many ways.
Signed-off-by: Jihoon Han <rapid_renard@renard.ga>
Reviewed-by: Sungbo Eo <mans0n@gorani.run>
Tested-by: Sungbo Eo <mans0n@gorani.run>
Diffstat (limited to 'target/linux/ath79/image')
-rw-r--r-- | target/linux/ath79/image/nand.mk | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/target/linux/ath79/image/nand.mk b/target/linux/ath79/image/nand.mk index 8d3d2ce5b2..b34e796ac3 100644 --- a/target/linux/ath79/image/nand.mk +++ b/target/linux/ath79/image/nand.mk @@ -1,3 +1,16 @@ +define Build/dw-headers + head -c 4 $@ >> $@.tmp && \ + head -c 8 /dev/zero >> $@.tmp && \ + tail -c +9 $@ >> $@.tmp && \ + ( \ + header_crc="$$(head -c 68 $@.tmp | gzip -c | \ + tail -c 8 | od -An -N4 -tx4 --endian little | tr -d ' \n')"; \ + printf "$$(echo $$header_crc | sed 's/../\\x&/g')" | \ + dd of=$@.tmp bs=4 count=1 seek=1 conv=notrunc \ + ) + mv $@.tmp $@ +endef + # attention: only zlib compression is allowed for the boot fs define Build/zyxel-buildkerneljffs mkdir -p $@.tmp/boot @@ -76,6 +89,41 @@ define Device/domywifi_dw33d endef TARGET_DEVICES += domywifi_dw33d +define Device/dongwon_dw02-412h + SOC := qca9557 + DEVICE_VENDOR := Dongwon T&I + DEVICE_MODEL := DW02-412H + DEVICE_ALT0_VENDOR := KT + DEVICE_ALT0_MODEL := GiGA WiFi home + DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct + KERNEL_SIZE := 8192k + BLOCKSIZE := 128k + PAGESIZE := 2048 + KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | dw-headers + KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma | dw-headers + UBINIZE_OPTS := -E 5 + IMAGES += factory.img + IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \ + check-size + IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata +endef + +define Device/dongwon_dw02-412h-64m + $(Device/dongwon_dw02-412h) + DEVICE_VARIANT := (64M) + DEVICE_ALT0_VARIANT := (64M) + IMAGE_SIZE := 49152k +endef +TARGET_DEVICES += dongwon_dw02-412h-64m + +define Device/dongwon_dw02-412h-128m + $(Device/dongwon_dw02-412h) + DEVICE_VARIANT := (128M) + DEVICE_ALT0_VARIANT := (128M) + IMAGE_SIZE := 114688k +endef +TARGET_DEVICES += dongwon_dw02-412h-128m + define Device/glinet_gl-ar300m-common-nand SOC := qca9531 DEVICE_VENDOR := GL.iNet |