Hello,
This series adds initial SoC support for the Samsung Exynos 9810
SoC and initial board support for Samsung Galaxy S9 phone (SM-G960F),
codenamed starlte.
The Exynos 9810 SoC is also used in S9 Plus (star2lte), Note 9 (crownlte),
and perhaps more devices. Currently only Galaxy S9 DTS file is added but it
should be fairly simple to add support for other devices based on this SoC,
considering they're quite similar.
The support added in this series includes:
- cpus
- pinctrl and gpio
- simple-framebuffer
This is enough to boot to a minimal initramfs shell.
The preferred way to boot this device is by using a small shim bl called
uniLoader [1], which packages the mainline kernel and DT and jumps to
the kernel. This is done in order to work around some issues caused by
the stock, and non-replacable Samsung S-Boot bootloader. For example,
S-Boot leaves the decon trigger control unset, which causes the framebuffer
to not refresh, so simple-framebuffer wouldn't work without a secondary loader.
Ideally, there'll be a kernel driver for the display subsystem some day to
resolve this issue.
[1] https://github.com/ivoszbg/uniLoader
Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
---
Markuss Broks (12):
dt-bindings: arm: cpus: Add Samsung Mongoose M3
dt-bindings: hwinfo: samsung,exynos-chipid: Add Samsung exynos9810 compatible
dt-bindings: pinctrl: samsung: Add compatible for Exynos9810 SoC
dt-bindings: pinctrl: samsung: Add compatible for exynos9810-wakeup-eint
dt-bindings: soc: samsung: exynos-pmu: Add exynos9810 compatible
dt-bindings: arm: samsung: Document Exynos9810 and starlte board binding
dt-bindings: arm: pmu: Add Samsung Mongoose core compatible
perf: arm_pmuv3: Add support for Samsung Mongoose PMU
soc: samsung: exynos-chipid: Add support for Exynos9810 SoC
pinctrl: samsung: Add Exynos9810 SoC specific data
arm64: dts: exynos: Add Exynos9810 SoC support
arm64: dts: exynos: Add initial support for Samsung Galaxy S9 (SM-G960F)
Documentation/devicetree/bindings/arm/cpus.yaml | 1 +
Documentation/devicetree/bindings/arm/pmu.yaml | 1 +
.../bindings/arm/samsung/samsung-boards.yaml | 6 +
.../bindings/hwinfo/samsung,exynos-chipid.yaml | 1 +
.../pinctrl/samsung,pinctrl-wakeup-interrupt.yaml | 1 +
.../bindings/pinctrl/samsung,pinctrl.yaml | 1 +
.../bindings/soc/samsung/exynos-pmu.yaml | 1 +
arch/arm64/boot/dts/exynos/Makefile | 1 +
arch/arm64/boot/dts/exynos/exynos9810-pinctrl.dtsi | 525 +++++++++++++++++++++
arch/arm64/boot/dts/exynos/exynos9810-starlte.dts | 119 +++++
arch/arm64/boot/dts/exynos/exynos9810.dtsi | 256 ++++++++++
drivers/perf/arm_pmuv3.c | 3 +
drivers/pinctrl/samsung/pinctrl-exynos-arm64.c | 154 ++++++
drivers/pinctrl/samsung/pinctrl-samsung.c | 2 +
drivers/pinctrl/samsung/pinctrl-samsung.h | 1 +
drivers/soc/samsung/exynos-chipid.c | 1 +
16 files changed, 1074 insertions(+)
---
base-commit: f2493655d2d3d5c6958ed996b043c821c23ae8d3
change-id: 20241024-exynos9810-b3eed995b0b9
Best regards,
--
Markuss Broks <markuss.broks@gmail.com>