Adds basic support for the Tesla Full Self-Driving (FSD) SoC. This SoC contains three clusters of four Cortex-A72 CPUs, as well as several IPs. Patches 1 to 9 provide support for the clock controller (which is designed similarly to Exynos SoCs). The remaining changes provide pinmux support, initial device tree support. - Changes since v3 * Addressed Stefen's review comments on patch 14/16 * Fixed kernel test robot warning on patch 04/16 * rebsaed this series on Krzysztof's pinmux new binding schema work [1] - Changes since v2 * Addressed Krzysztof's and Stephen's review comments * Added Reviewed-by and Acked-by tags * Rebased on next-20220120 - Changes since v1 * fixed make dt_binding_check error as pointed by Rob * Addressed Krzysztof's and Rob's review comments * Added Reviewed-by and Acked-by tags * Dropped SPI, MCT and ADC from this series (to be posted in small sets) NOTE: These patches are based on Krzysztof's pinmux for-next branch commit = 832ae134ccc1 [1] https://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/samsung.git/log/?h=for-next Alim Akhtar (16): dt-bindings: add vendor prefix for Tesla dt-bindings: clock: Add bindings definitions for FSD CMU blocks dt-bindings: clock: Document FSD CMU bindings clk: samsung: fsd: Add initial clock support clk: samsung: fsd: Add cmu_peric block clock information clk: samsung: fsd: Add cmu_fsys0 clock information clk: samsung: fsd: Add cmu_fsys1 clock information clk: samsung: fsd: Add cmu_imem block clock information clk: samsung: fsd: Add cmu_mfc block clock information clk: samsung: fsd: Add cam_csi block clock information dt-bindings: pinctrl: samsung: Add compatible for Tesla FSD SoC pinctrl: samsung: add FSD SoC specific data dt-bindings: arm: add Tesla FSD ARM SoC arm64: dts: fsd: Add initial device tree support arm64: dts: fsd: Add initial pinctrl support arm64: defconfig: Enable Tesla FSD SoC .../devicetree/bindings/arm/tesla.yaml | 27 + .../bindings/clock/tesla,fsd-clock.yaml | 198 ++ .../bindings/pinctrl/samsung,pinctrl.yaml | 1 + .../devicetree/bindings/vendor-prefixes.yaml | 2 + MAINTAINERS | 8 + arch/arm64/Kconfig.platforms | 6 + arch/arm64/boot/dts/Makefile | 1 + arch/arm64/boot/dts/tesla/Makefile | 3 + arch/arm64/boot/dts/tesla/fsd-evb.dts | 39 + arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi | 335 +++ arch/arm64/boot/dts/tesla/fsd.dtsi | 673 ++++++ arch/arm64/configs/defconfig | 1 + drivers/clk/samsung/Kconfig | 8 + drivers/clk/samsung/Makefile | 1 + drivers/clk/samsung/clk-fsd.c | 1803 +++++++++++++++++ drivers/clk/samsung/clk-pll.c | 1 + drivers/clk/samsung/clk-pll.h | 1 + .../pinctrl/samsung/pinctrl-exynos-arm64.c | 71 + drivers/pinctrl/samsung/pinctrl-samsung.c | 2 + drivers/pinctrl/samsung/pinctrl-samsung.h | 1 + include/dt-bindings/clock/fsd-clk.h | 150 ++ 21 files changed, 3332 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/tesla.yaml create mode 100644 Documentation/devicetree/bindings/clock/tesla,fsd-clock.yaml create mode 100644 arch/arm64/boot/dts/tesla/Makefile create mode 100644 arch/arm64/boot/dts/tesla/fsd-evb.dts create mode 100644 arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi create mode 100644 arch/arm64/boot/dts/tesla/fsd.dtsi create mode 100644 drivers/clk/samsung/clk-fsd.c create mode 100644 include/dt-bindings/clock/fsd-clk.h base-commit: 832ae134ccc1c78a2f5ec81b7010dd24c3c49535 -- 2.25.1