Re: ath12k: REO status on PPC does not work

From: Sebastian Gottschall
Date: Fri Aug 15 2025 - 06:52:47 EST


i just can say. the changes i had to make for ath11k to get big endian somwhat working where massive. alot of endian handling in ath11k is simply not considered. the firmware is little endian and alot of fields must be converted to host endian order. but at end end i struggled with dma transactions and gave up since it was not resolvable. the patch i made for ath11k was massive at the end and ath12k is not much different
technically ath11k and ath12k can be merged at the end. i dont know why there are 2 drivers maintained which are technically very similar at the end. alot of patches for ath12k can be applied to ath11k which i do sometimes if its a usefull patch. but ath11k itself is abadoned for maintainance as it seems (at least if you look for qualcomm supplied patches)

Am 15.08.2025 um 12:26 schrieb Alexander Wilhelm:
Am Fri, Aug 15, 2025 at 11:55:14AM +0200 schrieb Sebastian Gottschall:
i played already with big endian platforms and ath11k (not ath12k) for
months. there is also a problem with the dma descriptors. the firmware
simply doesnt support big endian with host communication at the end even if
there is a endian flag for the firmware.  dont get into this rabit hole. (i
worked 3 months on it and gave up)
at the end (i was working on a cavium octeon platform at that time) i just
switched the kernel boot to little endian which is possible on many ppc
platforms too.
The 'ath11k' driver works a bit differently. The endian swap is implemented in
the firmware and was never properly tested. My investigations show that the
firmware does not handle the swap consistently. According to 'kvalo', different
firmware versions treat the swap differently. See [1].

With 'ath12k', the situation looks better. Unfortunately, there are still some
memcpys from u32 to u8 or similar. Also, reading from DMA memory is not swapped.
I already have ath12k running, I get ping responses and can transmit data.
However, not in all modes, and there are still some bugs I’m trying to iron out.


Best regards
Alexander Wilhelm

---
[1] https://lore.kernel.org/ath11k/68290980-5bfb-c88c-be78-954f9591c135@xxxxxxxxxxxx/T/#u