openwrt/target/linux/ath79
John Thomson 7d33aedd10 generic: platform/mikrotik: add wlan lz77 decompress
A number of new (or with recently updated caldata)
Mikrotik devices are using LZ77 magic for wlan tag hard_config data.
New devices include the Chateau LTE12 [1], and ax devices [2]
Newly factory flashed devices may include the hap ac3 [3]

This can be seen in decoded OEM supout [4] dmesg:
"radio data lz77 decompressed from"…

Investigating an arm RouterOS flash.ko module, and supplied example
hard_config dumps, the format was guessed via decompilation and live
debugging [5]. This decoder was then built from the guessed format
specification.

debug prints can be enabled in a DYNAMIC_DEBUG kernel build via the
kernel cmdline:

        chosen {
-               bootargs = "console=ttyS0,115200";
+               bootargs = "console=ttyS0,115200 dyndbg=\"file drivers/platform/mikrotik/* +p\"";
        };

[1]: https://forum.openwrt.org/t/no-wireless-mikrotik-rbd53ig-5hacd2hnd/157763/4
[2]: https://forum.openwrt.org/t/mikrotik-routeros-v7-x-and-openwrt-sysupgrade/148072/17
[3]: https://forum.openwrt.org/t/adding-support-for-mikrotik-hap-ax2/133715/47
[4]: https://github.com/farseeker/go-mikrotik-rif
[5]: https://github.com/john-tho/routeros-wlan-lz77-decode

Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
Link: https://github.com/openwrt/openwrt/pull/15774
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-10-08 10:45:58 +02:00
..
base-files/etc/hotplug.d/ieee80211 ath79: migrate Archer C5 5GHz radio device paths 2022-03-31 18:07:29 +02:00
dts ath79: qca955x ag71xx upstream driver fix 2024-09-22 18:42:58 +02:00
files ath79: gpio-latch-mikrotik: use devm_mutex_init 2024-10-07 15:15:27 +02:00
generic ath79: disable ath79 USB phy drivers by default 2024-09-22 23:58:47 +02:00
image treewide: rename ZyXEL to Zyxel 2024-08-25 15:08:25 +02:00
mikrotik generic: platform/mikrotik: add wlan lz77 decompress 2024-10-08 10:45:58 +02:00
nand ath79: disable ath79 USB phy drivers by default 2024-09-22 23:58:47 +02:00
patches-6.6 ath79: ar7200 usb phy: simplify probe 2024-10-07 22:21:08 +02:00
tiny ath79: disable ath79 USB phy drivers by default 2024-09-22 23:58:47 +02:00
config-6.6 ath79: disable ath79 USB phy drivers by default 2024-09-22 23:58:47 +02:00
Makefile ath79: switch default kernel to 6.6 2024-06-14 17:38:09 +02:00
modules.mk ath79: add new OF only target for QCA MIPS silicon 2018-05-07 08:06:51 +02:00