Skip to content
Linux 6.0.11 with patches for Snapdragon 670

This is a collection of patches that are useful for devices with the Qualcomm
Snapdragon 670, applied on top of Linux 6.0.11.

S6E3FA7 backlight was properly fixed since the previous release. The ranges
should now look smoother because they are correct this time.

Modem support was introduced. USB, NFC, GPU, eMMC, video acceleration, and
haptics should work like before.

Some patches have been applied and their final versions were picked.

linux-next (36):
 1c46589d4ec0 dt-bindings: firmware: convert Qualcomm SCM binding to the yaml
 657e9326658c dt-bindings: clock: gcc-sdm845: add sdm670 global clocks
 8e90216d2db9 clk: qcom: gcc-sdm845: use device tree match data
 ae66b1fe48e2 clk: qcom: gcc-sdm845: add sdm670 global clock data
 23b92adb53a1 dt-bindings: phy: qcom,qusb2: document sdm670 compatible
 d225ea95e9f9 dt-bindings: usb: dwc3: add sdm670 compatible
 911ce7cf72d9 regulator: qcom-rpmh: add pm660 and pm660l pmics
 21c93a95553d regulator: qcom,rpmh: add pm660 and pm660l pmics
 07c7338f05d2 dt-bindings: mmc: sdhci-msm: add sdm670 compatible
 c6648a402ced dt-bindings: clock: add rpmhcc bindings for sdm670
 2ded040cedf8 clk: qcom: rpmhcc: add sdm670 clocks
 5887bc1ced74 dt-bindings: pinctrl: qcom: add sdm670 pinctrl
 f764b84848e8 pinctrl: qcom: do not reinitialize gpio valid mask
 61164d220f52 pinctrl: qcom: add sdm670 pinctrl
 e7e24786cf90 arm64: dts: qcom: add gpi-dma fallback compatible
 9ba5080e688d dt-bindings: power: rpmpd: add sdm670 power domains
 5faeae4eac74 soc: qcom: rpmhpd: add sdm670 power domains
 3c6bd6fa83bb dt-bindings: dma: qcom: gpi: add fallback compatible
 67fd570d734d dt-bindings: dma: qcom: gpi: add compatible for sdm670
 8527721ee6bd dmaengine: qcom: deprecate redundant of_device_id entries
 b4dba2bd3452 dt-bindings: arm: cpus: add qcom kryo 360 compatible
 6c49e41c46a4 dt-bindings: arm: qcom: add sdm670 and pixel 3a compatible
 aa9f474014b1 dt-bindings: firmware: scm: add sdm670 compatible
 07c8ded6e373 arm64: dts: qcom: add sdm670 and pixel 3a device trees
 8d3a9ec6ae28 dt-bindings: iommu: arm-smmu: add sdm670 compatible
 d6e636787d46 arm64: dts: qcom: msm8996: change order of SMMU clocks on this platform
 dbf88f743583 dt-bindings: arm-smmu: Add missing Qualcomm SMMU compatibles
 982295bfe369 dt-bindings: arm-smmu: fix clocks/clock-names schema
 3a12e8c06536 dt-bindings: arm-smmu: add special case for Google Cheza platform
 6c84bbd103d8 dt-bindings: arm-smmu: Add generic qcom,smmu-500 bindings
 4c1d0ad153f8 iommu/arm-smmu-qcom: Move implementation data into match data
 30b912a03d91 iommu/arm-smmu-qcom: Move the qcom,adreno-smmu check into qcom_smmu_create
 417b76adcf1d iommu/arm-smmu-qcom: provide separate implementation for SDM845-smmu-500
 4172dda2b30a iommu/arm-smmu-qcom: Merge table from arm-smmu-qcom-debug into match data
 b4c6ee515c42 iommu/arm-smmu-qcom: Stop using mmu500 reset for v2 MMUs
 80b71080720e iommu/arm-smmu-qcom: Add generic qcom,smmu-500 match entry

sdm670-staging (24):
 [PATCH]
  arm64: dts: qcom: sdm670-google-sargo: keep pm660 ldo8 on
 [PATCH 1/3]
  dt-bindings: nvmem: qfprom: add sdm670 compatible
  arm64: dts: qcom: sdm670: add qfprom node
  arm64: dts: qcom: sdm670: add missing usb hstx nvmem cell
 Not sent yet (20):
  dt-bindings: interconnect: add sdm670 interconnects
  interconnect: qcom: add sdm670 interconnects
  arm64: dts: qcom: sdm670: add interconnects
  arm64: dts: qcom: sdm670: add cpu frequency scaling
  arm64: dts: qcom: sdm670: add opps for peripherals
  dt-bindings: clock: qcom,sdm845-dispcc: add sdm670 compatible
  clk: qcom: dispcc-sdm845: use device tree match data
  clk: qcom: dispcc-sdm845: add sdm670 clock data
  dt-bindings: clock: qcom,gpucc: add sdm670 compatible
  clk: qcom: gpucc-sdm845: use device tree match data
  clk: qcom: gpucc-sdm845: add sdm670 clock data
  drm/msm/dpu: add hw revision 410
  drm/panel: add samsung s6e3fa7 panel driver
  arm64: dts: qcom: sdm670: add mdss
  arm64: dts: qcom: sdm670-google-sargo: add panel
  dt-bindings: iommu: arm,smmu: add sdm670 adreno iommu compatible
  drm/msm/adreno: add a615 support
  drm/msm/a6xx: add a615 speed bins
  arm64: dts: qcom: sdm670: add gpu
  arm64: dts: qcom: sdm670-google-sargo: enable gpu

sdm845-mainline (9):
 arm64: configs: add sdm845 config fragment
 arm64: configs: sdm845: enable BTRFS
 power: supply: Add driver for Qualcomm PMIC fuel gauge
 dt-bindings: power: supply: Add DT schema for qcom,fg
 power: supply: add Qualcomm PMI8998 SMB2 Charger driver
 dt-bindings: power: supply: qcom,pmi8998-charger: add bindings for smb2 driver
 power: supply: qcom: pmi8898-charger: update as per v6 patch
 fixup: sdm845.config: enable nintendo controller drivers
 Add back TEXT_OFFSET in the built image...

sdm670-downstream (20):
 arm64: configs: add sdm670 config fragment
 arm64: dts: qcom: sdm670-google-sargo: mask the dtbo
 arm64: dts: qcom: pm660: add charging support
 arm64: dts: qcom: sdm670-google-sargo: enable charging support
 Input: add ti drv2624 haptics driver
 arm64: configs: enable drv2624 haptics for pixel 3a
 arm64: dts: qcom: sdm670-google-sargo: add haptics node
 arm64: dts: qcom: sdm670: add video codec
 arm64: dts: qcom: sdm670-google-sargo: enable venus video codec
 arm64: dts: qcom: drop-in bluetooth support
 arm64: dts: qcom: sdm670: add nfc support
 dt-bindings: soc: qcom: add modemsmem
 soc: qcom: smem: expose socinfo platform device
 soc: qcom: socinfo: expose detailed platform info
 soc: qcom: add modemsmem
 arm64: dts: qcom: sdm670-google-sargo: add modemsmem
 arm64: dts: qcom: sdm670: add modem
 arm64: dts: qcom: sdm670: add ipa
 arm64: dts: qcom: sdm670: add wifi
 arm64: configs: sdm670.config: enable modemsmem

 Documentation/devicetree/bindings/arm/cpus.yaml    |    1 +
 Documentation/devicetree/bindings/arm/qcom.yaml    |    6 +
 .../devicetree/bindings/clock/qcom,gcc-sdm845.yaml |   62 +-
 .../devicetree/bindings/clock/qcom,gpucc.yaml      |    1 +
 .../devicetree/bindings/clock/qcom,rpmhcc.yaml     |    1 +
 .../bindings/clock/qcom,sdm845-dispcc.yaml         |    4 +-
 .../devicetree/bindings/dma/qcom,gpi.yaml          |   15 +
 .../devicetree/bindings/firmware/qcom,scm.txt      |   61 -
 .../devicetree/bindings/firmware/qcom,scm.yaml     |  148 ++
 .../bindings/interconnect/qcom,rpmh.yaml           |    8 +
 .../devicetree/bindings/iommu/arm,smmu.yaml        |  174 +-
 .../devicetree/bindings/mmc/sdhci-msm.yaml         |    1 +
 .../devicetree/bindings/nvmem/qcom,qfprom.yaml     |    1 +
 .../devicetree/bindings/phy/qcom,qusb2-phy.yaml    |    1 +
 .../bindings/pinctrl/qcom,sdm670-tlmm.yaml         |  127 +
 .../devicetree/bindings/power/qcom,rpmpd.yaml      |    1 +
 .../devicetree/bindings/power/supply/qcom,fg.yaml  |  102 +
 .../power/supply/qcom,pmi8998-charger.yaml         |   82 +
 .../bindings/regulator/qcom,rpmh-regulator.yaml    |   36 +
 .../bindings/soc/qcom/google,modemsmem.yaml        |   33 +
 .../devicetree/bindings/usb/qcom,dwc3.yaml         |    2 +
 arch/arm64/boot/dts/qcom/Makefile                  |    1 +
 arch/arm64/boot/dts/qcom/msm8996.dtsi              |   31 +-
 arch/arm64/boot/dts/qcom/pm660.dtsi                |   35 +
 .../dts/qcom/sdm670-google-sargo-dtbo-mask.dtsi    |  472 ++++
 arch/arm64/boot/dts/qcom/sdm670-google-sargo.dts   |  815 +++++++
 arch/arm64/boot/dts/qcom/sdm670.dtsi               | 2461 ++++++++++++++++++++
 arch/arm64/boot/dts/qcom/sm8150.dtsi               |    6 +-
 arch/arm64/boot/dts/qcom/sm8250.dtsi               |    6 +-
 arch/arm64/configs/sdm670.config                   |   23 +
 arch/arm64/configs/sdm845.config                   |  865 +++++++
 arch/arm64/kernel/head.S                           |    2 +-
 arch/arm64/kernel/image.h                          |    1 +
 drivers/clk/qcom/Kconfig                           |    4 +-
 drivers/clk/qcom/clk-rpmh.c                        |   21 +
 drivers/clk/qcom/dispcc-sdm845.c                   |  129 +-
 drivers/clk/qcom/gcc-sdm845.c                      |  400 +++-
 drivers/clk/qcom/gpucc-sdm845.c                    |   63 +-
 drivers/dma/qcom/gpi.c                             |    4 +
 drivers/gpu/drm/msm/adreno/a6xx_gpu.c              |   19 +
 drivers/gpu/drm/msm/adreno/adreno_device.c         |   13 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c     |   67 +
 drivers/gpu/drm/panel/Kconfig                      |    9 +
 drivers/gpu/drm/panel/Makefile                     |    1 +
 drivers/gpu/drm/panel/panel-samsung-s6e3fa7.c      |  304 +++
 drivers/input/misc/Kconfig                         |   12 +
 drivers/input/misc/Makefile                        |    1 +
 drivers/input/misc/drv2624.c                       | 1223 ++++++++++
 drivers/input/misc/drv2624.h                       |  338 +++
 drivers/interconnect/qcom/Kconfig                  |    9 +
 drivers/interconnect/qcom/Makefile                 |    2 +
 drivers/interconnect/qcom/sdm670.c                 |  440 ++++
 drivers/interconnect/qcom/sdm670.h                 |  128 +
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom-debug.c   |   91 -
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c         |  154 +-
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h         |   21 +-
 drivers/pinctrl/qcom/Kconfig                       |   10 +
 drivers/pinctrl/qcom/Makefile                      |    1 +
 drivers/pinctrl/qcom/pinctrl-msm.c                 |    3 +-
 drivers/pinctrl/qcom/pinctrl-sdm670.c              | 1345 +++++++++++
 drivers/power/supply/Kconfig                       |   17 +
 drivers/power/supply/Makefile                      |    2 +
 drivers/power/supply/qcom_fg.c                     | 1320 +++++++++++
 drivers/power/supply/qcom_pmi8998_charger.c        | 1082 +++++++++
 drivers/regulator/qcom-rpmh-regulator.c            |   54 +
 drivers/soc/qcom/Kconfig                           |   10 +
 drivers/soc/qcom/Makefile                          |    1 +
 drivers/soc/qcom/modemsmem.c                       |  102 +
 drivers/soc/qcom/rpmhpd.c                          |   18 +
 drivers/soc/qcom/smem.c                            |    7 +
 drivers/soc/qcom/socinfo.c                         |   39 +
 include/dt-bindings/clock/qcom,gcc-sdm845.h        |    1 +
 include/dt-bindings/interconnect/qcom,sdm670.h     |  136 ++
 include/dt-bindings/power/qcom-rpmpd.h             |   10 +
 include/linux/soc/qcom/smem.h                      |   14 +
 include/linux/soc/qcom/socinfo.h                   |   12 +
 76 files changed, 12964 insertions(+), 258 deletions(-)