[PATCH v2 00/19] Add Initial Support For MSM8952, Add General Mobile Shamrock
From: Muzaffer Kadir via B4 Relay
Date: Wed Sep 16 2026 - 10:39:00 EST
MSM8952 is a SoC with 8 core cpu and Adreno 405 gpu.
Ported without uart connection. ramoops and usb
mainly used to debug.
USB is not enabled in this series because it
depends on the not yet upstreamed (and not developed by me)
pmi8950_smbcharger.
General Mobile shamrock display panel driver
is generated using MSM8916's mdss dsi panel
driver generator and tested with it. I didn't
include it.
The GCC and DTS files are derived from existing
Qualcomm source files. Original copyright notices
are retained.
GCC is based on msm8939's gcc file.
SoC device tree is based on MSM8937 file.
in some downstreams MSM8952 GCC is merged with
MSM8917 and MSM8937's. But upstreamed MSM8917 is
based on different GCC and different pll structure.
I have no way to verify MSM8952 pll so I am not sure
about how correct pll structure is.
Pinctrl driver was submitted and merged here:
https://lore.kernel.org/all/20260907-msm8952-pinctrl-v5-0-9a2d8d72ffdb@xxxxxxxxxxxxxx/
Signed-off-by: Muzaffer Kadir <muzafferkadir@xxxxxxxxxxxxxx>
---
Changes in v2:
- Changed device dts file as David's and Konrad's suggestions
- Removed accidental duplicated clock assigments and fixed wrong gcc gp1,gp2
and gp3 parent_maps
- Updated commit messages to make it wrapped at 72 character.
- Fixed spi1 tlmm node naming
- Added remaining spi and i2c nodes
- Wired up mpm
- Add mmio-sram to rpm_msg_ram
- Reformatted msm8952.dtsi
- Removed rpmcc-msm8952 driver entry and replaced it with rpmcc-msm8976
- Merged sdhci tlmm pins to single nodes, now it is similar to existing SoCs
- Rebased to latest linux-next, now storage works
- Removed polling-delay properties from tsens
- Link to v1: https://lore.kernel.org/r/20260912-msm8952-initial-support-v1-0-0e742578b524@xxxxxxxxxxxxxx
---
Muzaffer Kadir (19):
dt-bindings: clock: qcom: Add MSM8952 global clock controller
clk: qcom: Add global clock controller driver for MSM8952
dt-bindings: nvmem: Add compatible for MSM8952
dt-bindings: power: rpmpd: Add MSM8952 power domains
dt-bindings: mmc: sdhci-msm: Add MSM8952 compatible
dt-bindings: vendor-prefixes: Add General Mobile
dt-bindings: arm: qcom: Document MSM8952 SoC binding
dt-bindings: iommu: qcom,iommu: Add MSM8952 IOMMU to SMMUv2 compatibles
dt-bindings: mfd: qcom,tcsr: Add compatible for MSM8952
dt-bindings: display/msm: qcom, mdp5: Add MSM8952 compatible
dt-bindings: firmware: qcom,scm: Document MSM8952 SCM
dt-bindings: clock: qcom,rpmcc: Add MSM8952 compatible
drm: msm: mdp5: Add MDP5 configuration for MSM8952
soc: qcom: ubwc: Add UBWC config for MSM8952
dt-bindings: thermal: tsens: Add MSM8952
thermal: qcom: tsens: Add support for MSM8952 tsens
arm64: dts: qcom: Add initial support for MSM8952
dt-bindings: input: touchscreen: goodix: Add binding for GT970
arm64: dts: qcom: generalmobile-shamrock: new device
Documentation/devicetree/bindings/arm/qcom.yaml | 6 +
.../bindings/clock/qcom,gcc-msm8952.yaml | 56 +
.../devicetree/bindings/clock/qcom,rpmcc.yaml | 5 +
.../devicetree/bindings/display/msm/qcom,mdp5.yaml | 1 +
.../devicetree/bindings/firmware/qcom,scm.yaml | 3 +
.../bindings/input/touchscreen/goodix.yaml | 35 +-
.../devicetree/bindings/iommu/qcom,iommu.yaml | 1 +
.../devicetree/bindings/mfd/qcom,tcsr.yaml | 1 +
.../devicetree/bindings/mmc/qcom,sdhci-msm.yaml | 1 +
.../devicetree/bindings/nvmem/qcom,qfprom.yaml | 1 +
.../devicetree/bindings/power/qcom,rpmpd.yaml | 1 +
.../devicetree/bindings/thermal/qcom-tsens.yaml | 1 +
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm64/boot/dts/qcom/Makefile | 1 +
.../dts/qcom/msm8952-generalmobile-shamrock.dts | 436 +++
arch/arm64/boot/dts/qcom/msm8952.dtsi | 2679 +++++++++++++++
drivers/clk/qcom/Kconfig | 10 +
drivers/clk/qcom/Makefile | 1 +
drivers/clk/qcom/gcc-msm8952.c | 3550 ++++++++++++++++++++
drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.c | 81 +
drivers/soc/qcom/ubwc_config.c | 1 +
drivers/thermal/qcom/tsens-v1.c | 44 +
drivers/thermal/qcom/tsens.c | 3 +
drivers/thermal/qcom/tsens.h | 2 +-
include/dt-bindings/clock/qcom,gcc-msm8952.h | 217 ++
25 files changed, 7123 insertions(+), 16 deletions(-)
---
base-commit: e6e35979777d646fe3c7c94dca7dd32fb25d45f4
change-id: 20260909-msm8952-initial-support-60a059c2e15e
Best regards,
--
Muzaffer Kadir <muzafferkadir@xxxxxxxxxxxxxx>