[PATCH v4 0/7] Add Initial Support For MSM8952, Add General Mobile Shamrock

From: Muzaffer Kadir via B4 Relay

Date: Tue Oct 06 2026 - 08:16:15 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.

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 v4:
- Dropped 1651200000 freq on cluster 1 because it depends on speedbin 3
and speedbin is not included in this patch series
- Dropped applied patches
- Changed mdss_dsi0 power-domain to MDSS_GDSC
- Reformatted SoC dtsi file
- Added the remaining reserved-memory entries for not added parts
- Rename adsp_mem to adsp_fw_mem
- Drop the "ts-" prefix of touchscreen pinctrl in device dts.
- Link to v3: https://patch.msgid.link/20260921-msm8952-initial-support-v3-0-b96fd3fe298b@xxxxxxxxxxxxxx

Changes in v3:
- Improved GCC driver, also rewrote resets part
- Rewrote the dt-binding side of gcc
- Reformatted Device tree files with dt-check-style tool
- Added reset to sdhci1 and sdhci2
- Added cx regulator to gcc
- Added gcc commit messages that it is a derived driver
- Dropped adsp_mem, renamed lpass_mem to adsp_mem
- Changed tusb320 interrupt from rising to falling as downstream uses
- Link to v2: https://patch.msgid.link/20260916-msm8952-initial-support-v2-0-798c2602dde1@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 (7):
dt-bindings: nvmem: Add compatible for MSM8952
dt-bindings: iommu: qcom,iommu: Add MSM8952 IOMMU to SMMUv2 compatibles
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

.../bindings/input/touchscreen/goodix.yaml | 35 +-
.../devicetree/bindings/iommu/qcom,iommu.yaml | 1 +
.../devicetree/bindings/nvmem/qcom,qfprom.yaml | 1 +
.../devicetree/bindings/thermal/qcom-tsens.yaml | 1 +
arch/arm64/boot/dts/qcom/Makefile | 1 +
.../dts/qcom/msm8952-generalmobile-shamrock.dts | 435 ++++
arch/arm64/boot/dts/qcom/msm8952.dtsi | 2720 ++++++++++++++++++++
drivers/thermal/qcom/tsens-v1.c | 44 +
drivers/thermal/qcom/tsens.c | 3 +
drivers/thermal/qcom/tsens.h | 2 +-
10 files changed, 3227 insertions(+), 16 deletions(-)
---
base-commit: bf1ee2bd5c2da8992f33c8950ef194aaff74ed6c
change-id: 20260909-msm8952-initial-support-60a059c2e15e

Best regards,
--
Muzaffer Kadir <muzafferkadir@xxxxxxxxxxxxxx>