From 51fe956c4fbd6ea78f46a4aa835f142e94f32cee Mon Sep 17 00:00:00 2001 From: INAGAKI Hiroshi Date: Mon, 24 Dec 2018 15:20:25 +0900 Subject: ipq806x: add support for Buffalo WXR-2533DHP Buffalo WXR-2533DHP is a 2.4/5 GHz band 11ac router, based on Qualcomm IPQ8064. The U-Boot on WXR-2533DHP employs a complicated dual firmware protection scheme against corruptions of the kernel and rootfs images. See the notes in buffalo.sh for details. specifications: - Qualcomm IPQ8064 (384 - 1,400 MHz, 2C2T) - 512 MB of RAM (DDR3) - 256 MB of Flash (NAND) - 4T4R 2.4/5 GHz Wlan (QCA9980) - 5x 10/100/1000 Mbps Ethernet - 10x LEDs, 8x keys (6x buttons, 2x slide-switches) - 2x USB 3.0 Type-A - 12VDC/4A AC Adapter - UART through-hole on PCB - J3: Vcc, GND, TX, RX from USB port side - 115200n8 Boot instructions for the initramfs image: 1. Prepare the TFTP server with the initramfs image renamed to "wxr2300dhp-initramfs.uImage" and IP address "192.168.11.10". 2. Press the "AOSS" button while powering on the WXR-2533DHP. 3. Wait until the "Wireless" LED flashes before releasing the AOSS button. The WXR-2533DHP will grab the image from TFTP server and will boot it. Flashing instructions: To persistently write the firmware, flash an openwrt sysupgrade image from inside the initramfs, for example transfer via `scp root@192.168.1.1:/tmp` and flash on the device with `sysupgrade -n /tmp/`. Then wait ~120 seconds to let it finish the flashing process. Signed-off-by: INAGAKI Hiroshi Signed-off-by: Christian Lamparter [reworded message] --- target/linux/ipq806x/image/Makefile | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'target/linux/ipq806x/image/Makefile') diff --git a/target/linux/ipq806x/image/Makefile b/target/linux/ipq806x/image/Makefile index 6109765041..e1eb090de3 100644 --- a/target/linux/ipq806x/image/Makefile +++ b/target/linux/ipq806x/image/Makefile @@ -3,6 +3,13 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/image.mk +define Build/buffalo-rootfs-cksum + ( \ + echo -ne "\x$$(od -A n -t u1 $@ | tr -s ' ' '\n' | \ + $(STAGING_DIR_HOST)/bin/awk '{s+=$$0}END{printf "%x", 255-s%256}')"; \ + ) >> $@ +endef + define Device/Default PROFILES := Default KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts) @@ -72,6 +79,21 @@ define Device/ZyXELImage IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-to $$$${BLOCKSIZE} | sysupgrade-tar rootfs=$$$$@ | append-metadata endef +define Device/buffalo_wxr-2533dhp + $(call Device/LegacyImage) + DEVICE_DTS := qcom-ipq8064-wxr-2533dhp + DEVICE_TITLE := Buffalo WXR-2533DHP + BLOCKSIZE := 128k + PAGESIZE := 2048 + IMAGE_SIZE := 65536k + KERNEL_IN_UBI := 1 + IMAGES := sysupgrade.bin + IMAGE/sysupgrade.bin := append-rootfs | buffalo-rootfs-cksum | \ + sysupgrade-tar rootfs=$$$$@ | append-metadata + DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct +endef +TARGET_DEVICES += buffalo_wxr-2533dhp + define Device/compex_wpq864 $(call Device/FitImage) $(call Device/UbiFit) -- cgit v1.2.3