
Hey Tom, Minkyu,
If there are no outstanding concerns about this series, can you please apply it?
Thanks!
On Wed, Jan 10, 2024 at 9:09 PM Sam Protsenko semen.protsenko@linaro.org wrote:
Add Exynos850 SoC and WinLink's E850-96 board support. A short overview of series additions and modifications:
- USI driver: configures UART block
- PMU driver: connects AP UART lines to uart1 pins)
- Exynos850 clock driver: generates UART clocks
- Exynos850 pinctrl driver: mux UART pins
- serial_s5p: UART driver
- Exynos850 SoC: dtsi files and MMU maps
- E850-96 board: dts files, defconfig, board file and doc
Most of the code was borrowed from mainline Linux kernel (where this board is already enabled) and adapted for U-Boot. Preliminary preparation for this series includes next patches / series (already merged):
- commit 585a2aaac2ac ("arm: exynos: Include missing CPU header in soc.c")
- commit c9ab9f30c8e4 ("arm: exynos: Include missing CPU header in gpio.h")
- commit 11bd2787deff ("watchdog: s5p_wdt: Include missing CPU header")
- commit 08cfa971a717 ("exynos: Avoid duplicate reset_cpu with SYSRESET enabled")
- commit f655090901dc ("clk: exynos: Add header guard for clk-pll.h")
- commit 2227f4c0afed ("serial: s5p: Fix clk_get_by_index() error code check")
- commit a0615ffc99a5 ("serial: s5p: Remove common.h inclusion")
- commit 5ad21de6bae0 ("serial: s5p: Use livetree API to get "id" property")
- commit e79f630dbf67 ("serial: s5p: Use named constants for register values")
- commit a627f2802a71 ("serial: s5p: Improve coding style")
- commit 33e7ca5a9b6a ("serial: s5p: Use dev_read_addr_ptr() to get base address")
- commit 6219b47c4d91 ("board: samsung: Fix SYS_CONFIG_NAME configs in axy17lte Kconfig")
- commit 470682ace1e0 ("configs: Remove unneeded SYS_CONFIG_NAME from a*y17lte defconfigs")
and series [1]. For more detailed description please see the board documentation (added in PATCH #12) and corresponding commit messages.
Changes in v2:
- PATCH 4: Removed unnecessary mode param
- PATCH 4: Removed usi->dev and used priv data instead
- PATCH 4: Used .of_plat_data callback for dts parsing
- PATCH 7: Fixed Thomas Abraham e-mail
- PATCH 9: Fixed incorrect driver description (comment)
- Collected Reviewed-by tags
- Rebased on top of most recent U-Boot/master
[1] https://lists.denx.de/pipermail/u-boot/2023-November/539033.html
Sam Protsenko (13): dt-bindings: soc: samsung: Add Exynos USI dt-bindings: soc: samsung: Add Exynos PMU dt-bindings: clock: Add Exynos850 clock controller soc: samsung: Add Exynos USI driver soc: samsung: Add Exynos PMU driver clk: exynos: Move pll code into clk-exynos7420 clk: exynos: Add Samsung clock framework clk: exynos: Add Exynos850 clock driver pinctrl: exynos: Add pinctrl support for Exynos850 serial: s5p: Add Exynos850 compatible arm: exynos: Add Exynos850 SoC support board: samsung: Add support for E850-96 board MAINTAINERS: Add new Samsung subsystems
MAINTAINERS | 25 + arch/arm/dts/Makefile | 1 + arch/arm/dts/exynos-pinctrl.h | 79 + arch/arm/dts/exynos850-e850-96-u-boot.dtsi | 37 + arch/arm/dts/exynos850-e850-96.dts | 273 ++++ arch/arm/dts/exynos850-pinctrl.dtsi | 663 +++++++++ arch/arm/dts/exynos850.dtsi | 809 +++++++++++ arch/arm/mach-exynos/Kconfig | 28 +- arch/arm/mach-exynos/mmu-arm64.c | 34 + board/samsung/e850-96/Kconfig | 16 + board/samsung/e850-96/MAINTAINERS | 9 + board/samsung/e850-96/Makefile | 6 + board/samsung/e850-96/e850-96.c | 22 + configs/e850-96_defconfig | 21 + doc/board/samsung/e850-96.rst | 87 ++ .../img/exynos850-boot-architecture.svg | 1283 +++++++++++++++++ doc/board/samsung/index.rst | 1 + .../clock/samsung,exynos850-clock.yaml | 307 ++++ .../soc/samsung/exynos-pmu.yaml | 85 ++ .../soc/samsung/exynos-usi.yaml | 162 +++ drivers/clk/exynos/Kconfig | 7 + drivers/clk/exynos/Makefile | 11 +- drivers/clk/exynos/clk-exynos7420.c | 25 +- drivers/clk/exynos/clk-exynos850.c | 189 +++ drivers/clk/exynos/clk-pll.c | 167 ++- drivers/clk/exynos/clk-pll.h | 16 +- drivers/clk/exynos/clk.c | 121 ++ drivers/clk/exynos/clk.h | 228 +++ drivers/pinctrl/exynos/Kconfig | 8 + drivers/pinctrl/exynos/Makefile | 1 + drivers/pinctrl/exynos/pinctrl-exynos850.c | 125 ++ drivers/serial/serial_s5p.c | 1 + drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/samsung/Kconfig | 33 + drivers/soc/samsung/Makefile | 4 + drivers/soc/samsung/exynos-pmu.c | 102 ++ drivers/soc/samsung/exynos-usi.c | 208 +++ include/configs/e850-96.h | 12 + include/dt-bindings/clock/exynos850.h | 337 +++++ include/dt-bindings/soc/samsung,exynos-usi.h | 17 + 41 files changed, 5538 insertions(+), 24 deletions(-) create mode 100644 arch/arm/dts/exynos-pinctrl.h create mode 100644 arch/arm/dts/exynos850-e850-96-u-boot.dtsi create mode 100644 arch/arm/dts/exynos850-e850-96.dts create mode 100644 arch/arm/dts/exynos850-pinctrl.dtsi create mode 100644 arch/arm/dts/exynos850.dtsi create mode 100644 board/samsung/e850-96/Kconfig create mode 100644 board/samsung/e850-96/MAINTAINERS create mode 100644 board/samsung/e850-96/Makefile create mode 100644 board/samsung/e850-96/e850-96.c create mode 100644 configs/e850-96_defconfig create mode 100644 doc/board/samsung/e850-96.rst create mode 100644 doc/board/samsung/img/exynos850-boot-architecture.svg create mode 100644 doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml create mode 100644 doc/device-tree-bindings/soc/samsung/exynos-pmu.yaml create mode 100644 doc/device-tree-bindings/soc/samsung/exynos-usi.yaml create mode 100644 drivers/clk/exynos/clk-exynos850.c create mode 100644 drivers/clk/exynos/clk.c create mode 100644 drivers/clk/exynos/clk.h create mode 100644 drivers/pinctrl/exynos/pinctrl-exynos850.c create mode 100644 drivers/soc/samsung/Kconfig create mode 100644 drivers/soc/samsung/Makefile create mode 100644 drivers/soc/samsung/exynos-pmu.c create mode 100644 drivers/soc/samsung/exynos-usi.c create mode 100644 include/configs/e850-96.h create mode 100644 include/dt-bindings/clock/exynos850.h create mode 100644 include/dt-bindings/soc/samsung,exynos-usi.h
-- 2.39.2