[PATCH v4 00/27] This is continued work on Samsung S9(SM-9600) starqltechn

From: Dzmitry Sankouski
Date: Fri Sep 13 2024 - 11:08:29 EST


Add support for new features:
- sound (headphones and mics only)
- gpu
- panel
- buttons
- MAX77705 MFD:
  - charger
  - fuelgauge
  - haptic
  - led

Changes in version 2:
- s2dos05 regulator:
- hex to decimal in regulator values
- fix compatible value
- remove interrupt specific code, because it's
empty in vendor kernel, and I cannot test it on
available hardware anyway.

Changes in version 3:
Version 3 has significant changes:
- more drivers added
- s2dos05 driver converted to MFD
- disable crypto patch removed(disabled on distro level)
- dts framebuffer node along with related patches removed,
because panel driver added
- fix 'make O=.output_arm64 CHECK_DTBS=y qcom/sdm845-samsung-starqltechn.dtb'
errors, but it still complains on 'monitored-battery' and
'power-supplies' though I have 'power-supply.yaml' link in charger
and fuel gauge bindings.

Signed-off-by: Dzmitry Sankouski <dsankouski@xxxxxxxxx>
---
Changes in v4:
- Rewrite max77705, max77705_charger, max77705_fuel_gauge from scratch
- Reorder patches:
- squash max77705 subdevice bindings in core file because
no resources there
- split device tree changes
- Use _ as space for filenames in power/supply like the majority
- Replace gcc-845 freq_tbl frequencies patch with new approach,
based on automatic m/n/pre_div value generation
- Link to v3: https://lore.kernel.org/r/20240618-starqltechn_integration_upstream-v3-0-e3f6662017ac@xxxxxxxxx

---
Dzmitry Sankouski (27):
power: supply: add undervoltage health status property
clk: qcom: clk-rcg2: name refactoring
gcc-sdm845: Add general purpose clock ops
dt-bindings: panel: add Samsung s6e3ha8
dt-bindings: mfd: add maxim,max77705
dt-bindings: mfd: add samsung,s2dos05
drm/panel: Add support for S6E3HA8 panel driver
mfd: max77693: remove unused declarations
mfd: Add new driver for MAX77705 PMIC
input: max77693: add max77705 haptic support
power: supply: max77705: Add charger driver for Maxim 77705
power: supply: max77705: Add fuel gauge driver for Maxim 77705
leds: max77705: Add LEDs support
mfd: sec-core: add s2dos05 support
regulator: add s2dos05 regulator support
arm64: dts: qcom: sdm845: enable gmu
arm64: dts: qcom: starqltechn: remove wifi
arm64: dts: qcom: starqltechn: fix usb regulator mistake
arm64: dts: qcom: starqltechn: refactor node order
arm64: dts: qcom: starqltechn: remove excess reserved gpios
arm64: dts: qcom: starqltechn: add gpio keys
arm64: dts: qcom: starqltechn: add max77705 PMIC
arm64: dts: qcom: starqltechn: add display PMIC
arm64: dts: qcom: starqltechn: add touchscreen support
arm64: dts: qcom: starqltechn: add initial sound support
arm64: dts: qcom: starqltechn: add graphics support
arm64: dts: qcom: starqltechn: add modem support

.../bindings/display/panel/samsung,s6e3ha8.yaml | 75 +++
.../devicetree/bindings/mfd/maxim,max77705.yaml | 169 ++++++
.../devicetree/bindings/mfd/samsung,s2dos05.yaml | 99 ++++
MAINTAINERS | 12 +
arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi | 4 -
arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 4 -
arch/arm64/boot/dts/qcom/sdm845-mtp.dts | 4 -
.../arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi | 4 -
.../boot/dts/qcom/sdm845-samsung-starqltechn.dts | 573 +++++++++++++++++++-
arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts | 4 -
.../boot/dts/qcom/sdm845-sony-xperia-tama.dtsi | 4 -
.../dts/qcom/sdm845-xiaomi-beryllium-common.dtsi | 4 -
arch/arm64/boot/dts/qcom/sdm845-xiaomi-polaris.dts | 4 -
arch/arm64/boot/dts/qcom/sdm845.dtsi | 2 -
drivers/clk/qcom/clk-rcg.h | 1 +
drivers/clk/qcom/clk-rcg2.c | 243 ++++++++-
drivers/clk/qcom/gcc-sdm845.c | 21 +-
drivers/gpu/drm/panel/Kconfig | 7 +
drivers/gpu/drm/panel/Makefile | 1 +
drivers/gpu/drm/panel/panel-samsung-s6e3ha8.c | 350 ++++++++++++
drivers/input/misc/Kconfig | 4 +-
drivers/input/misc/Makefile | 1 +
drivers/input/misc/max77693-haptic.c | 15 +-
drivers/leds/Kconfig | 6 +
drivers/leds/Makefile | 1 +
drivers/leds/leds-max77705.c | 158 ++++++
drivers/mfd/Kconfig | 12 +
drivers/mfd/Makefile | 2 +
drivers/mfd/max77705.c | 248 +++++++++
drivers/mfd/sec-core.c | 11 +
drivers/power/supply/Kconfig | 13 +
drivers/power/supply/Makefile | 2 +
drivers/power/supply/max77705_charger.c | 585 +++++++++++++++++++++
drivers/power/supply/max77705_fuel_gauge.c | 348 ++++++++++++
drivers/regulator/Kconfig | 8 +
drivers/regulator/Makefile | 1 +
drivers/regulator/s2dos05-regulator.c | 176 +++++++
include/linux/mfd/max77693-common.h | 6 +-
include/linux/mfd/max77693-private.h | 11 -
include/linux/mfd/max77705-private.h | 180 +++++++
include/linux/mfd/max77705_charger.h | 215 ++++++++
include/linux/mfd/samsung/core.h | 1 +
include/linux/power/max77705_fuelgauge.h | 65 +++
include/linux/power_supply.h | 1 +
include/linux/regulator/s2dos05.h | 73 +++
45 files changed, 3627 insertions(+), 101 deletions(-)
---
base-commit: 5acd9952f95fb4b7da6d09a3be39195a80845eb6
change-id: 20240617-starqltechn_integration_upstream-bc86850b2fe3

Best regards,
--
Dzmitry Sankouski <dsankouski@xxxxxxxxx>