[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <aJ7sDOoWmf4jLpjo@FUE-ALEWI-WINX>
Date: Fri, 15 Aug 2025 10:13:00 +0200
From: Alexander Wilhelm <alexander.wilhelm@...termo.com>
To: Jeff Johnson <jjohnson@...nel.org>
Cc: ath12k@...ts.infradead.org, linux-wireless@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: ath12k: REO status on PPC does not work
Hello devs,
I'm currently working on getting the 'ath12k' driver running on a big endian
PowerPC platform and have encountered the following issue.
In the function 'ath12k_dp_rx_process_reo_status', the REO status is determined
by inspecting memory that the hardware has previously written via DMA.
Specifically, during the call to 'ath12k_hal_srng_access_begin', the driver
reads the value of 'hp_addr' for the destination ring (in my case, always with
ID 21). On the big endian platform, this value is consistently 0, which prevents
the REO status from being updated.
Interestingly, DMA read/write accesses work fine for other rings, just not for
this one. What makes the REO status ring so special? I couldn’t find anything in
the initialization routine that would explain the difference.
Could anyone give me a hint on what I should be looking for?
Best regards
Alexander Wilhelm
Powered by blists - more mailing lists