public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 RESEND 0/3] soc: qcom: extend interface for big endian support
@ 2025-11-18  6:53 Alexander Wilhelm
  2025-11-18  6:53 ` [PATCH v4 RESEND 1/3] soc: qcom: introduce new QMI encode/decode macros Alexander Wilhelm
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Alexander Wilhelm @ 2025-11-18  6:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio; +Cc: linux-arm-msm, linux-kernel

Currently, the QMI interface only works on little endian systems due to how
it encodes and decodes data. Most QMI related data structures are defined
in CPU native order and do not use endian specific types.

Add support for endian conversion of basic element types in the QMI
encoding and decoding logic. Fix the handling of QMI_DATA_LEN fields to
ensure correct interpretation on big endian systems. These changes are
required to allow QMI to operate correctly across architectures with
different endianness.
---
Changes in v4:
- Rebase on latest ath master.
- Drop ath12k patch to make a standalone one.
- Remove `Fixes:` tags as big endian is not yet supported.

Changes in v3:
- Rebase on latest ath master.
- Using a generic encoding/decoding macro causes sparse to complain about
  type violations. Use separate macros for each basic element type instead.

Changes in v2:
- Handle QMI conversion within the QMI subsystem instead of the driver.

Alexander Wilhelm (3):
  soc: qcom: introduce new QMI encode/decode macros
  soc: qcom: fix QMI encoding/decoding for basic elements
  soc: qcom: preserve CPU endianness for QMI_DATA_LEN

 drivers/soc/qcom/qmi_encdec.c | 101 ++++++++++++++++++++++++++++------
 1 file changed, 84 insertions(+), 17 deletions(-)


base-commit: 38cf754c15eeb0d80fbf52c933da10edb33d7906
-- 
2.43.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2025-11-19  9:06 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-18  6:53 [PATCH v4 RESEND 0/3] soc: qcom: extend interface for big endian support Alexander Wilhelm
2025-11-18  6:53 ` [PATCH v4 RESEND 1/3] soc: qcom: introduce new QMI encode/decode macros Alexander Wilhelm
2025-11-19  8:04   ` Dmitry Baryshkov
2025-11-19  8:11     ` Alexander Wilhelm
2025-11-18  6:53 ` [PATCH v4 RESEND 2/3] soc: qcom: fix QMI encoding/decoding for basic elements Alexander Wilhelm
2025-11-19  8:03   ` Dmitry Baryshkov
2025-11-19  8:10     ` Alexander Wilhelm
2025-11-18  6:53 ` [PATCH v4 RESEND 3/3] soc: qcom: preserve CPU endianness for QMI_DATA_LEN Alexander Wilhelm
2025-11-19  9:06   ` Dmitry Baryshkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox