On 6/1/2026 3:12 PM, Sam Day via B4 Relay wrote:
** Resending because I found new ways to dislike Proton Mail (it failed
the series midway due to "spamming". Sigh.). **

This patch series introduces support for ARMv7 Qualcomm SoCs, starting
with MSM8960/MSM8930/MSM8227.

An overview of the changes:
  * serial_msm reintroduces the previous packed RX/TX software mode
    operation, as this is compatible with all UARTDM versions (1.4 and
    older). It's added alongside the newer single-char mode for 1.4.
  * A timer driver is introduced for KPSS. I don't know if *all* ARMv7
    qcom SoCs lack generic ARM CP15 debug timer support, but at least
    MSM8960/MSM8930 do.
  * mach-snapdragon board code is shuffled around a bit to build cleanly
    on ARM64.
  * prev_bl_data support is extended to ARM32 (which uses r2 for passing
    FDT/ATAGS pointers, rather than r0)
  * qcom_parse_memory is revised to support arm32 memory nodes (which are
    1-cell rather than 2-cell).
  * Basic ATAGS support is introduced, so that the memory info can be
    used from previous bootloaders that do not understand FDTs at all.
  * PS_HOLD sysreset and pinctrl-qcom needed some minor tweaks to handle
    some nuances that challenge the current assumptions.
  * A pinctrl driver is introduced for MSM8960.
  * Initial MSM8960 GCC infra is introduced.

I tested this series on:
  * Nokia Lumia 520 (msm8227). No working buttons yet as these are
    exposed as GPIO-over-PMIC-over-SSBI (drivers will be proposed at a
    later date).
  * Samsung Galaxy Express GT-I8730 (msm8930). Volume rockers + home
    button are working via the new pinctrl-msm8960 driver. Power
    button not working yet (needs PMIC driver infra).
  * I have no msm8960/apq8064 devices, looking for folks to test those.

To confirm there was no regressions with ARM64 and/or newer devices, I
also tested on:
  * db410c (msm8916)
  * google-sargo (sdm670)

Signed-off-by: Sam Day <[email protected]>
---
Sam Day (16):
       serial: msm: UARTDM <1.4 support
       timer: Qualcomm KPSS timer support
       arm: save_prev_bl_data: ARM32 support
       mach-snapdragon: qcom_parse_memory 32-bit support
       mach-snapdragon: gate ARM64 features
       mach-snapdragon: introduce ARCH_SNAPDRAGON_ARM32
       configs: introduce qcom_armv7_defconfig
       board: qualcomm: add MSM8960 debug UART config
       sysreset: qcom-pshold: offset support
       pinctrl: qcom: configurable GPIO offset/stride
       pinctrl: qcom: introduce MSM8960 driver
       mach-snapdragon: parse incoming ARM32 ATAGS
       clk: qcom: MSM8960 GCC driver
       clk: qcom: arch-agnostic pointer fmtstrings
       serial: msm: wait for TX empty before reinit
       button: remap phone HOMEPAGE button

  arch/arm/Kconfig                             |  11 +-
  arch/arm/lib/save_prev_bl_data.c             |  49 ++++---
  arch/arm/mach-snapdragon/Kconfig             |   6 +
  arch/arm/mach-snapdragon/board.c             | 188 ++++++++++++++++++--------
  arch/arm/mach-snapdragon/include/mach/gpio.h |  12 +-
  board/qualcomm/debug-msm8960.config          |   5 +
  configs/qcom_armv7_defconfig                 |  61 +++++++++
  drivers/button/Kconfig                       |   2 +-
  drivers/button/button-uclass.c               |   1 +
  drivers/clk/qcom/Kconfig                     |   8 ++
  drivers/clk/qcom/Makefile                    |   1 +
  drivers/clk/qcom/clock-msm8960.c             | 189 +++++++++++++++++++++++++++
  drivers/clk/qcom/clock-qcom.c                |   8 +-
  drivers/gpio/msm_gpio.c                      |   2 +-
  drivers/pinctrl/qcom/Kconfig                 |   9 ++
  drivers/pinctrl/qcom/Makefile                |   1 +
  drivers/pinctrl/qcom/pinctrl-msm8960.c       | 135 +++++++++++++++++++
  drivers/pinctrl/qcom/pinctrl-qcom.c          |   2 +-
  drivers/serial/serial_msm.c                  | 142 +++++++++++++++++---
  drivers/sysreset/sysreset_qcom-pshold.c      |   9 +-
  drivers/timer/Kconfig                        |   7 +
  drivers/timer/Makefile                       |   1 +
  drivers/timer/qcom-kpss-timer.c              |  98 ++++++++++++++
  23 files changed, 843 insertions(+), 104 deletions(-)
---
base-commit: 8d3ba3753bdb5068884196ff696cc48177bfdda5
change-id: 20260530-qcom-armv7-1486308a835c

Best regards,

This looks great! I have a Sony Xperia SP (MSM8960T) and would like to test it.

Before I dive in, I need to clarify the build setup:

- For cross-compilation, should I use `CROSS_COMPILE=arm-none-eabi-`?
- Which defconfig is appropriate for the Xperia SP?
- Is the config generated with `make qcom_armv7_defconfig qcom-phone.config`?

Would appreciate a quick pointer on the build workflow.

--
Thanks,
Antony K. S.

Reply via email to