qcacmn: Big-endian mode changes for Beryllium Spectral

On Beryllium architecture, PHY DMA applies a 32-bit byte swap to assist
in efficient Host reads when connected to a big-endian Host.
This is done to avoid byte swapping at the Host.
So, if the Host reads this data 32-bit word at a time, the byte order
would be intact. Report headers are not a problem because as they are
composed of 32-bit words. For FFT bins, read each DWORD at a time and
extract FFT bins out of that DWORD. Make this change in a generic way to
keep the design uniform across different chipsets and endian modes.

CRs-Fixed: 3042188
Change-Id: Idff1ac7eb5e18c692c9ee8b19b9ae9e6b962d486
This commit is contained in:
Shiva Krishna Pittala
2021-09-29 14:41:47 +05:30
committed by Madan Koyyalamudi
parent b65b4ae703
commit d36115b849
6 changed files with 274 additions and 203 deletions

View File

@@ -5209,6 +5209,7 @@ typedef enum {
#endif
wmi_service_hw_mode_policy_offload_support,
wmi_service_mgmt_rx_reo_supported,
wmi_service_phy_dma_byte_swap_support,
wmi_services_max,
} wmi_conv_service_ids;
#define WMI_SERVICE_UNAVAILABLE 0xFFFF