ar71xx: mikrotik: bypass id check in __rb_get_wlan_data()
authorThibaut VARÈNE <hacks@slashdirt.org>
Fri, 8 May 2020 11:39:10 +0000 (13:39 +0200)
committerKoen Vandeputte <koen.vandeputte@ncentric.com>
Tue, 12 May 2020 10:41:08 +0000 (12:41 +0200)
commit1c6990fe6d198718850b6a37998416cac69f6f53
tree1a432e00a4be88036cbd81a0f5c96c15df0d2dd9
parent0fed36dd484272eb546dd69f4dc84221ca5f01a5
ar71xx: mikrotik: bypass id check in __rb_get_wlan_data()

The id parameter in __rb_get_wlan_data() was incorrectly used on the
assumption that id "0" would always be tied to ath9k with RLE encoding
and positive id (in fact, only id "1" was valid) would always be tied to
("external") ath10k with LZO encoding.

Newer hardware revisions of supported devices prove this assumption to
be invalid, with ath9k caldata being now wrapped in MAGIC_ERD and LZO
compressed, so disable this check to allow newer hardware to correctly
decode caldata for ath9k. Since ath10k caldata is no longer pulled from
this implementation, this commit also disables the publication in sysfs
to avoid wasting memory.

Note: this patch assumes that ath9k caldata is never stored with the new
"LZOR" encoding scheme found on some ath10k devices.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
target/linux/ar71xx/files/arch/mips/ath79/routerboot.c