From 23f14e98ad504d406bac3f65ffcfb7897fade25f Mon Sep 17 00:00:00 2001 From: CN_SZTL Date: Sat, 19 Sep 2020 19:31:16 +0800 Subject: [PATCH] ath79: improve support for xwrt_csac Co-authored-by: Chen Minqiang --- target/linux/ath79/dts/qca9563_xwrt_csac.dts | 19 +++++++--- .../generic/base-files/etc/board.d/01_leds | 4 +++ .../generic/base-files/etc/board.d/02_network | 3 +- target/linux/ath79/image/generic.mk | 35 ++++++++++++++++++- 4 files changed, 55 insertions(+), 6 deletions(-) diff --git a/target/linux/ath79/dts/qca9563_xwrt_csac.dts b/target/linux/ath79/dts/qca9563_xwrt_csac.dts index 55e98dcaab..c13e0edee5 100644 --- a/target/linux/ath79/dts/qca9563_xwrt_csac.dts +++ b/target/linux/ath79/dts/qca9563_xwrt_csac.dts @@ -32,13 +32,11 @@ wlan2g { label = "xwrt:blue:wlan2g"; gpios = <&gpio 8 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy0tpt"; }; wlan5g { label = "xwrt:blue:wlan5g"; gpios = <&gpio 9 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy1tpt"; }; }; @@ -48,6 +46,7 @@ reset { linux,code = ; gpios = <&gpio 2 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; }; }; @@ -103,15 +102,27 @@ }; partition@50000 { - compatible = "denx,uimage"; label = "firmware"; reg = <0x050000 0xfa0000>; + + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "rootfs"; + reg = <0x000000 0xe30000>; + }; + + partition@e30000 { + label = "kernel"; + reg = <0xe30000 0x170000>; + }; }; art: partition@ff0000 { label = "art"; reg = <0xff0000 0x010000>; - read-only; }; }; }; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds index decbb35096..4ca480fb8c 100755 --- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds @@ -362,6 +362,10 @@ wd,mynet-wifi-rangeextender) ucidef_set_led_rssi "rssimedium" "RSSIMED" "$boardname:blue:rssi-med" "wlan0" "33" "100" ucidef_set_led_rssi "rssihigh" "RSSIMAX" "$boardname:blue:rssi-max" "wlan0" "66" "100" ;; +xwrt,csac) + ucidef_set_led_wlan "wlan5g" "WLAN5G" "xwrt:blue:wlan5g" "phy0tpt" + ucidef_set_led_wlan "wlan2g" "WLAN2G" "xwrt:blue:wlan2g" "phy0tpt" + ;; yuncore,a770) ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth1" ucidef_set_led_switch "lan" "LAN" "$boardname:green:lan" "switch0" "0x10" diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network index 4df27fae1a..4e58bb9487 100755 --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network @@ -574,7 +574,8 @@ ath79_setup_macs() ;; xwrt,csac) wan_mac=$(mtd_get_mac_binary art 0) - lan_mac=$(mtd_get_mac_binary art 6) + lan_mac=$(macaddr_add "$wan_mac" 1) + label_mac=$wan_mac ;; zyxel,nbg6616) label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr) diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk index f7fd8310e1..4fdfd13030 100644 --- a/target/linux/ath79/image/generic.mk +++ b/target/linux/ath79/image/generic.mk @@ -152,6 +152,34 @@ define Build/wrgg-pad-rootfs $(STAGING_DIR_HOST)/bin/padjffs2 $(IMAGE_ROOTFS) -c 64 >>$@ endef +define Build/xwrt_csac10-factory + -[ -f "$@" ] && \ + mkdir -p "$@.tmp" && \ + mv "$@" "$@.tmp/UploadBrush-bin.img" && \ + binmd5=$$($(STAGING_DIR_HOST)/bin/mkhash md5 "$@.tmp/UploadBrush-bin.img" | head -c32) && \ + oemmd5=$$(echo -n TB-CSAC10-QCA9563_9886-ROUTE-CSAC10 | $(STAGING_DIR_HOST)/bin/mkhash md5 | head -c32) && \ + echo -n $${binmd5}$${oemmd5} | $(STAGING_DIR_HOST)/bin/mkhash md5 | head -c32 >"$@.tmp/bin_random_oem.txt" && \ + echo -n V4.4-201910201745 >"$@.tmp/version.txt" && \ + $(TAR) -czf $@.tmp.tgz -C "$@.tmp" UploadBrush-bin.img bin_random_oem.txt version.txt && \ + $(STAGING_DIR_HOST)/bin/openssl aes-256-cbc -md md5 -salt -in $@.tmp.tgz -out "$@" -k QiLunSmartWL && \ + printf %32s CSAC10 >>"$@" && \ + rm -rf "$@.tmp" +endef + +define Build/xwrt_csac05-factory + -[ -f "$@" ] && \ + mkdir -p "$@.tmp" && \ + mv "$@" "$@.tmp/UploadBrush-bin.img" && \ + binmd5=$$($(STAGING_DIR_HOST)/bin/mkhash md5 "$@.tmp/UploadBrush-bin.img" | head -c32) && \ + oemmd5=$$(echo -n TB-CSAC05-QCA9563_9886-ROUTE-CSAC05 | $(STAGING_DIR_HOST)/bin/mkhash md5 | head -c32) && \ + echo -n $${binmd5}$${oemmd5} | $(STAGING_DIR_HOST)/bin/mkhash md5 | head -c32 >"$@.tmp/bin_random_oem.txt" && \ + echo -n V4.4-201910201745 >"$@.tmp/version.txt" && \ + $(TAR) -czf $@.tmp.tgz -C "$@.tmp" UploadBrush-bin.img bin_random_oem.txt version.txt && \ + $(STAGING_DIR_HOST)/bin/openssl aes-256-cbc -md md5 -salt -in $@.tmp.tgz -out "$@" -k QiLunSmartWL && \ + printf %32s CSAC05 >>"$@" && \ + rm -rf "$@.tmp" +endef + define Device/seama KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma KERNEL_INITRAMFS := $$(KERNEL) | seama @@ -1555,8 +1583,13 @@ define Device/xwrt_csac SOC := qca9563 DEVICE_VENDOR := XWRT DEVICE_MODEL := CSAC + KERNEL_SIZE := 1472k IMAGE_SIZE := 16000k - DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct kmod-usb2 + IMAGES += factory-10.bin factory-05.bin + IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 14528k | append-kernel | append-metadata | check-size $$$$(IMAGE_SIZE) + IMAGE/factory-10.bin := $$(IMAGE/sysupgrade.bin) | xwrt_csac10-factory $(1) + IMAGE/factory-05.bin := $$(IMAGE/sysupgrade.bin) | xwrt_csac05-factory $(1) + DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct ath10k-firmware-qca9888-ct kmod-usb-core kmod-usb2 endef TARGET_DEVICES += xwrt_csac