Skip to content

Commit

Permalink
Add support for Linksys WHW03 V1
Browse files Browse the repository at this point in the history
This patch adds support for the Linksys WHW03 V1 which is a slightly
different variant of the V2. The V1 is a stripped down version of
the V2 which has some more internal storage and IOT radios.

For the time being it must be compiled on openwrt master
  • Loading branch information
jkilpatr committed Jun 20, 2024
1 parent a84b1e0 commit 9c25371
Show file tree
Hide file tree
Showing 6 changed files with 164 additions and 1 deletion.
74 changes: 74 additions & 0 deletions config/linksys_whw03
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
CONFIG_TARGET_ipq40xx=y
CONFIG_TARGET_ipq40xx_generic=y
CONFIG_TARGET_ipq40xx_generic_DEVICE_linksys_whw03=y
CONFIG_HTOP_LMSENSORS=y
CONFIG_IFSTAT_SNMP=y
CONFIG_LIBCURL_COOKIES=y
CONFIG_LIBCURL_FILE=y
CONFIG_LIBCURL_FTP=y
CONFIG_LIBCURL_HTTP=y
CONFIG_LIBCURL_MBEDTLS=y
CONFIG_LIBCURL_NGHTTP2=y
CONFIG_LIBCURL_NO_SMB="!"
CONFIG_LIBCURL_PROXY=y
CONFIG_LIBCURL_UNIX_SOCKETS=y
CONFIG_OPENSSL_ENGINE=y
CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM=y
CONFIG_OPENSSL_WITH_ASM=y
CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y
CONFIG_OPENSSL_WITH_CMS=y
CONFIG_OPENSSL_WITH_DEPRECATED=y
CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y
CONFIG_OPENSSL_WITH_IDEA=y
CONFIG_OPENSSL_WITH_MDC2=y
CONFIG_OPENSSL_WITH_PSK=y
CONFIG_OPENSSL_WITH_SEED=y
CONFIG_OPENSSL_WITH_SRP=y
CONFIG_OPENSSL_WITH_TLS13=y
CONFIG_OPENSSL_WITH_WHIRLPOOL=y
CONFIG_PACKAGE_althea-babeld=y
CONFIG_PACKAGE_althea-cron-jobs=y
CONFIG_PACKAGE_althea-dash=y
CONFIG_PACKAGE_althea-rust-binaries=y
CONFIG_PACKAGE_althea-tools=y
CONFIG_PACKAGE_ca-certificates=y
CONFIG_PACKAGE_curl=y
CONFIG_PACKAGE_htop=y
CONFIG_PACKAGE_ifstat=y
CONFIG_PACKAGE_iftop=y
CONFIG_PACKAGE_iperf3=y
CONFIG_PACKAGE_ipset=y
CONFIG_PACKAGE_kmod-crypto-lib-chacha20=y
CONFIG_PACKAGE_kmod-crypto-lib-chacha20poly1305=y
CONFIG_PACKAGE_kmod-crypto-lib-curve25519=y
CONFIG_PACKAGE_kmod-crypto-lib-poly1305=y
CONFIG_PACKAGE_kmod-ipt-core=y
CONFIG_PACKAGE_kmod-ipt-ipset=y
CONFIG_PACKAGE_kmod-nf-ipt=y
CONFIG_PACKAGE_kmod-sched-cake=y
CONFIG_PACKAGE_kmod-sched-core=y
CONFIG_PACKAGE_kmod-udptunnel4=y
CONFIG_PACKAGE_kmod-udptunnel6=y
CONFIG_PACKAGE_kmod-wireguard=y
CONFIG_PACKAGE_libatomic=y
CONFIG_PACKAGE_libcurl=y
CONFIG_PACKAGE_libiperf3=y
CONFIG_PACKAGE_libipset=y
CONFIG_PACKAGE_libncurses=y
CONFIG_PACKAGE_libnetsnmp=y
CONFIG_PACKAGE_libnghttp2=y
CONFIG_PACKAGE_libopenssl=y
CONFIG_PACKAGE_libpcap=y
CONFIG_PACKAGE_libpci=y
CONFIG_PACKAGE_libpcre2=y
CONFIG_PACKAGE_libustream-mbedtls=m
CONFIG_PACKAGE_libustream-openssl=y
CONFIG_PACKAGE_mtr-nojson=y
CONFIG_PACKAGE_nano=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_tc-tiny=y
CONFIG_PACKAGE_tcpdump=y
CONFIG_PACKAGE_terminfo=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_PACKAGE_wireguard-tools=y
CONFIG_PCRE2_JIT_ENABLED=y
28 changes: 28 additions & 0 deletions profiles/devices/linksys-whw03.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
conf_to_build: linksys_whw03
device: linksys_whw03
package_id: arm_cortex-a7_neon-vfpv4
image_paths:
- "ipq40xx/generic/openwrt-ipq40xx-generic-linksys_whw03-squashfs-factory.bin"
- "ipq40xx/generic/openwrt-ipq40xx-generic-linksys_whw03-squashfs-sysupgrade.bin"
supported: true
version: master

private_radio:
- radio0
- radio1
- radio2

# does not support channel 11
channel: 1
# note the first radio on this device must take channel 149
# with the last device taking channel 36
five_ghz_channel: 36
five_ghz_channel_alt: 149

listen_interfaces:
- wan

lan_interfaces: "lan"


rust_target: armv7-unknown-linux-musleabihf
8 changes: 8 additions & 0 deletions roles/build-config/templates/linksys_whw03-network.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
config globals 'globals'
option ula_prefix 'auto'

{% for interface in listen_interfaces %}
config interface 'rita_{{interface | replace(".","")}}'
option ifname {{interface}}
option proto static
{% endfor %}
47 changes: 47 additions & 0 deletions roles/build-config/templates/linksys_whw03-wireless.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
config wifi-device 'radio0'
option type 'mac80211'
option path 'soc/40000000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
option channel '{{five_ghz_channel}}'
option band '5g'
option htmode 'VHT80'
option disabled '{{wifi_disabled}}'

config wifi-iface 'default_radio0'
option device 'radio0'
option network 'lan'
option mode 'ap'
option ssid '{{wifi_ssid_five_ghz}}'
option encryption '{{wifi_encryption}}'
option key '{{wifi_key}}'

config wifi-device 'radio1'
option type 'mac80211'
option path 'platform/soc/a000000.wifi'
option channel '{{channel}}'
option band '2g'
option htmode 'HT20'
option disabled '{{wifi_disabled}}'

config wifi-iface 'default_radio1'
option device 'radio1'
option network 'lan'
option mode 'ap'
option ssid '{{wifi_ssid_two_ghz}}'
option encryption '{{wifi_encryption}}'
option key '{{wifi_key}}'

config wifi-device 'radio2'
option type 'mac80211'
option path 'platform/soc/a800000.wifi'
option channel '{{five_ghz_channel_alt}}'
option band '5g'
option htmode 'VHT80'
option disabled '{{wifi_disabled}}'

config wifi-iface 'default_radio2'
option device 'radio2'
option network 'lan'
option mode 'ap'
option ssid '{{wifi_ssid_five_ghz}}'
option encryption '{{wifi_encryption}}'
option key '{{wifi_key}}'
5 changes: 4 additions & 1 deletion scripts/build-default-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,11 @@ ansible-playbook -e @profiles/devices/mr8300.yml -e @profiles/management/althea-
ansible-playbook -e @profiles/devices/ea8300.yml -e @profiles/management/althea-release.yml firmware-build.yml
ansible-playbook -e @profiles/devices/mikrotik_hap-ac2.yml -e @profiles/management/althea-release.yml firmware-build.yml
ansible-playbook -e @profiles/devices/mikrotik_hap-ac3.yml -e @profiles/management/althea-release.yml firmware-build.yml
ansible-playbook -e @profiles/devices/linksys-whw03v2.yml -e @profiles/management/hawk-managed.yml firmware-build.yml
ansible-playbook -e @profiles/devices/linksys-whw03v2.yml -e @profiles/management/althea-release.yml firmware-build.yml
ansible-playbook -e @profiles/devices/netgear_ex6100v2.yml -e @profiles/management/althea-release.yml firmware-build.yml

#broadcom
ansible-playbook -e @profiles/devices/pi4-64.yml -e @profiles/management/althea-release.yml firmware-build.yml

# ipq40xx on openwrt master
ansible-playbook -e @profiles/devices/linksys-whw03.yml -e @profiles/management/althea-release.yml firmware-build.yml
3 changes: 3 additions & 0 deletions scripts/build-managed-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,6 @@ ansible-playbook -e @profiles/devices/linksys-whw03v2.yml -e @profiles/managemen

#broadcom
ansible-playbook -e @profiles/devices/pi4-64.yml -e @profiles/management/hawk-managed.yml firmware-build.yml

# ipq40xx on openwrt master
ansible-playbook -e @profiles/devices/linksys-whw03.yml -e @profiles/management/hawk-managed.yml firmware-build.yml

0 comments on commit 9c25371

Please sign in to comment.