[PATCH RESEND 00/16] MSM8960 / mach-snapdragon ARMv7 support
Sam Day
me at samcday.com
Sun Jun 7 01:18:38 CEST 2026
Hi Antony,
On Sunday, 7 June 2026 at 7:37 AM, Antony Kurniawan Soemardi <linux at smankusors.com> wrote:
> 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 <me at samcday.com>
> > ---
> > 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.
Awesome, I look forward to seeing more qcom armv7 devices booting U-Boot!
>
> Before I dive in, I need to clarify the build setup:
>
> - For cross-compilation, should I use `CROSS_COMPILE=arm-none-eabi-`?
Yes, that's right.
> - Which defconfig is appropriate for the Xperia SP?
> - Is the config generated with `make qcom_armv7_defconfig
> qcom-phone.config`?
Yep. You might consider tacking debug-msm8960.config to the end as well, to
enable debug UART.
>
> Would appreciate a quick pointer on the build workflow.
I think you've just about nailed it already :) If you have any further
questions don't hesitate to DM me on Matrix: @human:samcday.com
Warm Regards,
-Sam
>
> --
> Thanks,
> Antony K. S.
>
More information about the U-Boot
mailing list