diff mbox series

arm: exynos: Migrate E850-96 board to OF_UPSTREAM

Message ID 20240523220334.2502-1-semen.protsenko@linaro.org
State Superseded
Headers show
Series arm: exynos: Migrate E850-96 board to OF_UPSTREAM | expand

Commit Message

Sam Protsenko May 23, 2024, 10:03 p.m. UTC
Use upstream device tree files and bindings. To do so:
 - imply (enable) OF_UPSTREAM option for E850-96 target
 - point DEFAULT_DEVICE_TREE in E850-96 config to upstream dts
 - remove now not needed local dts files, binding docs and headers
 - update MAINTAINERS correspondingly

Upstream device tree files for Exynos850 SoC and E850-96 board are
pretty much the same as local (removed) ones, so the conversion is
rather straightforward and painless in this case. The appended dts file
(arch/arm/dts/exynos850-e850-96-u-boot.dtsi) stays unchanged.

The only remaining local dt-bindings doc for E850-96 board is
exynos-pmu.yaml. It wasn't removed as it's quite different from Linux
kernel version. Particularly U-Boot local version of exynos-pmu.yaml
describes "samsung,uart-debug-1" property, which is not present in Linux
kernel binding. Later it might be upstreamed to Linux kernel, and once
it's done the U-Boot exynos-pmu.yaml binding can be removed.

No functional change.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
---
 MAINTAINERS                                   |   7 +-
 arch/arm/dts/Makefile                         |   1 -
 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                  |   1 +
 configs/e850-96_defconfig                     |   2 +-
 .../clock/samsung,exynos850-clock.yaml        | 307 -------
 .../soc/samsung/exynos-usi.yaml               | 162 ----
 include/dt-bindings/clock/exynos850.h         | 337 --------
 include/dt-bindings/soc/samsung,exynos-usi.h  |  17 -
 11 files changed, 3 insertions(+), 2576 deletions(-)
 delete mode 100644 arch/arm/dts/exynos850-e850-96.dts
 delete mode 100644 arch/arm/dts/exynos850-pinctrl.dtsi
 delete mode 100644 arch/arm/dts/exynos850.dtsi
 delete mode 100644 doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
 delete mode 100644 doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
 delete mode 100644 include/dt-bindings/clock/exynos850.h
 delete mode 100644 include/dt-bindings/soc/samsung,exynos-usi.h

Comments

Sumit Garg May 24, 2024, 4:57 a.m. UTC | #1
+ Krzysztof, Fyi..

On Fri, 24 May 2024 at 03:33, Sam Protsenko <semen.protsenko@linaro.org> wrote:
>
> Use upstream device tree files and bindings. To do so:
>  - imply (enable) OF_UPSTREAM option for E850-96 target
>  - point DEFAULT_DEVICE_TREE in E850-96 config to upstream dts
>  - remove now not needed local dts files, binding docs and headers
>  - update MAINTAINERS correspondingly
>
> Upstream device tree files for Exynos850 SoC and E850-96 board are
> pretty much the same as local (removed) ones, so the conversion is
> rather straightforward and painless in this case. The appended dts file
> (arch/arm/dts/exynos850-e850-96-u-boot.dtsi) stays unchanged.
>
> The only remaining local dt-bindings doc for E850-96 board is
> exynos-pmu.yaml. It wasn't removed as it's quite different from Linux
> kernel version. Particularly U-Boot local version of exynos-pmu.yaml
> describes "samsung,uart-debug-1" property, which is not present in Linux
> kernel binding. Later it might be upstreamed to Linux kernel, and once
> it's done the U-Boot exynos-pmu.yaml binding can be removed.
>
> No functional change.
>
> Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
> ---
>  MAINTAINERS                                   |   7 +-
>  arch/arm/dts/Makefile                         |   1 -
>  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                  |   1 +
>  configs/e850-96_defconfig                     |   2 +-
>  .../clock/samsung,exynos850-clock.yaml        | 307 -------
>  .../soc/samsung/exynos-usi.yaml               | 162 ----
>  include/dt-bindings/clock/exynos850.h         | 337 --------
>  include/dt-bindings/soc/samsung,exynos-usi.h  |  17 -
>  11 files changed, 3 insertions(+), 2576 deletions(-)
>  delete mode 100644 arch/arm/dts/exynos850-e850-96.dts
>  delete mode 100644 arch/arm/dts/exynos850-pinctrl.dtsi
>  delete mode 100644 arch/arm/dts/exynos850.dtsi
>  delete mode 100644 doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
>  delete mode 100644 doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
>  delete mode 100644 include/dt-bindings/clock/exynos850.h
>  delete mode 100644 include/dt-bindings/soc/samsung,exynos-usi.h
>

Acked-by: Sumit Garg <sumit.garg@linaro.org>

-Sumit

> diff --git a/MAINTAINERS b/MAINTAINERS
> index 638b2fdd442f..f8afd7d51e2e 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -578,19 +578,14 @@ F:        drivers/clk/exynos/clk.h
>  ARM SAMSUNG EXYNOS850 SOC
>  M:     Sam Protsenko <semen.protsenko@linaro.org>
>  S:     Maintained
> -F:     arch/arm/dts/exynos850-pinctrl.dtsi
> -F:     arch/arm/dts/exynos850.dtsi
> -F:     doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
>  F:     drivers/clk/exynos/clk-exynos850.c
>  F:     drivers/pinctrl/exynos/pinctrl-exynos850.c
> -F:     include/dt-bindings/clock/exynos850.h
>
>  ARM SAMSUNG SOC DRIVERS
>  M:     Sam Protsenko <semen.protsenko@linaro.org>
>  S:     Maintained
> -F:     doc/device-tree-bindings/soc/samsung/*
> +F:     doc/device-tree-bindings/soc/samsung/exynos-pmu.yaml
>  F:     drivers/soc/samsung/*
> -F:     include/dt-bindings/soc/samsung,*.h
>
>  ARM SANCLOUD
>  M:     Paul Barker <paul.barker@sancloud.com>
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index a5c82ebf7a5f..4b72d9f64863 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -31,7 +31,6 @@ dtb-$(CONFIG_EXYNOS7420) += exynos7420-espresso7420.dtb
>  dtb-$(CONFIG_TARGET_A5Y17LTE) += exynos78x0-axy17lte.dtb
>  dtb-$(CONFIG_TARGET_A3Y17LTE) += exynos78x0-axy17lte.dtb
>  dtb-$(CONFIG_TARGET_A7Y17LTE) += exynos78x0-axy17lte.dtb
> -dtb-$(CONFIG_TARGET_E850_96) += exynos850-e850-96.dtb
>
>  dtb-$(CONFIG_ARCH_APPLE) += \
>         t8103-j274.dtb \
> diff --git a/arch/arm/dts/exynos850-e850-96.dts b/arch/arm/dts/exynos850-e850-96.dts
> deleted file mode 100644
> index f074df8982b3..000000000000
> --- a/arch/arm/dts/exynos850-e850-96.dts
> +++ /dev/null
> @@ -1,273 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0
> -/*
> - * WinLink E850-96 board device tree source
> - *
> - * Copyright (C) 2018 Samsung Electronics Co., Ltd.
> - * Copyright (C) 2021 Linaro Ltd.
> - *
> - * Device tree source file for WinLink's E850-96 board which is based on
> - * Samsung Exynos850 SoC.
> - */
> -
> -/dts-v1/;
> -
> -#include "exynos850.dtsi"
> -#include <dt-bindings/gpio/gpio.h>
> -#include <dt-bindings/input/input.h>
> -#include <dt-bindings/leds/common.h>
> -
> -/ {
> -       model = "WinLink E850-96 board";
> -       compatible = "winlink,e850-96", "samsung,exynos850";
> -
> -       aliases {
> -               mmc0 = &mmc_0;
> -               serial0 = &serial_0;
> -       };
> -
> -       chosen {
> -               stdout-path = &serial_0;
> -       };
> -
> -       connector {
> -               compatible = "gpio-usb-b-connector", "usb-b-connector";
> -               label = "micro-USB";
> -               type = "micro";
> -               vbus-supply = <&reg_usb_host_vbus>;
> -               id-gpios = <&gpa0 0 GPIO_ACTIVE_LOW>;
> -               pinctrl-names = "default";
> -               pinctrl-0 = <&micro_usb_det_pins>;
> -
> -               port {
> -                       usb_dr_connector: endpoint {
> -                               remote-endpoint = <&usb1_drd_sw>;
> -                       };
> -               };
> -       };
> -
> -       /*
> -        * RAM: 4 GiB (eMCP):
> -        *   - 2 GiB at 0x80000000
> -        *   - 2 GiB at 0x880000000
> -        *
> -        * 0xbab00000..0xbfffffff: secure memory (85 MiB).
> -        */
> -       memory@80000000 {
> -               device_type = "memory";
> -               reg = <0x0 0x80000000 0x3ab00000>,
> -                     <0x0 0xc0000000 0x40000000>,
> -                     <0x8 0x80000000 0x80000000>;
> -       };
> -
> -       gpio-keys {
> -               compatible = "gpio-keys";
> -               pinctrl-names = "default";
> -               pinctrl-0 = <&key_voldown_pins &key_volup_pins>;
> -
> -               volume-down-key {
> -                       label = "Volume Down";
> -                       linux,code = <KEY_VOLUMEDOWN>;
> -                       gpios = <&gpa1 0 GPIO_ACTIVE_LOW>;
> -               };
> -
> -               volume-up-key {
> -                       label = "Volume Up";
> -                       linux,code = <KEY_VOLUMEUP>;
> -                       gpios = <&gpa0 7 GPIO_ACTIVE_LOW>;
> -               };
> -       };
> -
> -       leds {
> -               compatible = "gpio-leds";
> -
> -               /* HEART_BEAT_LED */
> -               user_led1: led-1 {
> -                       label = "yellow:user1";
> -                       gpios = <&gpg2 2 GPIO_ACTIVE_HIGH>;
> -                       color = <LED_COLOR_ID_YELLOW>;
> -                       function = LED_FUNCTION_HEARTBEAT;
> -                       linux,default-trigger = "heartbeat";
> -               };
> -
> -               /* eMMC_LED */
> -               user_led2: led-2 {
> -                       label = "yellow:user2";
> -                       gpios = <&gpg2 3 GPIO_ACTIVE_HIGH>;
> -                       color = <LED_COLOR_ID_YELLOW>;
> -                       linux,default-trigger = "mmc0";
> -               };
> -
> -               /* SD_LED */
> -               user_led3: led-3 {
> -                       label = "white:user3";
> -                       gpios = <&gpg2 4 GPIO_ACTIVE_HIGH>;
> -                       color = <LED_COLOR_ID_WHITE>;
> -                       function = LED_FUNCTION_SD;
> -                       linux,default-trigger = "mmc2";
> -               };
> -
> -               /* WIFI_LED */
> -               wlan_active_led: led-4 {
> -                       label = "yellow:wlan";
> -                       gpios = <&gpg2 6 GPIO_ACTIVE_HIGH>;
> -                       color = <LED_COLOR_ID_YELLOW>;
> -                       function = LED_FUNCTION_WLAN;
> -                       linux,default-trigger = "phy0tx";
> -                       default-state = "off";
> -               };
> -
> -               /* BLUETOOTH_LED */
> -               bt_active_led: led-5 {
> -                       label = "blue:bt";
> -                       gpios = <&gpg2 7 GPIO_ACTIVE_HIGH>;
> -                       color = <LED_COLOR_ID_BLUE>;
> -                       function = LED_FUNCTION_BLUETOOTH;
> -                       linux,default-trigger = "hci0-power";
> -                       default-state = "off";
> -               };
> -       };
> -
> -       /* TODO: Remove this once PMIC is implemented  */
> -       reg_dummy: regulator-0 {
> -               compatible = "regulator-fixed";
> -               regulator-name = "dummy_reg";
> -       };
> -
> -       reg_usb_host_vbus: regulator-1 {
> -               compatible = "regulator-fixed";
> -               regulator-name = "usb_host_vbus";
> -               regulator-min-microvolt = <5000000>;
> -               regulator-max-microvolt = <5000000>;
> -               gpio = <&gpa3 5 GPIO_ACTIVE_LOW>;
> -       };
> -
> -       reserved-memory {
> -               #address-cells = <2>;
> -               #size-cells = <1>;
> -               ranges;
> -
> -               ramoops@f0000000 {
> -                       compatible = "ramoops";
> -                       reg = <0x0 0xf0000000 0x200000>;
> -                       record-size = <0x20000>;
> -                       console-size = <0x20000>;
> -                       ftrace-size = <0x100000>;
> -                       pmsg-size = <0x20000>;
> -               };
> -       };
> -
> -       /*
> -        * RTC clock (XrtcXTI); external, must be 32.768 kHz.
> -        *
> -        * TODO: Remove this once RTC clock is implemented properly as part of
> -        *       PMIC driver.
> -        */
> -       rtcclk: clock-rtcclk {
> -               compatible = "fixed-clock";
> -               clock-output-names = "rtcclk";
> -               #clock-cells = <0>;
> -               clock-frequency = <32768>;
> -       };
> -};
> -
> -&cmu_hsi {
> -       clocks = <&oscclk>, <&rtcclk>,
> -                <&cmu_top CLK_DOUT_HSI_BUS>,
> -                <&cmu_top CLK_DOUT_HSI_MMC_CARD>,
> -                <&cmu_top CLK_DOUT_HSI_USB20DRD>;
> -       clock-names = "oscclk", "rtcclk", "dout_hsi_bus",
> -                     "dout_hsi_mmc_card", "dout_hsi_usb20drd";
> -};
> -
> -&mmc_0 {
> -       status = "okay";
> -       mmc-hs200-1_8v;
> -       mmc-hs400-1_8v;
> -       cap-mmc-highspeed;
> -       non-removable;
> -       mmc-hs400-enhanced-strobe;
> -       card-detect-delay = <200>;
> -       clock-frequency = <800000000>;
> -       bus-width = <8>;
> -       samsung,dw-mshc-ciu-div = <3>;
> -       samsung,dw-mshc-sdr-timing = <0 4>;
> -       samsung,dw-mshc-ddr-timing = <2 4>;
> -       samsung,dw-mshc-hs400-timing = <0 2>;
> -
> -       pinctrl-names = "default";
> -       pinctrl-0 = <&sd0_clk_pins &sd0_cmd_pins &sd0_rdqs_pins &sd0_nreset_pins
> -                    &sd0_bus1_pins &sd0_bus4_pins &sd0_bus8_pins>;
> -};
> -
> -&oscclk {
> -       clock-frequency = <26000000>;
> -};
> -
> -&pinctrl_alive {
> -       key_voldown_pins: key-voldown-pins {
> -               samsung,pins = "gpa1-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       key_volup_pins: key-volup-pins {
> -               samsung,pins = "gpa0-7";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       micro_usb_det_pins: micro-usb-det-pins {
> -               samsung,pins = "gpa0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -};
> -
> -&rtc {
> -       status = "okay";
> -       clocks = <&cmu_apm CLK_GOUT_RTC_PCLK>, <&rtcclk>;
> -       clock-names = "rtc", "rtc_src";
> -};
> -
> -&serial_0 {
> -       status = "okay";
> -       pinctrl-names = "default";
> -       pinctrl-0 = <&uart1_pins>;
> -};
> -
> -&usbdrd {
> -       status = "okay";
> -       vdd10-supply = <&reg_dummy>;
> -       vdd33-supply = <&reg_dummy>;
> -};
> -
> -&usbdrd_dwc3 {
> -       dr_mode = "otg";
> -       usb-role-switch;
> -       role-switch-default-mode = "host";
> -
> -       port {
> -               usb1_drd_sw: endpoint {
> -                       remote-endpoint = <&usb_dr_connector>;
> -               };
> -       };
> -};
> -
> -&usbdrd_phy {
> -       status = "okay";
> -};
> -
> -&usi_uart {
> -       samsung,clkreq-on; /* needed for UART mode */
> -       status = "okay";
> -};
> -
> -&watchdog_cl0 {
> -       status = "okay";
> -};
> -
> -&watchdog_cl1 {
> -       status = "okay";
> -};
> diff --git a/arch/arm/dts/exynos850-pinctrl.dtsi b/arch/arm/dts/exynos850-pinctrl.dtsi
> deleted file mode 100644
> index 424bc80bde68..000000000000
> --- a/arch/arm/dts/exynos850-pinctrl.dtsi
> +++ /dev/null
> @@ -1,663 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0
> -/*
> - * Samsung's Exynos850 SoC pin-mux and pin-config device tree source
> - *
> - * Copyright (C) 2017 Samsung Electronics Co., Ltd.
> - * Copyright (C) 2021 Linaro Ltd.
> - *
> - * Samsung's Exynos850 SoC pin-mux and pin-config options are listed as device
> - * tree nodes in this file.
> - */
> -
> -#include <dt-bindings/interrupt-controller/arm-gic.h>
> -#include "exynos-pinctrl.h"
> -
> -&pinctrl_alive {
> -       gpa0: gpa0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpa1: gpa1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpa2: gpa2-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpa3: gpa3-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpa4: gpa4-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpq0: gpq0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       /* I2C5 (also called CAM_PMIC_I2C in TRM) */
> -       i2c5_pins: i2c5-pins {
> -               samsung,pins = "gpa3-5", "gpa3-6";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* I2C6 (also called MOTOR_I2C in TRM) */
> -       i2c6_pins: i2c6-pins {
> -               samsung,pins = "gpa3-7", "gpa4-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI: UART_DEBUG_0 pins */
> -       uart0_pins: uart0-pins {
> -               samsung,pins = "gpq0-0", "gpq0-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -
> -       /* USI: UART_DEBUG_1 pins */
> -       uart1_pins: uart1-pins {
> -               samsung,pins = "gpa3-7", "gpa4-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -};
> -
> -&pinctrl_cmgp {
> -       gpm0: gpm0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm1: gpm1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm2: gpm2-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm3: gpm3-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm4: gpm4-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm5: gpm5-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm6: gpm6-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       gpm7: gpm7-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -               interrupt-parent = <&gic>;
> -               interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
> -       };
> -
> -       /* USI_CMGP0: HSI2C function */
> -       hsi2c3_pins: hsi2c3-pins {
> -               samsung,pins = "gpm0-0", "gpm1-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI_CMGP0: UART function (4 pins, Auto Flow Control) */
> -       uart1_single_pins: uart1-single-pins {
> -               samsung,pins = "gpm0-0", "gpm1-0", "gpm2-0", "gpm3-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -
> -       /* USI_CMGP0: UART function (2 pins, Non-Auto Flow Control) */
> -       uart1_dual_pins: uart1-dual-pins {
> -               samsung,pins = "gpm0-0", "gpm1-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -
> -       /* USI_CMGP0: SPI function */
> -       spi1_pins: spi1-pins {
> -               samsung,pins = "gpm0-0", "gpm1-0", "gpm2-0", "gpm3-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI_CMGP1: HSI2C function */
> -       hsi2c4_pins: hsi2c4-pins {
> -               samsung,pins = "gpm4-0", "gpm5-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI_CMGP1: UART function (4 pins, Auto Flow Control) */
> -       uart2_single_pins: uart2-single-pins {
> -               samsung,pins = "gpm4-0", "gpm5-0", "gpm6-0", "gpm7-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -
> -       /* USI_CMGP1: UART function (2 pins, Non-Auto Flow Control) */
> -       uart2_dual_pins: uart2-dual-pins {
> -               samsung,pins = "gpm4-0", "gpm5-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -
> -       /* USI_CMGP1: SPI function */
> -       spi2_pins: spi2-pins {
> -               samsung,pins = "gpm4-0", "gpm5-0", "gpm6-0", "gpm7-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -};
> -
> -&pinctrl_aud {
> -       gpb0: gpb0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpb1: gpb1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       aud_codec_mclk_pins: aud-codec-mclk-pins {
> -               samsung,pins = "gpb0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_codec_mclk_idle_pins: aud-codec-mclk-idle-pins {
> -               samsung,pins = "gpb0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_i2s0_pins: aud-i2s0-pins {
> -               samsung,pins = "gpb0-1", "gpb0-2", "gpb0-3", "gpb0-4";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_i2s0_idle_pins: aud-i2s0-idle-pins {
> -               samsung,pins = "gpb0-1", "gpb0-2", "gpb0-3", "gpb0-4";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_i2s1_pins: aud-i2s1-pins {
> -               samsung,pins = "gpb1-0", "gpb1-1", "gpb1-2", "gpb1-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_i2s1_idle_pins: aud-i2s1-idle-pins {
> -               samsung,pins = "gpb1-0", "gpb1-1", "gpb1-2", "gpb1-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_fm_pins: aud-fm-pins {
> -               samsung,pins = "gpb1-4";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -
> -       aud_fm_idle_pins: aud-fm-idle-pins {
> -               samsung,pins = "gpb1-4";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -};
> -
> -&pinctrl_hsi {
> -       gpf2: gpf2-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       sd2_clk_pins: sd2-clk-pins {
> -               samsung,pins = "gpf2-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
> -       };
> -
> -       sd2_cmd_pins: sd2-cmd-pins {
> -               samsung,pins = "gpf2-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
> -        };
> -
> -       sd2_bus1_pins: sd2-bus1-pins {
> -               samsung,pins = "gpf2-2";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
> -       };
> -
> -       sd2_bus4_pins: sd2-bus4-pins {
> -               samsung,pins = "gpf2-3", "gpf2-4", "gpf2-5";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
> -       };
> -
> -       sd2_pdn_pins: sd2-pdn-pins {
> -               samsung,pins = "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3",
> -                              "gpf2-4", "gpf2-5";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -       };
> -};
> -
> -&pinctrl_core {
> -       gpf0: gpf0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpf1: gpf1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       sd0_clk_pins: sd0-clk-pins {
> -               samsung,pins = "gpf0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -
> -       sd0_cmd_pins: sd0-cmd-pins {
> -               samsung,pins = "gpf0-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -
> -       sd0_rdqs_pins: sd0-rdqs-pins {
> -               samsung,pins = "gpf0-2";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -
> -       sd0_nreset_pins: sd0-nreset-pins {
> -               samsung,pins = "gpf0-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -
> -       sd0_bus1_pins: sd0-bus1-pins {
> -               samsung,pins = "gpf1-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -
> -       sd0_bus4_pins: sd0-bus4-pins {
> -               samsung,pins = "gpf1-1", "gpf1-2", "gpf1-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -
> -       sd0_bus8_pins: sd0-bus8-pins {
> -               samsung,pins = "gpf1-4", "gpf1-5", "gpf1-6", "gpf1-7";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
> -       };
> -};
> -
> -&pinctrl_peri {
> -       gpc0: gpc0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpc1: gpc1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpg0: gpg0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpg1: gpg1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpg2: gpg2-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpg3: gpg3-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpp0: gpp0-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -       gpp1: gpp1-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       gpp2: gpp2-gpio-bank {
> -               gpio-controller;
> -               #gpio-cells = <2>;
> -
> -               interrupt-controller;
> -               #interrupt-cells = <2>;
> -       };
> -
> -       sensor_mclk0_in_pins: sensor-mclk0-in-pins {
> -               samsung,pins = "gpc0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk0_out_pins: sensor-mclk0-out-pins {
> -               samsung,pins = "gpc0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk0_fn_pins: sensor-mclk0-fn-pins {
> -               samsung,pins = "gpc0-0";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk1_in_pins: sensor-mclk1-in-pins {
> -               samsung,pins = "gpc0-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk1_out_pins: sensor-mclk1-out-pins {
> -               samsung,pins = "gpc0-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk1_fn_pins: sensor-mclk1-fn-pins {
> -               samsung,pins = "gpc0-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk2_in_pins: sensor-mclk2-in-pins {
> -               samsung,pins = "gpc0-2";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk2_out_pins: sensor-mclk2-out-pins {
> -               samsung,pins = "gpc0-2";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       sensor_mclk2_fn_pins: sensor-mclk2-fn-pins {
> -               samsung,pins = "gpc0-2";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
> -       };
> -
> -       /* USI: HSI2C0 */
> -       hsi2c0_pins: hsi2c0-pins {
> -               samsung,pins = "gpc1-0", "gpc1-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI: HSI2C1 */
> -       hsi2c1_pins: hsi2c1-pins {
> -               samsung,pins = "gpc1-2", "gpc1-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI: HSI2C2 */
> -       hsi2c2_pins: hsi2c2-pins {
> -               samsung,pins = "gpc1-4", "gpc1-5";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       /* USI: SPI */
> -       spi0_pins: spi0-pins {
> -               samsung,pins = "gpp2-0", "gpp2-1", "gpp2-2", "gpp2-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       i2c0_pins: i2c0-pins {
> -               samsung,pins = "gpp0-0", "gpp0-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       i2c1_pins: i2c1-pins {
> -               samsung,pins = "gpp0-2", "gpp0-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       i2c2_pins: i2c2-pins {
> -               samsung,pins = "gpp0-4", "gpp0-5";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       i2c3_pins: i2c3-pins {
> -               samsung,pins = "gpp1-0", "gpp1-1";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       i2c4_pins: i2c4-pins {
> -               samsung,pins = "gpp1-2", "gpp1-3";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
> -               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
> -       };
> -
> -       xclkout_pins: xclkout-pins {
> -               samsung,pins = "gpq0-2";
> -               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
> -               samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
> -       };
> -};
> diff --git a/arch/arm/dts/exynos850.dtsi b/arch/arm/dts/exynos850.dtsi
> deleted file mode 100644
> index 53104e65b9c6..000000000000
> --- a/arch/arm/dts/exynos850.dtsi
> +++ /dev/null
> @@ -1,809 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0
> -/*
> - * Samsung Exynos850 SoC device tree source
> - *
> - * Copyright (C) 2018 Samsung Electronics Co., Ltd.
> - * Copyright (C) 2021 Linaro Ltd.
> - *
> - * Samsung Exynos850 SoC device nodes are listed in this file.
> - * Exynos850 based board files can include this file and provide
> - * values for board specific bindings.
> - */
> -
> -#include <dt-bindings/clock/exynos850.h>
> -#include <dt-bindings/interrupt-controller/arm-gic.h>
> -#include <dt-bindings/soc/samsung,exynos-usi.h>
> -
> -/ {
> -       /* Also known under engineering name Exynos3830 */
> -       compatible = "samsung,exynos850";
> -       #address-cells = <2>;
> -       #size-cells = <1>;
> -
> -       interrupt-parent = <&gic>;
> -
> -       aliases {
> -               pinctrl0 = &pinctrl_alive;
> -               pinctrl1 = &pinctrl_cmgp;
> -               pinctrl2 = &pinctrl_aud;
> -               pinctrl3 = &pinctrl_hsi;
> -               pinctrl4 = &pinctrl_core;
> -               pinctrl5 = &pinctrl_peri;
> -       };
> -
> -       arm-pmu {
> -               compatible = "arm,cortex-a55-pmu";
> -               interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
> -                            <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
> -               interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>,
> -                                    <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
> -       };
> -
> -       /* Main system clock (XTCXO); external, must be 26 MHz */
> -       oscclk: clock-oscclk {
> -               compatible = "fixed-clock";
> -               clock-output-names = "oscclk";
> -               #clock-cells = <0>;
> -       };
> -
> -       cpus {
> -               #address-cells = <1>;
> -               #size-cells = <0>;
> -
> -               cpu-map {
> -                       cluster0 {
> -                               core0 {
> -                                       cpu = <&cpu0>;
> -                               };
> -                               core1 {
> -                                       cpu = <&cpu1>;
> -                               };
> -                               core2 {
> -                                       cpu = <&cpu2>;
> -                               };
> -                               core3 {
> -                                       cpu = <&cpu3>;
> -                               };
> -                       };
> -
> -                       cluster1 {
> -                               core0 {
> -                                       cpu = <&cpu4>;
> -                               };
> -                               core1 {
> -                                       cpu = <&cpu5>;
> -                               };
> -                               core2 {
> -                                       cpu = <&cpu6>;
> -                               };
> -                               core3 {
> -                                       cpu = <&cpu7>;
> -                               };
> -                       };
> -               };
> -
> -               cpu0: cpu@0 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x0>;
> -                       enable-method = "psci";
> -               };
> -               cpu1: cpu@1 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x1>;
> -                       enable-method = "psci";
> -               };
> -               cpu2: cpu@2 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x2>;
> -                       enable-method = "psci";
> -               };
> -               cpu3: cpu@3 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x3>;
> -                       enable-method = "psci";
> -               };
> -               cpu4: cpu@100 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x100>;
> -                       enable-method = "psci";
> -               };
> -               cpu5: cpu@101 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x101>;
> -                       enable-method = "psci";
> -               };
> -               cpu6: cpu@102 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x102>;
> -                       enable-method = "psci";
> -               };
> -               cpu7: cpu@103 {
> -                       device_type = "cpu";
> -                       compatible = "arm,cortex-a55";
> -                       reg = <0x103>;
> -                       enable-method = "psci";
> -               };
> -       };
> -
> -       psci {
> -               compatible = "arm,psci-1.0";
> -               method = "smc";
> -       };
> -
> -       timer {
> -               compatible = "arm,armv8-timer";
> -               /* Hypervisor Virtual Timer interrupt is not wired to GIC */
> -               interrupts =
> -                    <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
> -                    <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
> -                    <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
> -                    <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
> -       };
> -
> -       soc: soc@0 {
> -               compatible = "simple-bus";
> -               #address-cells = <1>;
> -               #size-cells = <1>;
> -               ranges = <0x0 0x0 0x0 0x20000000>;
> -
> -               chipid@10000000 {
> -                       compatible = "samsung,exynos850-chipid";
> -                       reg = <0x10000000 0x100>;
> -               };
> -
> -               timer@10040000 {
> -                       compatible = "samsung,exynos850-mct",
> -                                    "samsung,exynos4210-mct";
> -                       reg = <0x10040000 0x800>;
> -                       interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>;
> -                       clocks = <&oscclk>, <&cmu_peri CLK_GOUT_MCT_PCLK>;
> -                       clock-names = "fin_pll", "mct";
> -               };
> -
> -               gic: interrupt-controller@12a01000 {
> -                       compatible = "arm,gic-400";
> -                       #interrupt-cells = <3>;
> -                       #address-cells = <0>;
> -                       reg = <0x12a01000 0x1000>,
> -                             <0x12a02000 0x2000>,
> -                             <0x12a04000 0x2000>,
> -                             <0x12a06000 0x2000>;
> -                       interrupt-controller;
> -                       interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) |
> -                                                IRQ_TYPE_LEVEL_HIGH)>;
> -               };
> -
> -               pmu_system_controller: system-controller@11860000 {
> -                       compatible = "samsung,exynos850-pmu", "syscon";
> -                       reg = <0x11860000 0x10000>;
> -
> -                       reboot: syscon-reboot {
> -                               compatible = "syscon-reboot";
> -                               regmap = <&pmu_system_controller>;
> -                               offset = <0x3a00>; /* SYSTEM_CONFIGURATION */
> -                               mask = <0x2>; /* SWRESET_SYSTEM */
> -                               value = <0x2>; /* reset value */
> -                       };
> -               };
> -
> -               watchdog_cl0: watchdog@10050000 {
> -                       compatible = "samsung,exynos850-wdt";
> -                       reg = <0x10050000 0x100>;
> -                       interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
> -                       clocks = <&cmu_peri CLK_GOUT_WDT0_PCLK>, <&oscclk>;
> -                       clock-names = "watchdog", "watchdog_src";
> -                       samsung,syscon-phandle = <&pmu_system_controller>;
> -                       samsung,cluster-index = <0>;
> -                       status = "disabled";
> -               };
> -
> -               watchdog_cl1: watchdog@10060000 {
> -                       compatible = "samsung,exynos850-wdt";
> -                       reg = <0x10060000 0x100>;
> -                       interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
> -                       clocks = <&cmu_peri CLK_GOUT_WDT1_PCLK>, <&oscclk>;
> -                       clock-names = "watchdog", "watchdog_src";
> -                       samsung,syscon-phandle = <&pmu_system_controller>;
> -                       samsung,cluster-index = <1>;
> -                       status = "disabled";
> -               };
> -
> -               cmu_peri: clock-controller@10030000 {
> -                       compatible = "samsung,exynos850-cmu-peri";
> -                       reg = <0x10030000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_top CLK_DOUT_PERI_BUS>,
> -                                <&cmu_top CLK_DOUT_PERI_UART>,
> -                                <&cmu_top CLK_DOUT_PERI_IP>;
> -                       clock-names = "oscclk", "dout_peri_bus",
> -                                     "dout_peri_uart", "dout_peri_ip";
> -               };
> -
> -               cmu_g3d: clock-controller@11400000 {
> -                       compatible = "samsung,exynos850-cmu-g3d";
> -                       reg = <0x11400000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_top CLK_DOUT_G3D_SWITCH>;
> -                       clock-names = "oscclk", "dout_g3d_switch";
> -               };
> -
> -               cmu_apm: clock-controller@11800000 {
> -                       compatible = "samsung,exynos850-cmu-apm";
> -                       reg = <0x11800000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_top CLK_DOUT_CLKCMU_APM_BUS>;
> -                       clock-names = "oscclk", "dout_clkcmu_apm_bus";
> -               };
> -
> -               cmu_cmgp: clock-controller@11c00000 {
> -                       compatible = "samsung,exynos850-cmu-cmgp";
> -                       reg = <0x11c00000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_apm CLK_GOUT_CLKCMU_CMGP_BUS>;
> -                       clock-names = "oscclk", "gout_clkcmu_cmgp_bus";
> -               };
> -
> -               cmu_core: clock-controller@12000000 {
> -                       compatible = "samsung,exynos850-cmu-core";
> -                       reg = <0x12000000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_top CLK_DOUT_CORE_BUS>,
> -                                <&cmu_top CLK_DOUT_CORE_CCI>,
> -                                <&cmu_top CLK_DOUT_CORE_MMC_EMBD>,
> -                                <&cmu_top CLK_DOUT_CORE_SSS>;
> -                       clock-names = "oscclk", "dout_core_bus",
> -                                     "dout_core_cci", "dout_core_mmc_embd",
> -                                     "dout_core_sss";
> -               };
> -
> -               cmu_top: clock-controller@120e0000 {
> -                       compatible = "samsung,exynos850-cmu-top";
> -                       reg = <0x120e0000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>;
> -                       clock-names = "oscclk";
> -               };
> -
> -               cmu_mfcmscl: clock-controller@12c00000 {
> -                       compatible = "samsung,exynos850-cmu-mfcmscl";
> -                       reg = <0x12c00000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>,
> -                                <&cmu_top CLK_DOUT_MFCMSCL_MFC>,
> -                                <&cmu_top CLK_DOUT_MFCMSCL_M2M>,
> -                                <&cmu_top CLK_DOUT_MFCMSCL_MCSC>,
> -                                <&cmu_top CLK_DOUT_MFCMSCL_JPEG>;
> -                       clock-names = "oscclk", "dout_mfcmscl_mfc",
> -                                     "dout_mfcmscl_m2m", "dout_mfcmscl_mcsc",
> -                                     "dout_mfcmscl_jpeg";
> -               };
> -
> -               cmu_dpu: clock-controller@13000000 {
> -                       compatible = "samsung,exynos850-cmu-dpu";
> -                       reg = <0x13000000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_top CLK_DOUT_DPU>;
> -                       clock-names = "oscclk", "dout_dpu";
> -               };
> -
> -               cmu_hsi: clock-controller@13400000 {
> -                       compatible = "samsung,exynos850-cmu-hsi";
> -                       reg = <0x13400000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>,
> -                                <&cmu_top CLK_DOUT_HSI_BUS>,
> -                                <&cmu_top CLK_DOUT_HSI_MMC_CARD>,
> -                                <&cmu_top CLK_DOUT_HSI_USB20DRD>;
> -                       clock-names = "oscclk", "dout_hsi_bus",
> -                                     "dout_hsi_mmc_card", "dout_hsi_usb20drd";
> -               };
> -
> -               cmu_is: clock-controller@14500000 {
> -                       compatible = "samsung,exynos850-cmu-is";
> -                       reg = <0x14500000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>,
> -                                <&cmu_top CLK_DOUT_IS_BUS>,
> -                                <&cmu_top CLK_DOUT_IS_ITP>,
> -                                <&cmu_top CLK_DOUT_IS_VRA>,
> -                                <&cmu_top CLK_DOUT_IS_GDC>;
> -                       clock-names = "oscclk", "dout_is_bus", "dout_is_itp",
> -                                     "dout_is_vra", "dout_is_gdc";
> -               };
> -
> -               cmu_aud: clock-controller@14a00000 {
> -                       compatible = "samsung,exynos850-cmu-aud";
> -                       reg = <0x14a00000 0x8000>;
> -                       #clock-cells = <1>;
> -
> -                       clocks = <&oscclk>, <&cmu_top CLK_DOUT_AUD>;
> -                       clock-names = "oscclk", "dout_aud";
> -               };
> -
> -               pinctrl_alive: pinctrl@11850000 {
> -                       compatible = "samsung,exynos850-pinctrl";
> -                       reg = <0x11850000 0x1000>;
> -
> -                       wakeup-interrupt-controller {
> -                               compatible = "samsung,exynos850-wakeup-eint";
> -                       };
> -               };
> -
> -               pinctrl_cmgp: pinctrl@11c30000 {
> -                       compatible = "samsung,exynos850-pinctrl";
> -                       reg = <0x11c30000 0x1000>;
> -
> -                       wakeup-interrupt-controller {
> -                               compatible = "samsung,exynos850-wakeup-eint";
> -                       };
> -               };
> -
> -               pinctrl_core: pinctrl@12070000 {
> -                       compatible = "samsung,exynos850-pinctrl";
> -                       reg = <0x12070000 0x1000>;
> -                       interrupts = <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>;
> -               };
> -
> -               pinctrl_hsi: pinctrl@13430000 {
> -                       compatible = "samsung,exynos850-pinctrl";
> -                       reg = <0x13430000 0x1000>;
> -                       interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
> -               };
> -
> -               pinctrl_peri: pinctrl@139b0000 {
> -                       compatible = "samsung,exynos850-pinctrl";
> -                       reg = <0x139b0000 0x1000>;
> -                       interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
> -               };
> -
> -               pinctrl_aud: pinctrl@14a60000 {
> -                       compatible = "samsung,exynos850-pinctrl";
> -                       reg = <0x14a60000 0x1000>;
> -               };
> -
> -               rtc: rtc@11a30000 {
> -                       compatible = "samsung,s3c6410-rtc";
> -                       reg = <0x11a30000 0x100>;
> -                       interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
> -                                    <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
> -                       clocks = <&cmu_apm CLK_GOUT_RTC_PCLK>;
> -                       clock-names = "rtc";
> -                       status = "disabled";
> -               };
> -
> -               mmc_0: mmc@12100000 {
> -                       compatible = "samsung,exynos7-dw-mshc-smu";
> -                       reg = <0x12100000 0x2000>;
> -                       interrupts = <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       clocks = <&cmu_core CLK_GOUT_MMC_EMBD_ACLK>,
> -                                <&cmu_core CLK_GOUT_MMC_EMBD_SDCLKIN>;
> -                       clock-names = "biu", "ciu";
> -                       fifo-depth = <0x40>;
> -                       status = "disabled";
> -               };
> -
> -               i2c_0: i2c@13830000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13830000 0x100>;
> -                       interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c0_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C0_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               i2c_1: i2c@13840000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13840000 0x100>;
> -                       interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c1_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C1_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               i2c_2: i2c@13850000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13850000 0x100>;
> -                       interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c2_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C2_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               i2c_3: i2c@13860000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13860000 0x100>;
> -                       interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c3_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C3_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               i2c_4: i2c@13870000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13870000 0x100>;
> -                       interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c4_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C4_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               /* I2C_5 (also called CAM_PMIC_I2C in TRM) */
> -               i2c_5: i2c@13880000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13880000 0x100>;
> -                       interrupts = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c5_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C5_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               /* I2C_6 (also called MOTOR_I2C in TRM) */
> -               i2c_6: i2c@13890000 {
> -                       compatible = "samsung,s3c2440-i2c";
> -                       reg = <0x13890000 0x100>;
> -                       interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -                       pinctrl-names = "default";
> -                       pinctrl-0 = <&i2c6_pins>;
> -                       clocks = <&cmu_peri CLK_GOUT_I2C6_PCLK>;
> -                       clock-names = "i2c";
> -                       status = "disabled";
> -               };
> -
> -               sysmmu_mfcmscl: sysmmu@12c50000 {
> -                       compatible = "samsung,exynos-sysmmu";
> -                       reg = <0x12c50000 0x9000>;
> -                       interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
> -                       clock-names = "sysmmu";
> -                       clocks = <&cmu_mfcmscl CLK_GOUT_MFCMSCL_SYSMMU_CLK>;
> -                       #iommu-cells = <0>;
> -               };
> -
> -               sysmmu_dpu: sysmmu@130c0000 {
> -                       compatible = "samsung,exynos-sysmmu";
> -                       reg = <0x130c0000 0x9000>;
> -                       interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
> -                       clock-names = "sysmmu";
> -                       clocks = <&cmu_dpu CLK_GOUT_DPU_SMMU_CLK>;
> -                       #iommu-cells = <0>;
> -               };
> -
> -               sysmmu_is0: sysmmu@14550000 {
> -                       compatible = "samsung,exynos-sysmmu";
> -                       reg = <0x14550000 0x9000>;
> -                       interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
> -                       clock-names = "sysmmu";
> -                       clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS0_CLK>;
> -                       #iommu-cells = <0>;
> -               };
> -
> -               sysmmu_is1: sysmmu@14570000 {
> -                       compatible = "samsung,exynos-sysmmu";
> -                       reg = <0x14570000 0x9000>;
> -                       interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
> -                       clock-names = "sysmmu";
> -                       clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS1_CLK>;
> -                       #iommu-cells = <0>;
> -               };
> -
> -               sysmmu_aud: sysmmu@14850000 {
> -                       compatible = "samsung,exynos-sysmmu";
> -                       reg = <0x14850000 0x9000>;
> -                       interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
> -                       clock-names = "sysmmu";
> -                       clocks = <&cmu_aud CLK_GOUT_AUD_SYSMMU_CLK>;
> -                       #iommu-cells = <0>;
> -               };
> -
> -               sysreg_peri: syscon@10020000 {
> -                       compatible = "samsung,exynos850-peri-sysreg",
> -                                    "samsung,exynos850-sysreg", "syscon";
> -                       reg = <0x10020000 0x10000>;
> -                       clocks = <&cmu_peri CLK_GOUT_SYSREG_PERI_PCLK>;
> -               };
> -
> -               sysreg_cmgp: syscon@11c20000 {
> -                       compatible = "samsung,exynos850-cmgp-sysreg",
> -                                    "samsung,exynos850-sysreg", "syscon";
> -                       reg = <0x11c20000 0x10000>;
> -                       clocks = <&cmu_cmgp CLK_GOUT_SYSREG_CMGP_PCLK>;
> -               };
> -
> -               usbdrd: usb@13600000 {
> -                       compatible = "samsung,exynos850-dwusb3";
> -                       ranges = <0x0 0x13600000 0x10000>;
> -                       clocks = <&cmu_hsi CLK_GOUT_USB_BUS_EARLY_CLK>,
> -                                <&cmu_hsi CLK_GOUT_USB_REF_CLK>;
> -                       clock-names = "bus_early", "ref";
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       status = "disabled";
> -
> -                       usbdrd_dwc3: usb@0 {
> -                               compatible = "snps,dwc3";
> -                               reg = <0x0 0x10000>;
> -                               interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
> -                               phys = <&usbdrd_phy 0>;
> -                               phy-names = "usb2-phy";
> -                       };
> -               };
> -
> -               usbdrd_phy: phy@135d0000 {
> -                       compatible = "samsung,exynos850-usbdrd-phy";
> -                       reg = <0x135d0000 0x100>;
> -                       clocks = <&cmu_hsi CLK_GOUT_USB_PHY_ACLK>,
> -                                <&cmu_hsi CLK_GOUT_USB_PHY_REF_CLK>;
> -                       clock-names = "phy", "ref";
> -                       samsung,pmu-syscon = <&pmu_system_controller>;
> -                       #phy-cells = <1>;
> -                       status = "disabled";
> -               };
> -
> -               usi_uart: usi@138200c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x138200c0 0x20>;
> -                       samsung,sysreg = <&sysreg_peri 0x1010>;
> -                       samsung,mode = <USI_V2_UART>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_peri CLK_GOUT_UART_PCLK>,
> -                                <&cmu_peri CLK_GOUT_UART_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -
> -                       serial_0: serial@13820000 {
> -                               compatible = "samsung,exynos850-uart";
> -                               reg = <0x13820000 0xc0>;
> -                               interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&uart0_pins>;
> -                               clocks = <&cmu_peri CLK_GOUT_UART_PCLK>,
> -                                        <&cmu_peri CLK_GOUT_UART_IPCLK>;
> -                               clock-names = "uart", "clk_uart_baud0";
> -                               status = "disabled";
> -                       };
> -               };
> -
> -               usi_hsi2c_0: usi@138a00c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x138a00c0 0x20>;
> -                       samsung,sysreg = <&sysreg_peri 0x1020>;
> -                       samsung,mode = <USI_V2_I2C>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_peri CLK_GOUT_HSI2C0_PCLK>,
> -                                <&cmu_peri CLK_GOUT_HSI2C0_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -
> -                       hsi2c_0: i2c@138a0000 {
> -                               compatible = "samsung,exynosautov9-hsi2c";
> -                               reg = <0x138a0000 0xc0>;
> -                               interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
> -                               #address-cells = <1>;
> -                               #size-cells = <0>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&hsi2c0_pins>;
> -                               clocks = <&cmu_peri CLK_GOUT_HSI2C0_IPCLK>,
> -                                        <&cmu_peri CLK_GOUT_HSI2C0_PCLK>;
> -                               clock-names = "hsi2c", "hsi2c_pclk";
> -                               status = "disabled";
> -                       };
> -               };
> -
> -               usi_hsi2c_1: usi@138b00c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x138b00c0 0x20>;
> -                       samsung,sysreg = <&sysreg_peri 0x1030>;
> -                       samsung,mode = <USI_V2_I2C>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_peri CLK_GOUT_HSI2C1_PCLK>,
> -                                <&cmu_peri CLK_GOUT_HSI2C1_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -
> -                       hsi2c_1: i2c@138b0000 {
> -                               compatible = "samsung,exynosautov9-hsi2c";
> -                               reg = <0x138b0000 0xc0>;
> -                               interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
> -                               #address-cells = <1>;
> -                               #size-cells = <0>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&hsi2c1_pins>;
> -                               clocks = <&cmu_peri CLK_GOUT_HSI2C1_IPCLK>,
> -                                        <&cmu_peri CLK_GOUT_HSI2C1_PCLK>;
> -                               clock-names = "hsi2c", "hsi2c_pclk";
> -                               status = "disabled";
> -                       };
> -               };
> -
> -               usi_hsi2c_2: usi@138c00c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x138c00c0 0x20>;
> -                       samsung,sysreg = <&sysreg_peri 0x1040>;
> -                       samsung,mode = <USI_V2_I2C>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_peri CLK_GOUT_HSI2C2_PCLK>,
> -                                <&cmu_peri CLK_GOUT_HSI2C2_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -
> -                       hsi2c_2: i2c@138c0000 {
> -                               compatible = "samsung,exynosautov9-hsi2c";
> -                               reg = <0x138c0000 0xc0>;
> -                               interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
> -                               #address-cells = <1>;
> -                               #size-cells = <0>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&hsi2c2_pins>;
> -                               clocks = <&cmu_peri CLK_GOUT_HSI2C2_IPCLK>,
> -                                        <&cmu_peri CLK_GOUT_HSI2C2_PCLK>;
> -                               clock-names = "hsi2c", "hsi2c_pclk";
> -                               status = "disabled";
> -                       };
> -               };
> -
> -               usi_spi_0: usi@139400c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x139400c0 0x20>;
> -                       samsung,sysreg = <&sysreg_peri 0x1050>;
> -                       samsung,mode = <USI_V2_SPI>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_peri CLK_GOUT_SPI0_PCLK>,
> -                                <&cmu_peri CLK_GOUT_SPI0_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -               };
> -
> -               usi_cmgp0: usi@11d000c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x11d000c0 0x20>;
> -                       samsung,sysreg = <&sysreg_cmgp 0x2000>;
> -                       samsung,mode = <USI_V2_I2C>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>,
> -                                <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -
> -                       hsi2c_3: i2c@11d00000 {
> -                               compatible = "samsung,exynosautov9-hsi2c";
> -                               reg = <0x11d00000 0xc0>;
> -                               interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
> -                               #address-cells = <1>;
> -                               #size-cells = <0>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&hsi2c3_pins>;
> -                               clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>,
> -                                        <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>;
> -                               clock-names = "hsi2c", "hsi2c_pclk";
> -                               status = "disabled";
> -                       };
> -
> -                       serial_1: serial@11d00000 {
> -                               compatible = "samsung,exynos850-uart";
> -                               reg = <0x11d00000 0xc0>;
> -                               interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&uart1_single_pins>;
> -                               clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>,
> -                                        <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>;
> -                               clock-names = "uart", "clk_uart_baud0";
> -                               status = "disabled";
> -                       };
> -               };
> -
> -               usi_cmgp1: usi@11d200c0 {
> -                       compatible = "samsung,exynos850-usi";
> -                       reg = <0x11d200c0 0x20>;
> -                       samsung,sysreg = <&sysreg_cmgp 0x2010>;
> -                       samsung,mode = <USI_V2_I2C>;
> -                       #address-cells = <1>;
> -                       #size-cells = <1>;
> -                       ranges;
> -                       clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>,
> -                                <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>;
> -                       clock-names = "pclk", "ipclk";
> -                       status = "disabled";
> -
> -                       hsi2c_4: i2c@11d20000 {
> -                               compatible = "samsung,exynosautov9-hsi2c";
> -                               reg = <0x11d20000 0xc0>;
> -                               interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
> -                               #address-cells = <1>;
> -                               #size-cells = <0>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&hsi2c4_pins>;
> -                               clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>,
> -                                        <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>;
> -                               clock-names = "hsi2c", "hsi2c_pclk";
> -                               status = "disabled";
> -                       };
> -
> -                       serial_2: serial@11d20000 {
> -                               compatible = "samsung,exynos850-uart";
> -                               reg = <0x11d20000 0xc0>;
> -                               interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
> -                               pinctrl-names = "default";
> -                               pinctrl-0 = <&uart2_single_pins>;
> -                               clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>,
> -                                        <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>;
> -                               clock-names = "uart", "clk_uart_baud0";
> -                               status = "disabled";
> -                       };
> -               };
> -       };
> -};
> -
> -#include "exynos850-pinctrl.dtsi"
> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
> index af00ee1db07a..cad8bb044cf0 100644
> --- a/arch/arm/mach-exynos/Kconfig
> +++ b/arch/arm/mach-exynos/Kconfig
> @@ -249,6 +249,7 @@ config TARGET_E850_96
>         select OF_CONTROL
>         select PINCTRL
>         select PINCTRL_EXYNOS850
> +       imply OF_UPSTREAM
>
>  endchoice
>  endif
> diff --git a/configs/e850-96_defconfig b/configs/e850-96_defconfig
> index bb41635ff784..38b9968c1671 100644
> --- a/configs/e850-96_defconfig
> +++ b/configs/e850-96_defconfig
> @@ -7,7 +7,7 @@ CONFIG_SYS_MALLOC_F_LEN=0x4000
>  CONFIG_ARCH_EXYNOS9=y
>  CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
>  CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xf8c00000
> -CONFIG_DEFAULT_DEVICE_TREE="exynos850-e850-96"
> +CONFIG_DEFAULT_DEVICE_TREE="exynos/exynos850-e850-96"
>  CONFIG_SYS_LOAD_ADDR=0x80000000
>  # CONFIG_AUTOBOOT is not set
>  # CONFIG_DISPLAY_CPUINFO is not set
> diff --git a/doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml b/doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
> deleted file mode 100644
> index a0906efe1223..000000000000
> --- a/doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
> +++ /dev/null
> @@ -1,307 +0,0 @@
> -# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> -%YAML 1.2
> ----
> -$id: http://devicetree.org/schemas/clock/samsung,exynos850-clock.yaml#
> -$schema: http://devicetree.org/meta-schemas/core.yaml#
> -
> -title: Samsung Exynos850 SoC clock controller
> -
> -maintainers:
> -  - Sam Protsenko <semen.protsenko@linaro.org>
> -
> -description: |
> -  Exynos850 clock controller is comprised of several CMU units, generating
> -  clocks for different domains. Those CMU units are modeled as separate device
> -  tree nodes, and might depend on each other. Root clocks in that clock tree are
> -  two external clocks:: OSCCLK (26 MHz) and RTCCLK (32768 Hz). Those external
> -  clocks must be defined as fixed-rate clocks in dts.
> -
> -  CMU_TOP is a top-level CMU, where all base clocks are prepared using PLLs and
> -  dividers; all other leaf clocks (other CMUs) are usually derived from CMU_TOP.
> -
> -  Each clock is assigned an identifier and client nodes can use this identifier
> -  to specify the clock which they consume. All clocks available for usage
> -  in clock consumer nodes are defined as preprocessor macros in
> -  'dt-bindings/clock/exynos850.h' header.
> -
> -properties:
> -  compatible:
> -    enum:
> -      - samsung,exynos850-cmu-top
> -      - samsung,exynos850-cmu-apm
> -      - samsung,exynos850-cmu-aud
> -      - samsung,exynos850-cmu-cmgp
> -      - samsung,exynos850-cmu-core
> -      - samsung,exynos850-cmu-dpu
> -      - samsung,exynos850-cmu-g3d
> -      - samsung,exynos850-cmu-hsi
> -      - samsung,exynos850-cmu-is
> -      - samsung,exynos850-cmu-mfcmscl
> -      - samsung,exynos850-cmu-peri
> -
> -  clocks:
> -    minItems: 1
> -    maxItems: 5
> -
> -  clock-names:
> -    minItems: 1
> -    maxItems: 5
> -
> -  "#clock-cells":
> -    const: 1
> -
> -  reg:
> -    maxItems: 1
> -
> -allOf:
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-top
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-apm
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: CMU_APM bus clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_clkcmu_apm_bus
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-aud
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: AUD clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_aud
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-cmgp
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: CMU_CMGP bus clock (from CMU_APM)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: gout_clkcmu_cmgp_bus
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-core
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: CMU_CORE bus clock (from CMU_TOP)
> -            - description: CCI clock (from CMU_TOP)
> -            - description: eMMC clock (from CMU_TOP)
> -            - description: SSS clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_core_bus
> -            - const: dout_core_cci
> -            - const: dout_core_mmc_embd
> -            - const: dout_core_sss
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-dpu
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: DPU clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_dpu
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-g3d
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: G3D clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_g3d_switch
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-hsi
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: External RTC clock (32768 Hz)
> -            - description: CMU_HSI bus clock (from CMU_TOP)
> -            - description: SD card clock (from CMU_TOP)
> -            - description: USB 2.0 DRD clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: rtcclk
> -            - const: dout_hsi_bus
> -            - const: dout_hsi_mmc_card
> -            - const: dout_hsi_usb20drd
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-is
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: CMU_IS bus clock (from CMU_TOP)
> -            - description: Image Texture Processing core clock (from CMU_TOP)
> -            - description: Visual Recognition Accelerator clock (from CMU_TOP)
> -            - description: Geometric Distortion Correction clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_is_bus
> -            - const: dout_is_itp
> -            - const: dout_is_vra
> -            - const: dout_is_gdc
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-mfcmscl
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: Multi-Format Codec clock (from CMU_TOP)
> -            - description: Memory to Memory Scaler clock (from CMU_TOP)
> -            - description: Multi-Channel Scaler clock (from CMU_TOP)
> -            - description: JPEG codec clock (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_mfcmscl_mfc
> -            - const: dout_mfcmscl_m2m
> -            - const: dout_mfcmscl_mcsc
> -            - const: dout_mfcmscl_jpeg
> -
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            const: samsung,exynos850-cmu-peri
> -
> -    then:
> -      properties:
> -        clocks:
> -          items:
> -            - description: External reference clock (26 MHz)
> -            - description: CMU_PERI bus clock (from CMU_TOP)
> -            - description: UART clock (from CMU_TOP)
> -            - description: Parent clock for HSI2C and SPI (from CMU_TOP)
> -
> -        clock-names:
> -          items:
> -            - const: oscclk
> -            - const: dout_peri_bus
> -            - const: dout_peri_uart
> -            - const: dout_peri_ip
> -
> -required:
> -  - compatible
> -  - "#clock-cells"
> -  - clocks
> -  - clock-names
> -  - reg
> -
> -additionalProperties: false
> -
> -examples:
> -  # Clock controller node for CMU_PERI
> -  - |
> -    #include <dt-bindings/clock/exynos850.h>
> -
> -    cmu_peri: clock-controller@10030000 {
> -        compatible = "samsung,exynos850-cmu-peri";
> -        reg = <0x10030000 0x8000>;
> -        #clock-cells = <1>;
> -
> -        clocks = <&oscclk>, <&cmu_top CLK_DOUT_PERI_BUS>,
> -                 <&cmu_top CLK_DOUT_PERI_UART>,
> -                 <&cmu_top CLK_DOUT_PERI_IP>;
> -        clock-names = "oscclk", "dout_peri_bus",
> -                      "dout_peri_uart", "dout_peri_ip";
> -    };
> -
> -...
> diff --git a/doc/device-tree-bindings/soc/samsung/exynos-usi.yaml b/doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
> deleted file mode 100644
> index 8e6423f11568..000000000000
> --- a/doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
> +++ /dev/null
> @@ -1,162 +0,0 @@
> -# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> -%YAML 1.2
> ----
> -$id: http://devicetree.org/schemas/soc/samsung/exynos-usi.yaml#
> -$schema: http://devicetree.org/meta-schemas/core.yaml#
> -
> -title: Samsung's Exynos USI (Universal Serial Interface)
> -
> -maintainers:
> -  - Sam Protsenko <semen.protsenko@linaro.org>
> -
> -description: |
> -  USI IP-core provides selectable serial protocol (UART, SPI or High-Speed I2C).
> -  USI shares almost all internal circuits within each protocol, so only one
> -  protocol can be chosen at a time. USI is modeled as a node with zero or more
> -  child nodes, each representing a serial sub-node device. The mode setting
> -  selects which particular function will be used.
> -
> -properties:
> -  $nodename:
> -    pattern: "^usi@[0-9a-f]+$"
> -
> -  compatible:
> -    enum:
> -      - samsung,exynos850-usi
> -
> -  reg: true
> -
> -  clocks: true
> -
> -  clock-names: true
> -
> -  ranges: true
> -
> -  "#address-cells":
> -    const: 1
> -
> -  "#size-cells":
> -    const: 1
> -
> -  samsung,sysreg:
> -    $ref: /schemas/types.yaml#/definitions/phandle-array
> -    items:
> -      - items:
> -          - description: phandle to System Register syscon node
> -          - description: offset of SW_CONF register for this USI controller
> -    description:
> -      Should be phandle/offset pair. The phandle to System Register syscon node
> -      (for the same domain where this USI controller resides) and the offset
> -      of SW_CONF register for this USI controller.
> -
> -  samsung,mode:
> -    $ref: /schemas/types.yaml#/definitions/uint32
> -    description:
> -      Selects USI function (which serial protocol to use). Refer to
> -      <include/dt-bindings/soc/samsung,exynos-usi.h> for valid USI mode values.
> -
> -  samsung,clkreq-on:
> -    type: boolean
> -    description:
> -      Enable this property if underlying protocol requires the clock to be
> -      continuously provided without automatic gating. As suggested by SoC
> -      manual, it should be set in case of SPI/I2C slave, UART Rx and I2C
> -      multi-master mode. Usually this property is needed if USI mode is set
> -      to "UART".
> -
> -      This property is optional.
> -
> -patternProperties:
> -  "^i2c@[0-9a-f]+$":
> -    $ref: /schemas/i2c/i2c-exynos5.yaml
> -    description: Child node describing underlying I2C
> -
> -  "^serial@[0-9a-f]+$":
> -    $ref: /schemas/serial/samsung_uart.yaml
> -    description: Child node describing underlying UART/serial
> -
> -  "^spi@[0-9a-f]+$":
> -    $ref: /schemas/spi/samsung,spi.yaml
> -    description: Child node describing underlying SPI
> -
> -required:
> -  - compatible
> -  - ranges
> -  - "#address-cells"
> -  - "#size-cells"
> -  - samsung,sysreg
> -  - samsung,mode
> -
> -if:
> -  properties:
> -    compatible:
> -      contains:
> -        enum:
> -          - samsung,exynos850-usi
> -
> -then:
> -  properties:
> -    reg:
> -      maxItems: 1
> -
> -    clocks:
> -      items:
> -        - description: Bus (APB) clock
> -        - description: Operating clock for UART/SPI/I2C protocol
> -
> -    clock-names:
> -      items:
> -        - const: pclk
> -        - const: ipclk
> -
> -  required:
> -    - reg
> -    - clocks
> -    - clock-names
> -
> -else:
> -  properties:
> -    reg: false
> -    clocks: false
> -    clock-names: false
> -    samsung,clkreq-on: false
> -
> -additionalProperties: false
> -
> -examples:
> -  - |
> -    #include <dt-bindings/interrupt-controller/arm-gic.h>
> -    #include <dt-bindings/soc/samsung,exynos-usi.h>
> -
> -    usi0: usi@138200c0 {
> -        compatible = "samsung,exynos850-usi";
> -        reg = <0x138200c0 0x20>;
> -        samsung,sysreg = <&sysreg_peri 0x1010>;
> -        samsung,mode = <USI_V2_UART>;
> -        samsung,clkreq-on; /* needed for UART mode */
> -        #address-cells = <1>;
> -        #size-cells = <1>;
> -        ranges;
> -        clocks = <&cmu_peri 32>, <&cmu_peri 31>;
> -        clock-names = "pclk", "ipclk";
> -
> -        serial_0: serial@13820000 {
> -            compatible = "samsung,exynos850-uart";
> -            reg = <0x13820000 0xc0>;
> -            interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
> -            clocks = <&cmu_peri 32>, <&cmu_peri 31>;
> -            clock-names = "uart", "clk_uart_baud0";
> -            status = "disabled";
> -        };
> -
> -        hsi2c_0: i2c@13820000 {
> -            compatible = "samsung,exynosautov9-hsi2c";
> -            reg = <0x13820000 0xc0>;
> -            interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
> -            #address-cells = <1>;
> -            #size-cells = <0>;
> -            clocks = <&cmu_peri 31>, <&cmu_peri 32>;
> -            clock-names = "hsi2c", "hsi2c_pclk";
> -            status = "disabled";
> -        };
> -    };
> diff --git a/include/dt-bindings/clock/exynos850.h b/include/dt-bindings/clock/exynos850.h
> deleted file mode 100644
> index 3090e09c9a55..000000000000
> --- a/include/dt-bindings/clock/exynos850.h
> +++ /dev/null
> @@ -1,337 +0,0 @@
> -/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
> -/*
> - * Copyright (C) 2021 Linaro Ltd.
> - * Author: Sam Protsenko <semen.protsenko@linaro.org>
> - *
> - * Device Tree binding constants for Exynos850 clock controller.
> - */
> -
> -#ifndef _DT_BINDINGS_CLOCK_EXYNOS_850_H
> -#define _DT_BINDINGS_CLOCK_EXYNOS_850_H
> -
> -/* CMU_TOP */
> -#define CLK_FOUT_SHARED0_PLL           1
> -#define CLK_FOUT_SHARED1_PLL           2
> -#define CLK_FOUT_MMC_PLL               3
> -#define CLK_MOUT_SHARED0_PLL           4
> -#define CLK_MOUT_SHARED1_PLL           5
> -#define CLK_MOUT_MMC_PLL               6
> -#define CLK_MOUT_CORE_BUS              7
> -#define CLK_MOUT_CORE_CCI              8
> -#define CLK_MOUT_CORE_MMC_EMBD         9
> -#define CLK_MOUT_CORE_SSS              10
> -#define CLK_MOUT_DPU                   11
> -#define CLK_MOUT_HSI_BUS               12
> -#define CLK_MOUT_HSI_MMC_CARD          13
> -#define CLK_MOUT_HSI_USB20DRD          14
> -#define CLK_MOUT_PERI_BUS              15
> -#define CLK_MOUT_PERI_UART             16
> -#define CLK_MOUT_PERI_IP               17
> -#define CLK_DOUT_SHARED0_DIV3          18
> -#define CLK_DOUT_SHARED0_DIV2          19
> -#define CLK_DOUT_SHARED1_DIV3          20
> -#define CLK_DOUT_SHARED1_DIV2          21
> -#define CLK_DOUT_SHARED0_DIV4          22
> -#define CLK_DOUT_SHARED1_DIV4          23
> -#define CLK_DOUT_CORE_BUS              24
> -#define CLK_DOUT_CORE_CCI              25
> -#define CLK_DOUT_CORE_MMC_EMBD         26
> -#define CLK_DOUT_CORE_SSS              27
> -#define CLK_DOUT_DPU                   28
> -#define CLK_DOUT_HSI_BUS               29
> -#define CLK_DOUT_HSI_MMC_CARD          30
> -#define CLK_DOUT_HSI_USB20DRD          31
> -#define CLK_DOUT_PERI_BUS              32
> -#define CLK_DOUT_PERI_UART             33
> -#define CLK_DOUT_PERI_IP               34
> -#define CLK_GOUT_CORE_BUS              35
> -#define CLK_GOUT_CORE_CCI              36
> -#define CLK_GOUT_CORE_MMC_EMBD         37
> -#define CLK_GOUT_CORE_SSS              38
> -#define CLK_GOUT_DPU                   39
> -#define CLK_GOUT_HSI_BUS               40
> -#define CLK_GOUT_HSI_MMC_CARD          41
> -#define CLK_GOUT_HSI_USB20DRD          42
> -#define CLK_GOUT_PERI_BUS              43
> -#define CLK_GOUT_PERI_UART             44
> -#define CLK_GOUT_PERI_IP               45
> -#define CLK_MOUT_CLKCMU_APM_BUS                46
> -#define CLK_DOUT_CLKCMU_APM_BUS                47
> -#define CLK_GOUT_CLKCMU_APM_BUS                48
> -#define CLK_MOUT_AUD                   49
> -#define CLK_GOUT_AUD                   50
> -#define CLK_DOUT_AUD                   51
> -#define CLK_MOUT_IS_BUS                        52
> -#define CLK_MOUT_IS_ITP                        53
> -#define CLK_MOUT_IS_VRA                        54
> -#define CLK_MOUT_IS_GDC                        55
> -#define CLK_GOUT_IS_BUS                        56
> -#define CLK_GOUT_IS_ITP                        57
> -#define CLK_GOUT_IS_VRA                        58
> -#define CLK_GOUT_IS_GDC                        59
> -#define CLK_DOUT_IS_BUS                        60
> -#define CLK_DOUT_IS_ITP                        61
> -#define CLK_DOUT_IS_VRA                        62
> -#define CLK_DOUT_IS_GDC                        63
> -#define CLK_MOUT_MFCMSCL_MFC           64
> -#define CLK_MOUT_MFCMSCL_M2M           65
> -#define CLK_MOUT_MFCMSCL_MCSC          66
> -#define CLK_MOUT_MFCMSCL_JPEG          67
> -#define CLK_GOUT_MFCMSCL_MFC           68
> -#define CLK_GOUT_MFCMSCL_M2M           69
> -#define CLK_GOUT_MFCMSCL_MCSC          70
> -#define CLK_GOUT_MFCMSCL_JPEG          71
> -#define CLK_DOUT_MFCMSCL_MFC           72
> -#define CLK_DOUT_MFCMSCL_M2M           73
> -#define CLK_DOUT_MFCMSCL_MCSC          74
> -#define CLK_DOUT_MFCMSCL_JPEG          75
> -#define CLK_MOUT_G3D_SWITCH            76
> -#define CLK_GOUT_G3D_SWITCH            77
> -#define CLK_DOUT_G3D_SWITCH            78
> -
> -/* CMU_APM */
> -#define CLK_RCO_I3C_PMIC               1
> -#define OSCCLK_RCO_APM                 2
> -#define CLK_RCO_APM__ALV               3
> -#define CLK_DLL_DCO                    4
> -#define CLK_MOUT_APM_BUS_USER          5
> -#define CLK_MOUT_RCO_APM_I3C_USER      6
> -#define CLK_MOUT_RCO_APM_USER          7
> -#define CLK_MOUT_DLL_USER              8
> -#define CLK_MOUT_CLKCMU_CHUB_BUS       9
> -#define CLK_MOUT_APM_BUS               10
> -#define CLK_MOUT_APM_I3C               11
> -#define CLK_DOUT_CLKCMU_CHUB_BUS       12
> -#define CLK_DOUT_APM_BUS               13
> -#define CLK_DOUT_APM_I3C               14
> -#define CLK_GOUT_CLKCMU_CMGP_BUS       15
> -#define CLK_GOUT_CLKCMU_CHUB_BUS       16
> -#define CLK_GOUT_RTC_PCLK              17
> -#define CLK_GOUT_TOP_RTC_PCLK          18
> -#define CLK_GOUT_I3C_PCLK              19
> -#define CLK_GOUT_I3C_SCLK              20
> -#define CLK_GOUT_SPEEDY_PCLK           21
> -#define CLK_GOUT_GPIO_ALIVE_PCLK       22
> -#define CLK_GOUT_PMU_ALIVE_PCLK                23
> -#define CLK_GOUT_SYSREG_APM_PCLK       24
> -
> -/* CMU_AUD */
> -#define CLK_DOUT_AUD_AUDIF             1
> -#define CLK_DOUT_AUD_BUSD              2
> -#define CLK_DOUT_AUD_BUSP              3
> -#define CLK_DOUT_AUD_CNT               4
> -#define CLK_DOUT_AUD_CPU               5
> -#define CLK_DOUT_AUD_CPU_ACLK          6
> -#define CLK_DOUT_AUD_CPU_PCLKDBG       7
> -#define CLK_DOUT_AUD_FM                        8
> -#define CLK_DOUT_AUD_FM_SPDY           9
> -#define CLK_DOUT_AUD_MCLK              10
> -#define CLK_DOUT_AUD_UAIF0             11
> -#define CLK_DOUT_AUD_UAIF1             12
> -#define CLK_DOUT_AUD_UAIF2             13
> -#define CLK_DOUT_AUD_UAIF3             14
> -#define CLK_DOUT_AUD_UAIF4             15
> -#define CLK_DOUT_AUD_UAIF5             16
> -#define CLK_DOUT_AUD_UAIF6             17
> -#define CLK_FOUT_AUD_PLL               18
> -#define CLK_GOUT_AUD_ABOX_ACLK         19
> -#define CLK_GOUT_AUD_ASB_CCLK          20
> -#define CLK_GOUT_AUD_CA32_CCLK         21
> -#define CLK_GOUT_AUD_CNT_BCLK          22
> -#define CLK_GOUT_AUD_CODEC_MCLK                23
> -#define CLK_GOUT_AUD_DAP_CCLK          24
> -#define CLK_GOUT_AUD_GPIO_PCLK         25
> -#define CLK_GOUT_AUD_PPMU_ACLK         26
> -#define CLK_GOUT_AUD_PPMU_PCLK         27
> -#define CLK_GOUT_AUD_SPDY_BCLK         28
> -#define CLK_GOUT_AUD_SYSMMU_CLK                29
> -#define CLK_GOUT_AUD_SYSREG_PCLK       30
> -#define CLK_GOUT_AUD_TZPC_PCLK         31
> -#define CLK_GOUT_AUD_UAIF0_BCLK                32
> -#define CLK_GOUT_AUD_UAIF1_BCLK                33
> -#define CLK_GOUT_AUD_UAIF2_BCLK                34
> -#define CLK_GOUT_AUD_UAIF3_BCLK                35
> -#define CLK_GOUT_AUD_UAIF4_BCLK                36
> -#define CLK_GOUT_AUD_UAIF5_BCLK                37
> -#define CLK_GOUT_AUD_UAIF6_BCLK                38
> -#define CLK_GOUT_AUD_WDT_PCLK          39
> -#define CLK_MOUT_AUD_CPU               40
> -#define CLK_MOUT_AUD_CPU_HCH           41
> -#define CLK_MOUT_AUD_CPU_USER          42
> -#define CLK_MOUT_AUD_FM                        43
> -#define CLK_MOUT_AUD_PLL               44
> -#define CLK_MOUT_AUD_TICK_USB_USER     45
> -#define CLK_MOUT_AUD_UAIF0             46
> -#define CLK_MOUT_AUD_UAIF1             47
> -#define CLK_MOUT_AUD_UAIF2             48
> -#define CLK_MOUT_AUD_UAIF3             49
> -#define CLK_MOUT_AUD_UAIF4             50
> -#define CLK_MOUT_AUD_UAIF5             51
> -#define CLK_MOUT_AUD_UAIF6             52
> -#define IOCLK_AUDIOCDCLK0              53
> -#define IOCLK_AUDIOCDCLK1              54
> -#define IOCLK_AUDIOCDCLK2              55
> -#define IOCLK_AUDIOCDCLK3              56
> -#define IOCLK_AUDIOCDCLK4              57
> -#define IOCLK_AUDIOCDCLK5              58
> -#define IOCLK_AUDIOCDCLK6              59
> -#define TICK_USB                       60
> -#define CLK_GOUT_AUD_CMU_AUD_PCLK      61
> -
> -/* CMU_CMGP */
> -#define CLK_RCO_CMGP                   1
> -#define CLK_MOUT_CMGP_ADC              2
> -#define CLK_MOUT_CMGP_USI0             3
> -#define CLK_MOUT_CMGP_USI1             4
> -#define CLK_DOUT_CMGP_ADC              5
> -#define CLK_DOUT_CMGP_USI0             6
> -#define CLK_DOUT_CMGP_USI1             7
> -#define CLK_GOUT_CMGP_ADC_S0_PCLK      8
> -#define CLK_GOUT_CMGP_ADC_S1_PCLK      9
> -#define CLK_GOUT_CMGP_GPIO_PCLK                10
> -#define CLK_GOUT_CMGP_USI0_IPCLK       11
> -#define CLK_GOUT_CMGP_USI0_PCLK                12
> -#define CLK_GOUT_CMGP_USI1_IPCLK       13
> -#define CLK_GOUT_CMGP_USI1_PCLK                14
> -#define CLK_GOUT_SYSREG_CMGP_PCLK      15
> -
> -/* CMU_G3D */
> -#define CLK_FOUT_G3D_PLL               1
> -#define CLK_MOUT_G3D_PLL               2
> -#define CLK_MOUT_G3D_SWITCH_USER       3
> -#define CLK_MOUT_G3D_BUSD              4
> -#define CLK_DOUT_G3D_BUSP              5
> -#define CLK_GOUT_G3D_CMU_G3D_PCLK      6
> -#define CLK_GOUT_G3D_GPU_CLK           7
> -#define CLK_GOUT_G3D_TZPC_PCLK         8
> -#define CLK_GOUT_G3D_GRAY2BIN_CLK      9
> -#define CLK_GOUT_G3D_BUSD_CLK          10
> -#define CLK_GOUT_G3D_BUSP_CLK          11
> -#define CLK_GOUT_G3D_SYSREG_PCLK       12
> -
> -/* CMU_HSI */
> -#define CLK_MOUT_HSI_BUS_USER          1
> -#define CLK_MOUT_HSI_MMC_CARD_USER     2
> -#define CLK_MOUT_HSI_USB20DRD_USER     3
> -#define CLK_MOUT_HSI_RTC               4
> -#define CLK_GOUT_USB_RTC_CLK           5
> -#define CLK_GOUT_USB_REF_CLK           6
> -#define CLK_GOUT_USB_PHY_REF_CLK       7
> -#define CLK_GOUT_USB_PHY_ACLK          8
> -#define CLK_GOUT_USB_BUS_EARLY_CLK     9
> -#define CLK_GOUT_GPIO_HSI_PCLK         10
> -#define CLK_GOUT_MMC_CARD_ACLK         11
> -#define CLK_GOUT_MMC_CARD_SDCLKIN      12
> -#define CLK_GOUT_SYSREG_HSI_PCLK       13
> -#define CLK_GOUT_HSI_PPMU_ACLK         14
> -#define CLK_GOUT_HSI_PPMU_PCLK         15
> -#define CLK_GOUT_HSI_CMU_HSI_PCLK      16
> -
> -/* CMU_IS */
> -#define CLK_MOUT_IS_BUS_USER           1
> -#define CLK_MOUT_IS_ITP_USER           2
> -#define CLK_MOUT_IS_VRA_USER           3
> -#define CLK_MOUT_IS_GDC_USER           4
> -#define CLK_DOUT_IS_BUSP               5
> -#define CLK_GOUT_IS_CMU_IS_PCLK                6
> -#define CLK_GOUT_IS_CSIS0_ACLK         7
> -#define CLK_GOUT_IS_CSIS1_ACLK         8
> -#define CLK_GOUT_IS_CSIS2_ACLK         9
> -#define CLK_GOUT_IS_TZPC_PCLK          10
> -#define CLK_GOUT_IS_CSIS_DMA_CLK       11
> -#define CLK_GOUT_IS_GDC_CLK            12
> -#define CLK_GOUT_IS_IPP_CLK            13
> -#define CLK_GOUT_IS_ITP_CLK            14
> -#define CLK_GOUT_IS_MCSC_CLK           15
> -#define CLK_GOUT_IS_VRA_CLK            16
> -#define CLK_GOUT_IS_PPMU_IS0_ACLK      17
> -#define CLK_GOUT_IS_PPMU_IS0_PCLK      18
> -#define CLK_GOUT_IS_PPMU_IS1_ACLK      19
> -#define CLK_GOUT_IS_PPMU_IS1_PCLK      20
> -#define CLK_GOUT_IS_SYSMMU_IS0_CLK     21
> -#define CLK_GOUT_IS_SYSMMU_IS1_CLK     22
> -#define CLK_GOUT_IS_SYSREG_PCLK                23
> -
> -/* CMU_MFCMSCL */
> -#define CLK_MOUT_MFCMSCL_MFC_USER              1
> -#define CLK_MOUT_MFCMSCL_M2M_USER              2
> -#define CLK_MOUT_MFCMSCL_MCSC_USER             3
> -#define CLK_MOUT_MFCMSCL_JPEG_USER             4
> -#define CLK_DOUT_MFCMSCL_BUSP                  5
> -#define CLK_GOUT_MFCMSCL_CMU_MFCMSCL_PCLK      6
> -#define CLK_GOUT_MFCMSCL_TZPC_PCLK             7
> -#define CLK_GOUT_MFCMSCL_JPEG_ACLK             8
> -#define CLK_GOUT_MFCMSCL_M2M_ACLK              9
> -#define CLK_GOUT_MFCMSCL_MCSC_CLK              10
> -#define CLK_GOUT_MFCMSCL_MFC_ACLK              11
> -#define CLK_GOUT_MFCMSCL_PPMU_ACLK             12
> -#define CLK_GOUT_MFCMSCL_PPMU_PCLK             13
> -#define CLK_GOUT_MFCMSCL_SYSMMU_CLK            14
> -#define CLK_GOUT_MFCMSCL_SYSREG_PCLK           15
> -
> -/* CMU_PERI */
> -#define CLK_MOUT_PERI_BUS_USER         1
> -#define CLK_MOUT_PERI_UART_USER                2
> -#define CLK_MOUT_PERI_HSI2C_USER       3
> -#define CLK_MOUT_PERI_SPI_USER         4
> -#define CLK_DOUT_PERI_HSI2C0           5
> -#define CLK_DOUT_PERI_HSI2C1           6
> -#define CLK_DOUT_PERI_HSI2C2           7
> -#define CLK_DOUT_PERI_SPI0             8
> -#define CLK_GOUT_PERI_HSI2C0           9
> -#define CLK_GOUT_PERI_HSI2C1           10
> -#define CLK_GOUT_PERI_HSI2C2           11
> -#define CLK_GOUT_GPIO_PERI_PCLK                12
> -#define CLK_GOUT_HSI2C0_IPCLK          13
> -#define CLK_GOUT_HSI2C0_PCLK           14
> -#define CLK_GOUT_HSI2C1_IPCLK          15
> -#define CLK_GOUT_HSI2C1_PCLK           16
> -#define CLK_GOUT_HSI2C2_IPCLK          17
> -#define CLK_GOUT_HSI2C2_PCLK           18
> -#define CLK_GOUT_I2C0_PCLK             19
> -#define CLK_GOUT_I2C1_PCLK             20
> -#define CLK_GOUT_I2C2_PCLK             21
> -#define CLK_GOUT_I2C3_PCLK             22
> -#define CLK_GOUT_I2C4_PCLK             23
> -#define CLK_GOUT_I2C5_PCLK             24
> -#define CLK_GOUT_I2C6_PCLK             25
> -#define CLK_GOUT_MCT_PCLK              26
> -#define CLK_GOUT_PWM_MOTOR_PCLK                27
> -#define CLK_GOUT_SPI0_IPCLK            28
> -#define CLK_GOUT_SPI0_PCLK             29
> -#define CLK_GOUT_SYSREG_PERI_PCLK      30
> -#define CLK_GOUT_UART_IPCLK            31
> -#define CLK_GOUT_UART_PCLK             32
> -#define CLK_GOUT_WDT0_PCLK             33
> -#define CLK_GOUT_WDT1_PCLK             34
> -
> -/* CMU_CORE */
> -#define CLK_MOUT_CORE_BUS_USER         1
> -#define CLK_MOUT_CORE_CCI_USER         2
> -#define CLK_MOUT_CORE_MMC_EMBD_USER    3
> -#define CLK_MOUT_CORE_SSS_USER         4
> -#define CLK_MOUT_CORE_GIC              5
> -#define CLK_DOUT_CORE_BUSP             6
> -#define CLK_GOUT_CCI_ACLK              7
> -#define CLK_GOUT_GIC_CLK               8
> -#define CLK_GOUT_MMC_EMBD_ACLK         9
> -#define CLK_GOUT_MMC_EMBD_SDCLKIN      10
> -#define CLK_GOUT_SSS_ACLK              11
> -#define CLK_GOUT_SSS_PCLK              12
> -#define CLK_GOUT_GPIO_CORE_PCLK                13
> -#define CLK_GOUT_SYSREG_CORE_PCLK      14
> -
> -/* CMU_DPU */
> -#define CLK_MOUT_DPU_USER              1
> -#define CLK_DOUT_DPU_BUSP              2
> -#define CLK_GOUT_DPU_CMU_DPU_PCLK      3
> -#define CLK_GOUT_DPU_DECON0_ACLK       4
> -#define CLK_GOUT_DPU_DMA_ACLK          5
> -#define CLK_GOUT_DPU_DPP_ACLK          6
> -#define CLK_GOUT_DPU_PPMU_ACLK         7
> -#define CLK_GOUT_DPU_PPMU_PCLK         8
> -#define CLK_GOUT_DPU_SMMU_CLK          9
> -#define CLK_GOUT_DPU_SYSREG_PCLK       10
> -#define DPU_NR_CLK                     11
> -
> -#endif /* _DT_BINDINGS_CLOCK_EXYNOS_850_H */
> diff --git a/include/dt-bindings/soc/samsung,exynos-usi.h b/include/dt-bindings/soc/samsung,exynos-usi.h
> deleted file mode 100644
> index a01af169d249..000000000000
> --- a/include/dt-bindings/soc/samsung,exynos-usi.h
> +++ /dev/null
> @@ -1,17 +0,0 @@
> -/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
> -/*
> - * Copyright (c) 2021 Linaro Ltd.
> - * Author: Sam Protsenko <semen.protsenko@linaro.org>
> - *
> - * Device Tree bindings for Samsung Exynos USI (Universal Serial Interface).
> - */
> -
> -#ifndef __DT_BINDINGS_SAMSUNG_EXYNOS_USI_H
> -#define __DT_BINDINGS_SAMSUNG_EXYNOS_USI_H
> -
> -#define USI_V2_NONE            0
> -#define USI_V2_UART            1
> -#define USI_V2_SPI             2
> -#define USI_V2_I2C             3
> -
> -#endif /* __DT_BINDINGS_SAMSUNG_EXYNOS_USI_H */

> --
> 2.39.2
>
Sam Protsenko May 25, 2024, 9:16 p.m. UTC | #2
On Thu, May 23, 2024 at 11:57 PM Sumit Garg <sumit.garg@linaro.org> wrote:
>
> + Krzysztof, Fyi..
>
> On Fri, 24 May 2024 at 03:33, Sam Protsenko <semen.protsenko@linaro.org> wrote:
> >
> > Use upstream device tree files and bindings. To do so:
> >  - imply (enable) OF_UPSTREAM option for E850-96 target
> >  - point DEFAULT_DEVICE_TREE in E850-96 config to upstream dts
> >  - remove now not needed local dts files, binding docs and headers
> >  - update MAINTAINERS correspondingly
> >
> > Upstream device tree files for Exynos850 SoC and E850-96 board are
> > pretty much the same as local (removed) ones, so the conversion is
> > rather straightforward and painless in this case. The appended dts file
> > (arch/arm/dts/exynos850-e850-96-u-boot.dtsi) stays unchanged.
> >
> > The only remaining local dt-bindings doc for E850-96 board is
> > exynos-pmu.yaml. It wasn't removed as it's quite different from Linux
> > kernel version. Particularly U-Boot local version of exynos-pmu.yaml
> > describes "samsung,uart-debug-1" property, which is not present in Linux
> > kernel binding. Later it might be upstreamed to Linux kernel, and once
> > it's done the U-Boot exynos-pmu.yaml binding can be removed.
> >
> > No functional change.
> >
> > Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
> > ---
> >  MAINTAINERS                                   |   7 +-
> >  arch/arm/dts/Makefile                         |   1 -
> >  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                  |   1 +
> >  configs/e850-96_defconfig                     |   2 +-
> >  .../clock/samsung,exynos850-clock.yaml        | 307 -------
> >  .../soc/samsung/exynos-usi.yaml               | 162 ----
> >  include/dt-bindings/clock/exynos850.h         | 337 --------
> >  include/dt-bindings/soc/samsung,exynos-usi.h  |  17 -
> >  11 files changed, 3 insertions(+), 2576 deletions(-)
> >  delete mode 100644 arch/arm/dts/exynos850-e850-96.dts
> >  delete mode 100644 arch/arm/dts/exynos850-pinctrl.dtsi
> >  delete mode 100644 arch/arm/dts/exynos850.dtsi
> >  delete mode 100644 doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
> >  delete mode 100644 doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
> >  delete mode 100644 include/dt-bindings/clock/exynos850.h
> >  delete mode 100644 include/dt-bindings/soc/samsung,exynos-usi.h
> >
>
> Acked-by: Sumit Garg <sumit.garg@linaro.org>
>

Thanks, Sumit! I forgot to update board/samsung/e850-96/MAINTAINERS,
so I'll be sending v2 shortly.

[snip]
diff mbox series

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index 638b2fdd442f..f8afd7d51e2e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -578,19 +578,14 @@  F:	drivers/clk/exynos/clk.h
 ARM SAMSUNG EXYNOS850 SOC
 M:	Sam Protsenko <semen.protsenko@linaro.org>
 S:	Maintained
-F:	arch/arm/dts/exynos850-pinctrl.dtsi
-F:	arch/arm/dts/exynos850.dtsi
-F:	doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
 F:	drivers/clk/exynos/clk-exynos850.c
 F:	drivers/pinctrl/exynos/pinctrl-exynos850.c
-F:	include/dt-bindings/clock/exynos850.h
 
 ARM SAMSUNG SOC DRIVERS
 M:	Sam Protsenko <semen.protsenko@linaro.org>
 S:	Maintained
-F:	doc/device-tree-bindings/soc/samsung/*
+F:	doc/device-tree-bindings/soc/samsung/exynos-pmu.yaml
 F:	drivers/soc/samsung/*
-F:	include/dt-bindings/soc/samsung,*.h
 
 ARM SANCLOUD
 M:	Paul Barker <paul.barker@sancloud.com>
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index a5c82ebf7a5f..4b72d9f64863 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -31,7 +31,6 @@  dtb-$(CONFIG_EXYNOS7420) += exynos7420-espresso7420.dtb
 dtb-$(CONFIG_TARGET_A5Y17LTE) += exynos78x0-axy17lte.dtb
 dtb-$(CONFIG_TARGET_A3Y17LTE) += exynos78x0-axy17lte.dtb
 dtb-$(CONFIG_TARGET_A7Y17LTE) += exynos78x0-axy17lte.dtb
-dtb-$(CONFIG_TARGET_E850_96) += exynos850-e850-96.dtb
 
 dtb-$(CONFIG_ARCH_APPLE) += \
 	t8103-j274.dtb \
diff --git a/arch/arm/dts/exynos850-e850-96.dts b/arch/arm/dts/exynos850-e850-96.dts
deleted file mode 100644
index f074df8982b3..000000000000
--- a/arch/arm/dts/exynos850-e850-96.dts
+++ /dev/null
@@ -1,273 +0,0 @@ 
-// SPDX-License-Identifier: GPL-2.0
-/*
- * WinLink E850-96 board device tree source
- *
- * Copyright (C) 2018 Samsung Electronics Co., Ltd.
- * Copyright (C) 2021 Linaro Ltd.
- *
- * Device tree source file for WinLink's E850-96 board which is based on
- * Samsung Exynos850 SoC.
- */
-
-/dts-v1/;
-
-#include "exynos850.dtsi"
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/leds/common.h>
-
-/ {
-	model = "WinLink E850-96 board";
-	compatible = "winlink,e850-96", "samsung,exynos850";
-
-	aliases {
-		mmc0 = &mmc_0;
-		serial0 = &serial_0;
-	};
-
-	chosen {
-		stdout-path = &serial_0;
-	};
-
-	connector {
-		compatible = "gpio-usb-b-connector", "usb-b-connector";
-		label = "micro-USB";
-		type = "micro";
-		vbus-supply = <&reg_usb_host_vbus>;
-		id-gpios = <&gpa0 0 GPIO_ACTIVE_LOW>;
-		pinctrl-names = "default";
-		pinctrl-0 = <&micro_usb_det_pins>;
-
-		port {
-			usb_dr_connector: endpoint {
-				remote-endpoint = <&usb1_drd_sw>;
-			};
-		};
-	};
-
-	/*
-	 * RAM: 4 GiB (eMCP):
-	 *   - 2 GiB at 0x80000000
-	 *   - 2 GiB at 0x880000000
-	 *
-	 * 0xbab00000..0xbfffffff: secure memory (85 MiB).
-	 */
-	memory@80000000 {
-		device_type = "memory";
-		reg = <0x0 0x80000000 0x3ab00000>,
-		      <0x0 0xc0000000 0x40000000>,
-		      <0x8 0x80000000 0x80000000>;
-	};
-
-	gpio-keys {
-		compatible = "gpio-keys";
-		pinctrl-names = "default";
-		pinctrl-0 = <&key_voldown_pins &key_volup_pins>;
-
-		volume-down-key {
-			label = "Volume Down";
-			linux,code = <KEY_VOLUMEDOWN>;
-			gpios = <&gpa1 0 GPIO_ACTIVE_LOW>;
-		};
-
-		volume-up-key {
-			label = "Volume Up";
-			linux,code = <KEY_VOLUMEUP>;
-			gpios = <&gpa0 7 GPIO_ACTIVE_LOW>;
-		};
-	};
-
-	leds {
-		compatible = "gpio-leds";
-
-		/* HEART_BEAT_LED */
-		user_led1: led-1 {
-			label = "yellow:user1";
-			gpios = <&gpg2 2 GPIO_ACTIVE_HIGH>;
-			color = <LED_COLOR_ID_YELLOW>;
-			function = LED_FUNCTION_HEARTBEAT;
-			linux,default-trigger = "heartbeat";
-		};
-
-		/* eMMC_LED */
-		user_led2: led-2 {
-			label = "yellow:user2";
-			gpios = <&gpg2 3 GPIO_ACTIVE_HIGH>;
-			color = <LED_COLOR_ID_YELLOW>;
-			linux,default-trigger = "mmc0";
-		};
-
-		/* SD_LED */
-		user_led3: led-3 {
-			label = "white:user3";
-			gpios = <&gpg2 4 GPIO_ACTIVE_HIGH>;
-			color = <LED_COLOR_ID_WHITE>;
-			function = LED_FUNCTION_SD;
-			linux,default-trigger = "mmc2";
-		};
-
-		/* WIFI_LED */
-		wlan_active_led: led-4 {
-			label = "yellow:wlan";
-			gpios = <&gpg2 6 GPIO_ACTIVE_HIGH>;
-			color = <LED_COLOR_ID_YELLOW>;
-			function = LED_FUNCTION_WLAN;
-			linux,default-trigger = "phy0tx";
-			default-state = "off";
-		};
-
-		/* BLUETOOTH_LED */
-		bt_active_led: led-5 {
-			label = "blue:bt";
-			gpios = <&gpg2 7 GPIO_ACTIVE_HIGH>;
-			color = <LED_COLOR_ID_BLUE>;
-			function = LED_FUNCTION_BLUETOOTH;
-			linux,default-trigger = "hci0-power";
-			default-state = "off";
-		};
-	};
-
-	/* TODO: Remove this once PMIC is implemented  */
-	reg_dummy: regulator-0 {
-		compatible = "regulator-fixed";
-		regulator-name = "dummy_reg";
-	};
-
-	reg_usb_host_vbus: regulator-1 {
-		compatible = "regulator-fixed";
-		regulator-name = "usb_host_vbus";
-		regulator-min-microvolt = <5000000>;
-		regulator-max-microvolt = <5000000>;
-		gpio = <&gpa3 5 GPIO_ACTIVE_LOW>;
-	};
-
-	reserved-memory {
-		#address-cells = <2>;
-		#size-cells = <1>;
-		ranges;
-
-		ramoops@f0000000 {
-			compatible = "ramoops";
-			reg = <0x0 0xf0000000 0x200000>;
-			record-size = <0x20000>;
-			console-size = <0x20000>;
-			ftrace-size = <0x100000>;
-			pmsg-size = <0x20000>;
-		};
-	};
-
-	/*
-	 * RTC clock (XrtcXTI); external, must be 32.768 kHz.
-	 *
-	 * TODO: Remove this once RTC clock is implemented properly as part of
-	 *       PMIC driver.
-	 */
-	rtcclk: clock-rtcclk {
-		compatible = "fixed-clock";
-		clock-output-names = "rtcclk";
-		#clock-cells = <0>;
-		clock-frequency = <32768>;
-	};
-};
-
-&cmu_hsi {
-	clocks = <&oscclk>, <&rtcclk>,
-		 <&cmu_top CLK_DOUT_HSI_BUS>,
-		 <&cmu_top CLK_DOUT_HSI_MMC_CARD>,
-		 <&cmu_top CLK_DOUT_HSI_USB20DRD>;
-	clock-names = "oscclk", "rtcclk", "dout_hsi_bus",
-		      "dout_hsi_mmc_card", "dout_hsi_usb20drd";
-};
-
-&mmc_0 {
-	status = "okay";
-	mmc-hs200-1_8v;
-	mmc-hs400-1_8v;
-	cap-mmc-highspeed;
-	non-removable;
-	mmc-hs400-enhanced-strobe;
-	card-detect-delay = <200>;
-	clock-frequency = <800000000>;
-	bus-width = <8>;
-	samsung,dw-mshc-ciu-div = <3>;
-	samsung,dw-mshc-sdr-timing = <0 4>;
-	samsung,dw-mshc-ddr-timing = <2 4>;
-	samsung,dw-mshc-hs400-timing = <0 2>;
-
-	pinctrl-names = "default";
-	pinctrl-0 = <&sd0_clk_pins &sd0_cmd_pins &sd0_rdqs_pins &sd0_nreset_pins
-		     &sd0_bus1_pins &sd0_bus4_pins &sd0_bus8_pins>;
-};
-
-&oscclk {
-	clock-frequency = <26000000>;
-};
-
-&pinctrl_alive {
-	key_voldown_pins: key-voldown-pins {
-		samsung,pins = "gpa1-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	key_volup_pins: key-volup-pins {
-		samsung,pins = "gpa0-7";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	micro_usb_det_pins: micro-usb-det-pins {
-		samsung,pins = "gpa0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-};
-
-&rtc {
-	status = "okay";
-	clocks = <&cmu_apm CLK_GOUT_RTC_PCLK>, <&rtcclk>;
-	clock-names = "rtc", "rtc_src";
-};
-
-&serial_0 {
-	status = "okay";
-	pinctrl-names = "default";
-	pinctrl-0 = <&uart1_pins>;
-};
-
-&usbdrd {
-	status = "okay";
-	vdd10-supply = <&reg_dummy>;
-	vdd33-supply = <&reg_dummy>;
-};
-
-&usbdrd_dwc3 {
-	dr_mode = "otg";
-	usb-role-switch;
-	role-switch-default-mode = "host";
-
-	port {
-		usb1_drd_sw: endpoint {
-			remote-endpoint = <&usb_dr_connector>;
-		};
-	};
-};
-
-&usbdrd_phy {
-	status = "okay";
-};
-
-&usi_uart {
-	samsung,clkreq-on; /* needed for UART mode */
-	status = "okay";
-};
-
-&watchdog_cl0 {
-	status = "okay";
-};
-
-&watchdog_cl1 {
-	status = "okay";
-};
diff --git a/arch/arm/dts/exynos850-pinctrl.dtsi b/arch/arm/dts/exynos850-pinctrl.dtsi
deleted file mode 100644
index 424bc80bde68..000000000000
--- a/arch/arm/dts/exynos850-pinctrl.dtsi
+++ /dev/null
@@ -1,663 +0,0 @@ 
-// SPDX-License-Identifier: GPL-2.0
-/*
- * Samsung's Exynos850 SoC pin-mux and pin-config device tree source
- *
- * Copyright (C) 2017 Samsung Electronics Co., Ltd.
- * Copyright (C) 2021 Linaro Ltd.
- *
- * Samsung's Exynos850 SoC pin-mux and pin-config options are listed as device
- * tree nodes in this file.
- */
-
-#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include "exynos-pinctrl.h"
-
-&pinctrl_alive {
-	gpa0: gpa0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpa1: gpa1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpa2: gpa2-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpa3: gpa3-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpa4: gpa4-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpq0: gpq0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	/* I2C5 (also called CAM_PMIC_I2C in TRM) */
-	i2c5_pins: i2c5-pins {
-		samsung,pins = "gpa3-5", "gpa3-6";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* I2C6 (also called MOTOR_I2C in TRM) */
-	i2c6_pins: i2c6-pins {
-		samsung,pins = "gpa3-7", "gpa4-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI: UART_DEBUG_0 pins */
-	uart0_pins: uart0-pins {
-		samsung,pins = "gpq0-0", "gpq0-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-
-	/* USI: UART_DEBUG_1 pins */
-	uart1_pins: uart1-pins {
-		samsung,pins = "gpa3-7", "gpa4-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-};
-
-&pinctrl_cmgp {
-	gpm0: gpm0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm1: gpm1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm2: gpm2-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm3: gpm3-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm4: gpm4-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm5: gpm5-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm6: gpm6-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	gpm7: gpm7-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupt-parent = <&gic>;
-		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
-	};
-
-	/* USI_CMGP0: HSI2C function */
-	hsi2c3_pins: hsi2c3-pins {
-		samsung,pins = "gpm0-0", "gpm1-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI_CMGP0: UART function (4 pins, Auto Flow Control) */
-	uart1_single_pins: uart1-single-pins {
-		samsung,pins = "gpm0-0", "gpm1-0", "gpm2-0", "gpm3-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-
-	/* USI_CMGP0: UART function (2 pins, Non-Auto Flow Control) */
-	uart1_dual_pins: uart1-dual-pins {
-		samsung,pins = "gpm0-0", "gpm1-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-
-	/* USI_CMGP0: SPI function */
-	spi1_pins: spi1-pins {
-		samsung,pins = "gpm0-0", "gpm1-0", "gpm2-0", "gpm3-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI_CMGP1: HSI2C function */
-	hsi2c4_pins: hsi2c4-pins {
-		samsung,pins = "gpm4-0", "gpm5-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI_CMGP1: UART function (4 pins, Auto Flow Control) */
-	uart2_single_pins: uart2-single-pins {
-		samsung,pins = "gpm4-0", "gpm5-0", "gpm6-0", "gpm7-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-
-	/* USI_CMGP1: UART function (2 pins, Non-Auto Flow Control) */
-	uart2_dual_pins: uart2-dual-pins {
-		samsung,pins = "gpm4-0", "gpm5-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-
-	/* USI_CMGP1: SPI function */
-	spi2_pins: spi2-pins {
-		samsung,pins = "gpm4-0", "gpm5-0", "gpm6-0", "gpm7-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-};
-
-&pinctrl_aud {
-	gpb0: gpb0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpb1: gpb1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	aud_codec_mclk_pins: aud-codec-mclk-pins {
-		samsung,pins = "gpb0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_codec_mclk_idle_pins: aud-codec-mclk-idle-pins {
-		samsung,pins = "gpb0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_i2s0_pins: aud-i2s0-pins {
-		samsung,pins = "gpb0-1", "gpb0-2", "gpb0-3", "gpb0-4";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_i2s0_idle_pins: aud-i2s0-idle-pins {
-		samsung,pins = "gpb0-1", "gpb0-2", "gpb0-3", "gpb0-4";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_i2s1_pins: aud-i2s1-pins {
-		samsung,pins = "gpb1-0", "gpb1-1", "gpb1-2", "gpb1-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_i2s1_idle_pins: aud-i2s1-idle-pins {
-		samsung,pins = "gpb1-0", "gpb1-1", "gpb1-2", "gpb1-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_fm_pins: aud-fm-pins {
-		samsung,pins = "gpb1-4";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-
-	aud_fm_idle_pins: aud-fm-idle-pins {
-		samsung,pins = "gpb1-4";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-};
-
-&pinctrl_hsi {
-	gpf2: gpf2-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	sd2_clk_pins: sd2-clk-pins {
-		samsung,pins = "gpf2-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
-	};
-
-	sd2_cmd_pins: sd2-cmd-pins {
-		samsung,pins = "gpf2-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
-	 };
-
-	sd2_bus1_pins: sd2-bus1-pins {
-		samsung,pins = "gpf2-2";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
-	};
-
-	sd2_bus4_pins: sd2-bus4-pins {
-		samsung,pins = "gpf2-3", "gpf2-4", "gpf2-5";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS850_HSI_PIN_DRV_LV2>;
-	};
-
-	sd2_pdn_pins: sd2-pdn-pins {
-		samsung,pins = "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3",
-			       "gpf2-4", "gpf2-5";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-	};
-};
-
-&pinctrl_core {
-	gpf0: gpf0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpf1: gpf1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	sd0_clk_pins: sd0-clk-pins {
-		samsung,pins = "gpf0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-
-	sd0_cmd_pins: sd0-cmd-pins {
-		samsung,pins = "gpf0-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-
-	sd0_rdqs_pins: sd0-rdqs-pins {
-		samsung,pins = "gpf0-2";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-
-	sd0_nreset_pins: sd0-nreset-pins {
-		samsung,pins = "gpf0-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-
-	sd0_bus1_pins: sd0-bus1-pins {
-		samsung,pins = "gpf1-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-
-	sd0_bus4_pins: sd0-bus4-pins {
-		samsung,pins = "gpf1-1", "gpf1-2", "gpf1-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-
-	sd0_bus8_pins: sd0-bus8-pins {
-		samsung,pins = "gpf1-4", "gpf1-5", "gpf1-6", "gpf1-7";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
-	};
-};
-
-&pinctrl_peri {
-	gpc0: gpc0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpc1: gpc1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpg0: gpg0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpg1: gpg1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpg2: gpg2-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpg3: gpg3-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpp0: gpp0-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-	gpp1: gpp1-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	gpp2: gpp2-gpio-bank {
-		gpio-controller;
-		#gpio-cells = <2>;
-
-		interrupt-controller;
-		#interrupt-cells = <2>;
-	};
-
-	sensor_mclk0_in_pins: sensor-mclk0-in-pins {
-		samsung,pins = "gpc0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk0_out_pins: sensor-mclk0-out-pins {
-		samsung,pins = "gpc0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk0_fn_pins: sensor-mclk0-fn-pins {
-		samsung,pins = "gpc0-0";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk1_in_pins: sensor-mclk1-in-pins {
-		samsung,pins = "gpc0-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk1_out_pins: sensor-mclk1-out-pins {
-		samsung,pins = "gpc0-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk1_fn_pins: sensor-mclk1-fn-pins {
-		samsung,pins = "gpc0-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk2_in_pins: sensor-mclk2-in-pins {
-		samsung,pins = "gpc0-2";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk2_out_pins: sensor-mclk2-out-pins {
-		samsung,pins = "gpc0-2";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	sensor_mclk2_fn_pins: sensor-mclk2-fn-pins {
-		samsung,pins = "gpc0-2";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV3>;
-	};
-
-	/* USI: HSI2C0 */
-	hsi2c0_pins: hsi2c0-pins {
-		samsung,pins = "gpc1-0", "gpc1-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI: HSI2C1 */
-	hsi2c1_pins: hsi2c1-pins {
-		samsung,pins = "gpc1-2", "gpc1-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI: HSI2C2 */
-	hsi2c2_pins: hsi2c2-pins {
-		samsung,pins = "gpc1-4", "gpc1-5";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	/* USI: SPI */
-	spi0_pins: spi0-pins {
-		samsung,pins = "gpp2-0", "gpp2-1", "gpp2-2", "gpp2-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	i2c0_pins: i2c0-pins {
-		samsung,pins = "gpp0-0", "gpp0-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	i2c1_pins: i2c1-pins {
-		samsung,pins = "gpp0-2", "gpp0-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	i2c2_pins: i2c2-pins {
-		samsung,pins = "gpp0-4", "gpp0-5";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	i2c3_pins: i2c3-pins {
-		samsung,pins = "gpp1-0", "gpp1-1";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	i2c4_pins: i2c4-pins {
-		samsung,pins = "gpp1-2", "gpp1-3";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
-		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
-	};
-
-	xclkout_pins: xclkout-pins {
-		samsung,pins = "gpq0-2";
-		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
-		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
-	};
-};
diff --git a/arch/arm/dts/exynos850.dtsi b/arch/arm/dts/exynos850.dtsi
deleted file mode 100644
index 53104e65b9c6..000000000000
--- a/arch/arm/dts/exynos850.dtsi
+++ /dev/null
@@ -1,809 +0,0 @@ 
-// SPDX-License-Identifier: GPL-2.0
-/*
- * Samsung Exynos850 SoC device tree source
- *
- * Copyright (C) 2018 Samsung Electronics Co., Ltd.
- * Copyright (C) 2021 Linaro Ltd.
- *
- * Samsung Exynos850 SoC device nodes are listed in this file.
- * Exynos850 based board files can include this file and provide
- * values for board specific bindings.
- */
-
-#include <dt-bindings/clock/exynos850.h>
-#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/soc/samsung,exynos-usi.h>
-
-/ {
-	/* Also known under engineering name Exynos3830 */
-	compatible = "samsung,exynos850";
-	#address-cells = <2>;
-	#size-cells = <1>;
-
-	interrupt-parent = <&gic>;
-
-	aliases {
-		pinctrl0 = &pinctrl_alive;
-		pinctrl1 = &pinctrl_cmgp;
-		pinctrl2 = &pinctrl_aud;
-		pinctrl3 = &pinctrl_hsi;
-		pinctrl4 = &pinctrl_core;
-		pinctrl5 = &pinctrl_peri;
-	};
-
-	arm-pmu {
-		compatible = "arm,cortex-a55-pmu";
-		interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
-		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>,
-				     <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
-	};
-
-	/* Main system clock (XTCXO); external, must be 26 MHz */
-	oscclk: clock-oscclk {
-		compatible = "fixed-clock";
-		clock-output-names = "oscclk";
-		#clock-cells = <0>;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		cpu-map {
-			cluster0 {
-				core0 {
-					cpu = <&cpu0>;
-				};
-				core1 {
-					cpu = <&cpu1>;
-				};
-				core2 {
-					cpu = <&cpu2>;
-				};
-				core3 {
-					cpu = <&cpu3>;
-				};
-			};
-
-			cluster1 {
-				core0 {
-					cpu = <&cpu4>;
-				};
-				core1 {
-					cpu = <&cpu5>;
-				};
-				core2 {
-					cpu = <&cpu6>;
-				};
-				core3 {
-					cpu = <&cpu7>;
-				};
-			};
-		};
-
-		cpu0: cpu@0 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x0>;
-			enable-method = "psci";
-		};
-		cpu1: cpu@1 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x1>;
-			enable-method = "psci";
-		};
-		cpu2: cpu@2 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x2>;
-			enable-method = "psci";
-		};
-		cpu3: cpu@3 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x3>;
-			enable-method = "psci";
-		};
-		cpu4: cpu@100 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x100>;
-			enable-method = "psci";
-		};
-		cpu5: cpu@101 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x101>;
-			enable-method = "psci";
-		};
-		cpu6: cpu@102 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x102>;
-			enable-method = "psci";
-		};
-		cpu7: cpu@103 {
-			device_type = "cpu";
-			compatible = "arm,cortex-a55";
-			reg = <0x103>;
-			enable-method = "psci";
-		};
-	};
-
-	psci {
-		compatible = "arm,psci-1.0";
-		method = "smc";
-	};
-
-	timer {
-		compatible = "arm,armv8-timer";
-		/* Hypervisor Virtual Timer interrupt is not wired to GIC */
-		interrupts =
-		     <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
-		     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
-		     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
-		     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
-	};
-
-	soc: soc@0 {
-		compatible = "simple-bus";
-		#address-cells = <1>;
-		#size-cells = <1>;
-		ranges = <0x0 0x0 0x0 0x20000000>;
-
-		chipid@10000000 {
-			compatible = "samsung,exynos850-chipid";
-			reg = <0x10000000 0x100>;
-		};
-
-		timer@10040000 {
-			compatible = "samsung,exynos850-mct",
-				     "samsung,exynos4210-mct";
-			reg = <0x10040000 0x800>;
-			interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>;
-			clocks = <&oscclk>, <&cmu_peri CLK_GOUT_MCT_PCLK>;
-			clock-names = "fin_pll", "mct";
-		};
-
-		gic: interrupt-controller@12a01000 {
-			compatible = "arm,gic-400";
-			#interrupt-cells = <3>;
-			#address-cells = <0>;
-			reg = <0x12a01000 0x1000>,
-			      <0x12a02000 0x2000>,
-			      <0x12a04000 0x2000>,
-			      <0x12a06000 0x2000>;
-			interrupt-controller;
-			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) |
-						 IRQ_TYPE_LEVEL_HIGH)>;
-		};
-
-		pmu_system_controller: system-controller@11860000 {
-			compatible = "samsung,exynos850-pmu", "syscon";
-			reg = <0x11860000 0x10000>;
-
-			reboot: syscon-reboot {
-				compatible = "syscon-reboot";
-				regmap = <&pmu_system_controller>;
-				offset = <0x3a00>; /* SYSTEM_CONFIGURATION */
-				mask = <0x2>; /* SWRESET_SYSTEM */
-				value = <0x2>; /* reset value */
-			};
-		};
-
-		watchdog_cl0: watchdog@10050000 {
-			compatible = "samsung,exynos850-wdt";
-			reg = <0x10050000 0x100>;
-			interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
-			clocks = <&cmu_peri CLK_GOUT_WDT0_PCLK>, <&oscclk>;
-			clock-names = "watchdog", "watchdog_src";
-			samsung,syscon-phandle = <&pmu_system_controller>;
-			samsung,cluster-index = <0>;
-			status = "disabled";
-		};
-
-		watchdog_cl1: watchdog@10060000 {
-			compatible = "samsung,exynos850-wdt";
-			reg = <0x10060000 0x100>;
-			interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
-			clocks = <&cmu_peri CLK_GOUT_WDT1_PCLK>, <&oscclk>;
-			clock-names = "watchdog", "watchdog_src";
-			samsung,syscon-phandle = <&pmu_system_controller>;
-			samsung,cluster-index = <1>;
-			status = "disabled";
-		};
-
-		cmu_peri: clock-controller@10030000 {
-			compatible = "samsung,exynos850-cmu-peri";
-			reg = <0x10030000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_top CLK_DOUT_PERI_BUS>,
-				 <&cmu_top CLK_DOUT_PERI_UART>,
-				 <&cmu_top CLK_DOUT_PERI_IP>;
-			clock-names = "oscclk", "dout_peri_bus",
-				      "dout_peri_uart", "dout_peri_ip";
-		};
-
-		cmu_g3d: clock-controller@11400000 {
-			compatible = "samsung,exynos850-cmu-g3d";
-			reg = <0x11400000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_top CLK_DOUT_G3D_SWITCH>;
-			clock-names = "oscclk", "dout_g3d_switch";
-		};
-
-		cmu_apm: clock-controller@11800000 {
-			compatible = "samsung,exynos850-cmu-apm";
-			reg = <0x11800000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_top CLK_DOUT_CLKCMU_APM_BUS>;
-			clock-names = "oscclk", "dout_clkcmu_apm_bus";
-		};
-
-		cmu_cmgp: clock-controller@11c00000 {
-			compatible = "samsung,exynos850-cmu-cmgp";
-			reg = <0x11c00000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_apm CLK_GOUT_CLKCMU_CMGP_BUS>;
-			clock-names = "oscclk", "gout_clkcmu_cmgp_bus";
-		};
-
-		cmu_core: clock-controller@12000000 {
-			compatible = "samsung,exynos850-cmu-core";
-			reg = <0x12000000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_top CLK_DOUT_CORE_BUS>,
-				 <&cmu_top CLK_DOUT_CORE_CCI>,
-				 <&cmu_top CLK_DOUT_CORE_MMC_EMBD>,
-				 <&cmu_top CLK_DOUT_CORE_SSS>;
-			clock-names = "oscclk", "dout_core_bus",
-				      "dout_core_cci", "dout_core_mmc_embd",
-				      "dout_core_sss";
-		};
-
-		cmu_top: clock-controller@120e0000 {
-			compatible = "samsung,exynos850-cmu-top";
-			reg = <0x120e0000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>;
-			clock-names = "oscclk";
-		};
-
-		cmu_mfcmscl: clock-controller@12c00000 {
-			compatible = "samsung,exynos850-cmu-mfcmscl";
-			reg = <0x12c00000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>,
-				 <&cmu_top CLK_DOUT_MFCMSCL_MFC>,
-				 <&cmu_top CLK_DOUT_MFCMSCL_M2M>,
-				 <&cmu_top CLK_DOUT_MFCMSCL_MCSC>,
-				 <&cmu_top CLK_DOUT_MFCMSCL_JPEG>;
-			clock-names = "oscclk", "dout_mfcmscl_mfc",
-				      "dout_mfcmscl_m2m", "dout_mfcmscl_mcsc",
-				      "dout_mfcmscl_jpeg";
-		};
-
-		cmu_dpu: clock-controller@13000000 {
-			compatible = "samsung,exynos850-cmu-dpu";
-			reg = <0x13000000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_top CLK_DOUT_DPU>;
-			clock-names = "oscclk", "dout_dpu";
-		};
-
-		cmu_hsi: clock-controller@13400000 {
-			compatible = "samsung,exynos850-cmu-hsi";
-			reg = <0x13400000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>,
-				 <&cmu_top CLK_DOUT_HSI_BUS>,
-				 <&cmu_top CLK_DOUT_HSI_MMC_CARD>,
-				 <&cmu_top CLK_DOUT_HSI_USB20DRD>;
-			clock-names = "oscclk", "dout_hsi_bus",
-				      "dout_hsi_mmc_card", "dout_hsi_usb20drd";
-		};
-
-		cmu_is: clock-controller@14500000 {
-			compatible = "samsung,exynos850-cmu-is";
-			reg = <0x14500000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>,
-				 <&cmu_top CLK_DOUT_IS_BUS>,
-				 <&cmu_top CLK_DOUT_IS_ITP>,
-				 <&cmu_top CLK_DOUT_IS_VRA>,
-				 <&cmu_top CLK_DOUT_IS_GDC>;
-			clock-names = "oscclk", "dout_is_bus", "dout_is_itp",
-				      "dout_is_vra", "dout_is_gdc";
-		};
-
-		cmu_aud: clock-controller@14a00000 {
-			compatible = "samsung,exynos850-cmu-aud";
-			reg = <0x14a00000 0x8000>;
-			#clock-cells = <1>;
-
-			clocks = <&oscclk>, <&cmu_top CLK_DOUT_AUD>;
-			clock-names = "oscclk", "dout_aud";
-		};
-
-		pinctrl_alive: pinctrl@11850000 {
-			compatible = "samsung,exynos850-pinctrl";
-			reg = <0x11850000 0x1000>;
-
-			wakeup-interrupt-controller {
-				compatible = "samsung,exynos850-wakeup-eint";
-			};
-		};
-
-		pinctrl_cmgp: pinctrl@11c30000 {
-			compatible = "samsung,exynos850-pinctrl";
-			reg = <0x11c30000 0x1000>;
-
-			wakeup-interrupt-controller {
-				compatible = "samsung,exynos850-wakeup-eint";
-			};
-		};
-
-		pinctrl_core: pinctrl@12070000 {
-			compatible = "samsung,exynos850-pinctrl";
-			reg = <0x12070000 0x1000>;
-			interrupts = <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>;
-		};
-
-		pinctrl_hsi: pinctrl@13430000 {
-			compatible = "samsung,exynos850-pinctrl";
-			reg = <0x13430000 0x1000>;
-			interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
-		};
-
-		pinctrl_peri: pinctrl@139b0000 {
-			compatible = "samsung,exynos850-pinctrl";
-			reg = <0x139b0000 0x1000>;
-			interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
-		};
-
-		pinctrl_aud: pinctrl@14a60000 {
-			compatible = "samsung,exynos850-pinctrl";
-			reg = <0x14a60000 0x1000>;
-		};
-
-		rtc: rtc@11a30000 {
-			compatible = "samsung,s3c6410-rtc";
-			reg = <0x11a30000 0x100>;
-			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
-				     <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
-			clocks = <&cmu_apm CLK_GOUT_RTC_PCLK>;
-			clock-names = "rtc";
-			status = "disabled";
-		};
-
-		mmc_0: mmc@12100000 {
-			compatible = "samsung,exynos7-dw-mshc-smu";
-			reg = <0x12100000 0x2000>;
-			interrupts = <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			clocks = <&cmu_core CLK_GOUT_MMC_EMBD_ACLK>,
-				 <&cmu_core CLK_GOUT_MMC_EMBD_SDCLKIN>;
-			clock-names = "biu", "ciu";
-			fifo-depth = <0x40>;
-			status = "disabled";
-		};
-
-		i2c_0: i2c@13830000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13830000 0x100>;
-			interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c0_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C0_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		i2c_1: i2c@13840000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13840000 0x100>;
-			interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c1_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C1_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		i2c_2: i2c@13850000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13850000 0x100>;
-			interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c2_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C2_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		i2c_3: i2c@13860000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13860000 0x100>;
-			interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c3_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C3_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		i2c_4: i2c@13870000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13870000 0x100>;
-			interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c4_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C4_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		/* I2C_5 (also called CAM_PMIC_I2C in TRM) */
-		i2c_5: i2c@13880000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13880000 0x100>;
-			interrupts = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c5_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C5_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		/* I2C_6 (also called MOTOR_I2C in TRM) */
-		i2c_6: i2c@13890000 {
-			compatible = "samsung,s3c2440-i2c";
-			reg = <0x13890000 0x100>;
-			interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			pinctrl-names = "default";
-			pinctrl-0 = <&i2c6_pins>;
-			clocks = <&cmu_peri CLK_GOUT_I2C6_PCLK>;
-			clock-names = "i2c";
-			status = "disabled";
-		};
-
-		sysmmu_mfcmscl: sysmmu@12c50000 {
-			compatible = "samsung,exynos-sysmmu";
-			reg = <0x12c50000 0x9000>;
-			interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
-			clock-names = "sysmmu";
-			clocks = <&cmu_mfcmscl CLK_GOUT_MFCMSCL_SYSMMU_CLK>;
-			#iommu-cells = <0>;
-		};
-
-		sysmmu_dpu: sysmmu@130c0000 {
-			compatible = "samsung,exynos-sysmmu";
-			reg = <0x130c0000 0x9000>;
-			interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
-			clock-names = "sysmmu";
-			clocks = <&cmu_dpu CLK_GOUT_DPU_SMMU_CLK>;
-			#iommu-cells = <0>;
-		};
-
-		sysmmu_is0: sysmmu@14550000 {
-			compatible = "samsung,exynos-sysmmu";
-			reg = <0x14550000 0x9000>;
-			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
-			clock-names = "sysmmu";
-			clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS0_CLK>;
-			#iommu-cells = <0>;
-		};
-
-		sysmmu_is1: sysmmu@14570000 {
-			compatible = "samsung,exynos-sysmmu";
-			reg = <0x14570000 0x9000>;
-			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
-			clock-names = "sysmmu";
-			clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS1_CLK>;
-			#iommu-cells = <0>;
-		};
-
-		sysmmu_aud: sysmmu@14850000 {
-			compatible = "samsung,exynos-sysmmu";
-			reg = <0x14850000 0x9000>;
-			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
-			clock-names = "sysmmu";
-			clocks = <&cmu_aud CLK_GOUT_AUD_SYSMMU_CLK>;
-			#iommu-cells = <0>;
-		};
-
-		sysreg_peri: syscon@10020000 {
-			compatible = "samsung,exynos850-peri-sysreg",
-				     "samsung,exynos850-sysreg", "syscon";
-			reg = <0x10020000 0x10000>;
-			clocks = <&cmu_peri CLK_GOUT_SYSREG_PERI_PCLK>;
-		};
-
-		sysreg_cmgp: syscon@11c20000 {
-			compatible = "samsung,exynos850-cmgp-sysreg",
-				     "samsung,exynos850-sysreg", "syscon";
-			reg = <0x11c20000 0x10000>;
-			clocks = <&cmu_cmgp CLK_GOUT_SYSREG_CMGP_PCLK>;
-		};
-
-		usbdrd: usb@13600000 {
-			compatible = "samsung,exynos850-dwusb3";
-			ranges = <0x0 0x13600000 0x10000>;
-			clocks = <&cmu_hsi CLK_GOUT_USB_BUS_EARLY_CLK>,
-				 <&cmu_hsi CLK_GOUT_USB_REF_CLK>;
-			clock-names = "bus_early", "ref";
-			#address-cells = <1>;
-			#size-cells = <1>;
-			status = "disabled";
-
-			usbdrd_dwc3: usb@0 {
-				compatible = "snps,dwc3";
-				reg = <0x0 0x10000>;
-				interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
-				phys = <&usbdrd_phy 0>;
-				phy-names = "usb2-phy";
-			};
-		};
-
-		usbdrd_phy: phy@135d0000 {
-			compatible = "samsung,exynos850-usbdrd-phy";
-			reg = <0x135d0000 0x100>;
-			clocks = <&cmu_hsi CLK_GOUT_USB_PHY_ACLK>,
-				 <&cmu_hsi CLK_GOUT_USB_PHY_REF_CLK>;
-			clock-names = "phy", "ref";
-			samsung,pmu-syscon = <&pmu_system_controller>;
-			#phy-cells = <1>;
-			status = "disabled";
-		};
-
-		usi_uart: usi@138200c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x138200c0 0x20>;
-			samsung,sysreg = <&sysreg_peri 0x1010>;
-			samsung,mode = <USI_V2_UART>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_peri CLK_GOUT_UART_PCLK>,
-				 <&cmu_peri CLK_GOUT_UART_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-
-			serial_0: serial@13820000 {
-				compatible = "samsung,exynos850-uart";
-				reg = <0x13820000 0xc0>;
-				interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&uart0_pins>;
-				clocks = <&cmu_peri CLK_GOUT_UART_PCLK>,
-					 <&cmu_peri CLK_GOUT_UART_IPCLK>;
-				clock-names = "uart", "clk_uart_baud0";
-				status = "disabled";
-			};
-		};
-
-		usi_hsi2c_0: usi@138a00c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x138a00c0 0x20>;
-			samsung,sysreg = <&sysreg_peri 0x1020>;
-			samsung,mode = <USI_V2_I2C>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_peri CLK_GOUT_HSI2C0_PCLK>,
-				 <&cmu_peri CLK_GOUT_HSI2C0_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-
-			hsi2c_0: i2c@138a0000 {
-				compatible = "samsung,exynosautov9-hsi2c";
-				reg = <0x138a0000 0xc0>;
-				interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
-				#address-cells = <1>;
-				#size-cells = <0>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&hsi2c0_pins>;
-				clocks = <&cmu_peri CLK_GOUT_HSI2C0_IPCLK>,
-					 <&cmu_peri CLK_GOUT_HSI2C0_PCLK>;
-				clock-names = "hsi2c", "hsi2c_pclk";
-				status = "disabled";
-			};
-		};
-
-		usi_hsi2c_1: usi@138b00c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x138b00c0 0x20>;
-			samsung,sysreg = <&sysreg_peri 0x1030>;
-			samsung,mode = <USI_V2_I2C>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_peri CLK_GOUT_HSI2C1_PCLK>,
-				 <&cmu_peri CLK_GOUT_HSI2C1_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-
-			hsi2c_1: i2c@138b0000 {
-				compatible = "samsung,exynosautov9-hsi2c";
-				reg = <0x138b0000 0xc0>;
-				interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
-				#address-cells = <1>;
-				#size-cells = <0>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&hsi2c1_pins>;
-				clocks = <&cmu_peri CLK_GOUT_HSI2C1_IPCLK>,
-					 <&cmu_peri CLK_GOUT_HSI2C1_PCLK>;
-				clock-names = "hsi2c", "hsi2c_pclk";
-				status = "disabled";
-			};
-		};
-
-		usi_hsi2c_2: usi@138c00c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x138c00c0 0x20>;
-			samsung,sysreg = <&sysreg_peri 0x1040>;
-			samsung,mode = <USI_V2_I2C>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_peri CLK_GOUT_HSI2C2_PCLK>,
-				 <&cmu_peri CLK_GOUT_HSI2C2_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-
-			hsi2c_2: i2c@138c0000 {
-				compatible = "samsung,exynosautov9-hsi2c";
-				reg = <0x138c0000 0xc0>;
-				interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
-				#address-cells = <1>;
-				#size-cells = <0>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&hsi2c2_pins>;
-				clocks = <&cmu_peri CLK_GOUT_HSI2C2_IPCLK>,
-					 <&cmu_peri CLK_GOUT_HSI2C2_PCLK>;
-				clock-names = "hsi2c", "hsi2c_pclk";
-				status = "disabled";
-			};
-		};
-
-		usi_spi_0: usi@139400c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x139400c0 0x20>;
-			samsung,sysreg = <&sysreg_peri 0x1050>;
-			samsung,mode = <USI_V2_SPI>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_peri CLK_GOUT_SPI0_PCLK>,
-				 <&cmu_peri CLK_GOUT_SPI0_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-		};
-
-		usi_cmgp0: usi@11d000c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x11d000c0 0x20>;
-			samsung,sysreg = <&sysreg_cmgp 0x2000>;
-			samsung,mode = <USI_V2_I2C>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>,
-				 <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-
-			hsi2c_3: i2c@11d00000 {
-				compatible = "samsung,exynosautov9-hsi2c";
-				reg = <0x11d00000 0xc0>;
-				interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
-				#address-cells = <1>;
-				#size-cells = <0>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&hsi2c3_pins>;
-				clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>,
-					 <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>;
-				clock-names = "hsi2c", "hsi2c_pclk";
-				status = "disabled";
-			};
-
-			serial_1: serial@11d00000 {
-				compatible = "samsung,exynos850-uart";
-				reg = <0x11d00000 0xc0>;
-				interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&uart1_single_pins>;
-				clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>,
-					 <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>;
-				clock-names = "uart", "clk_uart_baud0";
-				status = "disabled";
-			};
-		};
-
-		usi_cmgp1: usi@11d200c0 {
-			compatible = "samsung,exynos850-usi";
-			reg = <0x11d200c0 0x20>;
-			samsung,sysreg = <&sysreg_cmgp 0x2010>;
-			samsung,mode = <USI_V2_I2C>;
-			#address-cells = <1>;
-			#size-cells = <1>;
-			ranges;
-			clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>,
-				 <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>;
-			clock-names = "pclk", "ipclk";
-			status = "disabled";
-
-			hsi2c_4: i2c@11d20000 {
-				compatible = "samsung,exynosautov9-hsi2c";
-				reg = <0x11d20000 0xc0>;
-				interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
-				#address-cells = <1>;
-				#size-cells = <0>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&hsi2c4_pins>;
-				clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>,
-					 <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>;
-				clock-names = "hsi2c", "hsi2c_pclk";
-				status = "disabled";
-			};
-
-			serial_2: serial@11d20000 {
-				compatible = "samsung,exynos850-uart";
-				reg = <0x11d20000 0xc0>;
-				interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
-				pinctrl-names = "default";
-				pinctrl-0 = <&uart2_single_pins>;
-				clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>,
-					 <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>;
-				clock-names = "uart", "clk_uart_baud0";
-				status = "disabled";
-			};
-		};
-	};
-};
-
-#include "exynos850-pinctrl.dtsi"
diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index af00ee1db07a..cad8bb044cf0 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -249,6 +249,7 @@  config TARGET_E850_96
 	select OF_CONTROL
 	select PINCTRL
 	select PINCTRL_EXYNOS850
+	imply OF_UPSTREAM
 
 endchoice
 endif
diff --git a/configs/e850-96_defconfig b/configs/e850-96_defconfig
index bb41635ff784..38b9968c1671 100644
--- a/configs/e850-96_defconfig
+++ b/configs/e850-96_defconfig
@@ -7,7 +7,7 @@  CONFIG_SYS_MALLOC_F_LEN=0x4000
 CONFIG_ARCH_EXYNOS9=y
 CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
 CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xf8c00000
-CONFIG_DEFAULT_DEVICE_TREE="exynos850-e850-96"
+CONFIG_DEFAULT_DEVICE_TREE="exynos/exynos850-e850-96"
 CONFIG_SYS_LOAD_ADDR=0x80000000
 # CONFIG_AUTOBOOT is not set
 # CONFIG_DISPLAY_CPUINFO is not set
diff --git a/doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml b/doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
deleted file mode 100644
index a0906efe1223..000000000000
--- a/doc/device-tree-bindings/clock/samsung,exynos850-clock.yaml
+++ /dev/null
@@ -1,307 +0,0 @@ 
-# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-%YAML 1.2
----
-$id: http://devicetree.org/schemas/clock/samsung,exynos850-clock.yaml#
-$schema: http://devicetree.org/meta-schemas/core.yaml#
-
-title: Samsung Exynos850 SoC clock controller
-
-maintainers:
-  - Sam Protsenko <semen.protsenko@linaro.org>
-
-description: |
-  Exynos850 clock controller is comprised of several CMU units, generating
-  clocks for different domains. Those CMU units are modeled as separate device
-  tree nodes, and might depend on each other. Root clocks in that clock tree are
-  two external clocks:: OSCCLK (26 MHz) and RTCCLK (32768 Hz). Those external
-  clocks must be defined as fixed-rate clocks in dts.
-
-  CMU_TOP is a top-level CMU, where all base clocks are prepared using PLLs and
-  dividers; all other leaf clocks (other CMUs) are usually derived from CMU_TOP.
-
-  Each clock is assigned an identifier and client nodes can use this identifier
-  to specify the clock which they consume. All clocks available for usage
-  in clock consumer nodes are defined as preprocessor macros in
-  'dt-bindings/clock/exynos850.h' header.
-
-properties:
-  compatible:
-    enum:
-      - samsung,exynos850-cmu-top
-      - samsung,exynos850-cmu-apm
-      - samsung,exynos850-cmu-aud
-      - samsung,exynos850-cmu-cmgp
-      - samsung,exynos850-cmu-core
-      - samsung,exynos850-cmu-dpu
-      - samsung,exynos850-cmu-g3d
-      - samsung,exynos850-cmu-hsi
-      - samsung,exynos850-cmu-is
-      - samsung,exynos850-cmu-mfcmscl
-      - samsung,exynos850-cmu-peri
-
-  clocks:
-    minItems: 1
-    maxItems: 5
-
-  clock-names:
-    minItems: 1
-    maxItems: 5
-
-  "#clock-cells":
-    const: 1
-
-  reg:
-    maxItems: 1
-
-allOf:
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-top
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-
-        clock-names:
-          items:
-            - const: oscclk
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-apm
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: CMU_APM bus clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_clkcmu_apm_bus
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-aud
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: AUD clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_aud
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-cmgp
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: CMU_CMGP bus clock (from CMU_APM)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: gout_clkcmu_cmgp_bus
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-core
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: CMU_CORE bus clock (from CMU_TOP)
-            - description: CCI clock (from CMU_TOP)
-            - description: eMMC clock (from CMU_TOP)
-            - description: SSS clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_core_bus
-            - const: dout_core_cci
-            - const: dout_core_mmc_embd
-            - const: dout_core_sss
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-dpu
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: DPU clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_dpu
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-g3d
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: G3D clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_g3d_switch
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-hsi
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: External RTC clock (32768 Hz)
-            - description: CMU_HSI bus clock (from CMU_TOP)
-            - description: SD card clock (from CMU_TOP)
-            - description: USB 2.0 DRD clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: rtcclk
-            - const: dout_hsi_bus
-            - const: dout_hsi_mmc_card
-            - const: dout_hsi_usb20drd
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-is
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: CMU_IS bus clock (from CMU_TOP)
-            - description: Image Texture Processing core clock (from CMU_TOP)
-            - description: Visual Recognition Accelerator clock (from CMU_TOP)
-            - description: Geometric Distortion Correction clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_is_bus
-            - const: dout_is_itp
-            - const: dout_is_vra
-            - const: dout_is_gdc
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-mfcmscl
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: Multi-Format Codec clock (from CMU_TOP)
-            - description: Memory to Memory Scaler clock (from CMU_TOP)
-            - description: Multi-Channel Scaler clock (from CMU_TOP)
-            - description: JPEG codec clock (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_mfcmscl_mfc
-            - const: dout_mfcmscl_m2m
-            - const: dout_mfcmscl_mcsc
-            - const: dout_mfcmscl_jpeg
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            const: samsung,exynos850-cmu-peri
-
-    then:
-      properties:
-        clocks:
-          items:
-            - description: External reference clock (26 MHz)
-            - description: CMU_PERI bus clock (from CMU_TOP)
-            - description: UART clock (from CMU_TOP)
-            - description: Parent clock for HSI2C and SPI (from CMU_TOP)
-
-        clock-names:
-          items:
-            - const: oscclk
-            - const: dout_peri_bus
-            - const: dout_peri_uart
-            - const: dout_peri_ip
-
-required:
-  - compatible
-  - "#clock-cells"
-  - clocks
-  - clock-names
-  - reg
-
-additionalProperties: false
-
-examples:
-  # Clock controller node for CMU_PERI
-  - |
-    #include <dt-bindings/clock/exynos850.h>
-
-    cmu_peri: clock-controller@10030000 {
-        compatible = "samsung,exynos850-cmu-peri";
-        reg = <0x10030000 0x8000>;
-        #clock-cells = <1>;
-
-        clocks = <&oscclk>, <&cmu_top CLK_DOUT_PERI_BUS>,
-                 <&cmu_top CLK_DOUT_PERI_UART>,
-                 <&cmu_top CLK_DOUT_PERI_IP>;
-        clock-names = "oscclk", "dout_peri_bus",
-                      "dout_peri_uart", "dout_peri_ip";
-    };
-
-...
diff --git a/doc/device-tree-bindings/soc/samsung/exynos-usi.yaml b/doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
deleted file mode 100644
index 8e6423f11568..000000000000
--- a/doc/device-tree-bindings/soc/samsung/exynos-usi.yaml
+++ /dev/null
@@ -1,162 +0,0 @@ 
-# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-%YAML 1.2
----
-$id: http://devicetree.org/schemas/soc/samsung/exynos-usi.yaml#
-$schema: http://devicetree.org/meta-schemas/core.yaml#
-
-title: Samsung's Exynos USI (Universal Serial Interface)
-
-maintainers:
-  - Sam Protsenko <semen.protsenko@linaro.org>
-
-description: |
-  USI IP-core provides selectable serial protocol (UART, SPI or High-Speed I2C).
-  USI shares almost all internal circuits within each protocol, so only one
-  protocol can be chosen at a time. USI is modeled as a node with zero or more
-  child nodes, each representing a serial sub-node device. The mode setting
-  selects which particular function will be used.
-
-properties:
-  $nodename:
-    pattern: "^usi@[0-9a-f]+$"
-
-  compatible:
-    enum:
-      - samsung,exynos850-usi
-
-  reg: true
-
-  clocks: true
-
-  clock-names: true
-
-  ranges: true
-
-  "#address-cells":
-    const: 1
-
-  "#size-cells":
-    const: 1
-
-  samsung,sysreg:
-    $ref: /schemas/types.yaml#/definitions/phandle-array
-    items:
-      - items:
-          - description: phandle to System Register syscon node
-          - description: offset of SW_CONF register for this USI controller
-    description:
-      Should be phandle/offset pair. The phandle to System Register syscon node
-      (for the same domain where this USI controller resides) and the offset
-      of SW_CONF register for this USI controller.
-
-  samsung,mode:
-    $ref: /schemas/types.yaml#/definitions/uint32
-    description:
-      Selects USI function (which serial protocol to use). Refer to
-      <include/dt-bindings/soc/samsung,exynos-usi.h> for valid USI mode values.
-
-  samsung,clkreq-on:
-    type: boolean
-    description:
-      Enable this property if underlying protocol requires the clock to be
-      continuously provided without automatic gating. As suggested by SoC
-      manual, it should be set in case of SPI/I2C slave, UART Rx and I2C
-      multi-master mode. Usually this property is needed if USI mode is set
-      to "UART".
-
-      This property is optional.
-
-patternProperties:
-  "^i2c@[0-9a-f]+$":
-    $ref: /schemas/i2c/i2c-exynos5.yaml
-    description: Child node describing underlying I2C
-
-  "^serial@[0-9a-f]+$":
-    $ref: /schemas/serial/samsung_uart.yaml
-    description: Child node describing underlying UART/serial
-
-  "^spi@[0-9a-f]+$":
-    $ref: /schemas/spi/samsung,spi.yaml
-    description: Child node describing underlying SPI
-
-required:
-  - compatible
-  - ranges
-  - "#address-cells"
-  - "#size-cells"
-  - samsung,sysreg
-  - samsung,mode
-
-if:
-  properties:
-    compatible:
-      contains:
-        enum:
-          - samsung,exynos850-usi
-
-then:
-  properties:
-    reg:
-      maxItems: 1
-
-    clocks:
-      items:
-        - description: Bus (APB) clock
-        - description: Operating clock for UART/SPI/I2C protocol
-
-    clock-names:
-      items:
-        - const: pclk
-        - const: ipclk
-
-  required:
-    - reg
-    - clocks
-    - clock-names
-
-else:
-  properties:
-    reg: false
-    clocks: false
-    clock-names: false
-    samsung,clkreq-on: false
-
-additionalProperties: false
-
-examples:
-  - |
-    #include <dt-bindings/interrupt-controller/arm-gic.h>
-    #include <dt-bindings/soc/samsung,exynos-usi.h>
-
-    usi0: usi@138200c0 {
-        compatible = "samsung,exynos850-usi";
-        reg = <0x138200c0 0x20>;
-        samsung,sysreg = <&sysreg_peri 0x1010>;
-        samsung,mode = <USI_V2_UART>;
-        samsung,clkreq-on; /* needed for UART mode */
-        #address-cells = <1>;
-        #size-cells = <1>;
-        ranges;
-        clocks = <&cmu_peri 32>, <&cmu_peri 31>;
-        clock-names = "pclk", "ipclk";
-
-        serial_0: serial@13820000 {
-            compatible = "samsung,exynos850-uart";
-            reg = <0x13820000 0xc0>;
-            interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
-            clocks = <&cmu_peri 32>, <&cmu_peri 31>;
-            clock-names = "uart", "clk_uart_baud0";
-            status = "disabled";
-        };
-
-        hsi2c_0: i2c@13820000 {
-            compatible = "samsung,exynosautov9-hsi2c";
-            reg = <0x13820000 0xc0>;
-            interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
-            #address-cells = <1>;
-            #size-cells = <0>;
-            clocks = <&cmu_peri 31>, <&cmu_peri 32>;
-            clock-names = "hsi2c", "hsi2c_pclk";
-            status = "disabled";
-        };
-    };
diff --git a/include/dt-bindings/clock/exynos850.h b/include/dt-bindings/clock/exynos850.h
deleted file mode 100644
index 3090e09c9a55..000000000000
--- a/include/dt-bindings/clock/exynos850.h
+++ /dev/null
@@ -1,337 +0,0 @@ 
-/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
-/*
- * Copyright (C) 2021 Linaro Ltd.
- * Author: Sam Protsenko <semen.protsenko@linaro.org>
- *
- * Device Tree binding constants for Exynos850 clock controller.
- */
-
-#ifndef _DT_BINDINGS_CLOCK_EXYNOS_850_H
-#define _DT_BINDINGS_CLOCK_EXYNOS_850_H
-
-/* CMU_TOP */
-#define CLK_FOUT_SHARED0_PLL		1
-#define CLK_FOUT_SHARED1_PLL		2
-#define CLK_FOUT_MMC_PLL		3
-#define CLK_MOUT_SHARED0_PLL		4
-#define CLK_MOUT_SHARED1_PLL		5
-#define CLK_MOUT_MMC_PLL		6
-#define CLK_MOUT_CORE_BUS		7
-#define CLK_MOUT_CORE_CCI		8
-#define CLK_MOUT_CORE_MMC_EMBD		9
-#define CLK_MOUT_CORE_SSS		10
-#define CLK_MOUT_DPU			11
-#define CLK_MOUT_HSI_BUS		12
-#define CLK_MOUT_HSI_MMC_CARD		13
-#define CLK_MOUT_HSI_USB20DRD		14
-#define CLK_MOUT_PERI_BUS		15
-#define CLK_MOUT_PERI_UART		16
-#define CLK_MOUT_PERI_IP		17
-#define CLK_DOUT_SHARED0_DIV3		18
-#define CLK_DOUT_SHARED0_DIV2		19
-#define CLK_DOUT_SHARED1_DIV3		20
-#define CLK_DOUT_SHARED1_DIV2		21
-#define CLK_DOUT_SHARED0_DIV4		22
-#define CLK_DOUT_SHARED1_DIV4		23
-#define CLK_DOUT_CORE_BUS		24
-#define CLK_DOUT_CORE_CCI		25
-#define CLK_DOUT_CORE_MMC_EMBD		26
-#define CLK_DOUT_CORE_SSS		27
-#define CLK_DOUT_DPU			28
-#define CLK_DOUT_HSI_BUS		29
-#define CLK_DOUT_HSI_MMC_CARD		30
-#define CLK_DOUT_HSI_USB20DRD		31
-#define CLK_DOUT_PERI_BUS		32
-#define CLK_DOUT_PERI_UART		33
-#define CLK_DOUT_PERI_IP		34
-#define CLK_GOUT_CORE_BUS		35
-#define CLK_GOUT_CORE_CCI		36
-#define CLK_GOUT_CORE_MMC_EMBD		37
-#define CLK_GOUT_CORE_SSS		38
-#define CLK_GOUT_DPU			39
-#define CLK_GOUT_HSI_BUS		40
-#define CLK_GOUT_HSI_MMC_CARD		41
-#define CLK_GOUT_HSI_USB20DRD		42
-#define CLK_GOUT_PERI_BUS		43
-#define CLK_GOUT_PERI_UART		44
-#define CLK_GOUT_PERI_IP		45
-#define CLK_MOUT_CLKCMU_APM_BUS		46
-#define CLK_DOUT_CLKCMU_APM_BUS		47
-#define CLK_GOUT_CLKCMU_APM_BUS		48
-#define CLK_MOUT_AUD			49
-#define CLK_GOUT_AUD			50
-#define CLK_DOUT_AUD			51
-#define CLK_MOUT_IS_BUS			52
-#define CLK_MOUT_IS_ITP			53
-#define CLK_MOUT_IS_VRA			54
-#define CLK_MOUT_IS_GDC			55
-#define CLK_GOUT_IS_BUS			56
-#define CLK_GOUT_IS_ITP			57
-#define CLK_GOUT_IS_VRA			58
-#define CLK_GOUT_IS_GDC			59
-#define CLK_DOUT_IS_BUS			60
-#define CLK_DOUT_IS_ITP			61
-#define CLK_DOUT_IS_VRA			62
-#define CLK_DOUT_IS_GDC			63
-#define CLK_MOUT_MFCMSCL_MFC		64
-#define CLK_MOUT_MFCMSCL_M2M		65
-#define CLK_MOUT_MFCMSCL_MCSC		66
-#define CLK_MOUT_MFCMSCL_JPEG		67
-#define CLK_GOUT_MFCMSCL_MFC		68
-#define CLK_GOUT_MFCMSCL_M2M		69
-#define CLK_GOUT_MFCMSCL_MCSC		70
-#define CLK_GOUT_MFCMSCL_JPEG		71
-#define CLK_DOUT_MFCMSCL_MFC		72
-#define CLK_DOUT_MFCMSCL_M2M		73
-#define CLK_DOUT_MFCMSCL_MCSC		74
-#define CLK_DOUT_MFCMSCL_JPEG		75
-#define CLK_MOUT_G3D_SWITCH		76
-#define CLK_GOUT_G3D_SWITCH		77
-#define CLK_DOUT_G3D_SWITCH		78
-
-/* CMU_APM */
-#define CLK_RCO_I3C_PMIC		1
-#define OSCCLK_RCO_APM			2
-#define CLK_RCO_APM__ALV		3
-#define CLK_DLL_DCO			4
-#define CLK_MOUT_APM_BUS_USER		5
-#define CLK_MOUT_RCO_APM_I3C_USER	6
-#define CLK_MOUT_RCO_APM_USER		7
-#define CLK_MOUT_DLL_USER		8
-#define CLK_MOUT_CLKCMU_CHUB_BUS	9
-#define CLK_MOUT_APM_BUS		10
-#define CLK_MOUT_APM_I3C		11
-#define CLK_DOUT_CLKCMU_CHUB_BUS	12
-#define CLK_DOUT_APM_BUS		13
-#define CLK_DOUT_APM_I3C		14
-#define CLK_GOUT_CLKCMU_CMGP_BUS	15
-#define CLK_GOUT_CLKCMU_CHUB_BUS	16
-#define CLK_GOUT_RTC_PCLK		17
-#define CLK_GOUT_TOP_RTC_PCLK		18
-#define CLK_GOUT_I3C_PCLK		19
-#define CLK_GOUT_I3C_SCLK		20
-#define CLK_GOUT_SPEEDY_PCLK		21
-#define CLK_GOUT_GPIO_ALIVE_PCLK	22
-#define CLK_GOUT_PMU_ALIVE_PCLK		23
-#define CLK_GOUT_SYSREG_APM_PCLK	24
-
-/* CMU_AUD */
-#define CLK_DOUT_AUD_AUDIF		1
-#define CLK_DOUT_AUD_BUSD		2
-#define CLK_DOUT_AUD_BUSP		3
-#define CLK_DOUT_AUD_CNT		4
-#define CLK_DOUT_AUD_CPU		5
-#define CLK_DOUT_AUD_CPU_ACLK		6
-#define CLK_DOUT_AUD_CPU_PCLKDBG	7
-#define CLK_DOUT_AUD_FM			8
-#define CLK_DOUT_AUD_FM_SPDY		9
-#define CLK_DOUT_AUD_MCLK		10
-#define CLK_DOUT_AUD_UAIF0		11
-#define CLK_DOUT_AUD_UAIF1		12
-#define CLK_DOUT_AUD_UAIF2		13
-#define CLK_DOUT_AUD_UAIF3		14
-#define CLK_DOUT_AUD_UAIF4		15
-#define CLK_DOUT_AUD_UAIF5		16
-#define CLK_DOUT_AUD_UAIF6		17
-#define CLK_FOUT_AUD_PLL		18
-#define CLK_GOUT_AUD_ABOX_ACLK		19
-#define CLK_GOUT_AUD_ASB_CCLK		20
-#define CLK_GOUT_AUD_CA32_CCLK		21
-#define CLK_GOUT_AUD_CNT_BCLK		22
-#define CLK_GOUT_AUD_CODEC_MCLK		23
-#define CLK_GOUT_AUD_DAP_CCLK		24
-#define CLK_GOUT_AUD_GPIO_PCLK		25
-#define CLK_GOUT_AUD_PPMU_ACLK		26
-#define CLK_GOUT_AUD_PPMU_PCLK		27
-#define CLK_GOUT_AUD_SPDY_BCLK		28
-#define CLK_GOUT_AUD_SYSMMU_CLK		29
-#define CLK_GOUT_AUD_SYSREG_PCLK	30
-#define CLK_GOUT_AUD_TZPC_PCLK		31
-#define CLK_GOUT_AUD_UAIF0_BCLK		32
-#define CLK_GOUT_AUD_UAIF1_BCLK		33
-#define CLK_GOUT_AUD_UAIF2_BCLK		34
-#define CLK_GOUT_AUD_UAIF3_BCLK		35
-#define CLK_GOUT_AUD_UAIF4_BCLK		36
-#define CLK_GOUT_AUD_UAIF5_BCLK		37
-#define CLK_GOUT_AUD_UAIF6_BCLK		38
-#define CLK_GOUT_AUD_WDT_PCLK		39
-#define CLK_MOUT_AUD_CPU		40
-#define CLK_MOUT_AUD_CPU_HCH		41
-#define CLK_MOUT_AUD_CPU_USER		42
-#define CLK_MOUT_AUD_FM			43
-#define CLK_MOUT_AUD_PLL		44
-#define CLK_MOUT_AUD_TICK_USB_USER	45
-#define CLK_MOUT_AUD_UAIF0		46
-#define CLK_MOUT_AUD_UAIF1		47
-#define CLK_MOUT_AUD_UAIF2		48
-#define CLK_MOUT_AUD_UAIF3		49
-#define CLK_MOUT_AUD_UAIF4		50
-#define CLK_MOUT_AUD_UAIF5		51
-#define CLK_MOUT_AUD_UAIF6		52
-#define IOCLK_AUDIOCDCLK0		53
-#define IOCLK_AUDIOCDCLK1		54
-#define IOCLK_AUDIOCDCLK2		55
-#define IOCLK_AUDIOCDCLK3		56
-#define IOCLK_AUDIOCDCLK4		57
-#define IOCLK_AUDIOCDCLK5		58
-#define IOCLK_AUDIOCDCLK6		59
-#define TICK_USB			60
-#define CLK_GOUT_AUD_CMU_AUD_PCLK	61
-
-/* CMU_CMGP */
-#define CLK_RCO_CMGP			1
-#define CLK_MOUT_CMGP_ADC		2
-#define CLK_MOUT_CMGP_USI0		3
-#define CLK_MOUT_CMGP_USI1		4
-#define CLK_DOUT_CMGP_ADC		5
-#define CLK_DOUT_CMGP_USI0		6
-#define CLK_DOUT_CMGP_USI1		7
-#define CLK_GOUT_CMGP_ADC_S0_PCLK	8
-#define CLK_GOUT_CMGP_ADC_S1_PCLK	9
-#define CLK_GOUT_CMGP_GPIO_PCLK		10
-#define CLK_GOUT_CMGP_USI0_IPCLK	11
-#define CLK_GOUT_CMGP_USI0_PCLK		12
-#define CLK_GOUT_CMGP_USI1_IPCLK	13
-#define CLK_GOUT_CMGP_USI1_PCLK		14
-#define CLK_GOUT_SYSREG_CMGP_PCLK	15
-
-/* CMU_G3D */
-#define CLK_FOUT_G3D_PLL		1
-#define CLK_MOUT_G3D_PLL		2
-#define CLK_MOUT_G3D_SWITCH_USER	3
-#define CLK_MOUT_G3D_BUSD		4
-#define CLK_DOUT_G3D_BUSP		5
-#define CLK_GOUT_G3D_CMU_G3D_PCLK	6
-#define CLK_GOUT_G3D_GPU_CLK		7
-#define CLK_GOUT_G3D_TZPC_PCLK		8
-#define CLK_GOUT_G3D_GRAY2BIN_CLK	9
-#define CLK_GOUT_G3D_BUSD_CLK		10
-#define CLK_GOUT_G3D_BUSP_CLK		11
-#define CLK_GOUT_G3D_SYSREG_PCLK	12
-
-/* CMU_HSI */
-#define CLK_MOUT_HSI_BUS_USER		1
-#define CLK_MOUT_HSI_MMC_CARD_USER	2
-#define CLK_MOUT_HSI_USB20DRD_USER	3
-#define CLK_MOUT_HSI_RTC		4
-#define CLK_GOUT_USB_RTC_CLK		5
-#define CLK_GOUT_USB_REF_CLK		6
-#define CLK_GOUT_USB_PHY_REF_CLK	7
-#define CLK_GOUT_USB_PHY_ACLK		8
-#define CLK_GOUT_USB_BUS_EARLY_CLK	9
-#define CLK_GOUT_GPIO_HSI_PCLK		10
-#define CLK_GOUT_MMC_CARD_ACLK		11
-#define CLK_GOUT_MMC_CARD_SDCLKIN	12
-#define CLK_GOUT_SYSREG_HSI_PCLK	13
-#define CLK_GOUT_HSI_PPMU_ACLK		14
-#define CLK_GOUT_HSI_PPMU_PCLK		15
-#define CLK_GOUT_HSI_CMU_HSI_PCLK	16
-
-/* CMU_IS */
-#define CLK_MOUT_IS_BUS_USER		1
-#define CLK_MOUT_IS_ITP_USER		2
-#define CLK_MOUT_IS_VRA_USER		3
-#define CLK_MOUT_IS_GDC_USER		4
-#define CLK_DOUT_IS_BUSP		5
-#define CLK_GOUT_IS_CMU_IS_PCLK		6
-#define CLK_GOUT_IS_CSIS0_ACLK		7
-#define CLK_GOUT_IS_CSIS1_ACLK		8
-#define CLK_GOUT_IS_CSIS2_ACLK		9
-#define CLK_GOUT_IS_TZPC_PCLK		10
-#define CLK_GOUT_IS_CSIS_DMA_CLK	11
-#define CLK_GOUT_IS_GDC_CLK		12
-#define CLK_GOUT_IS_IPP_CLK		13
-#define CLK_GOUT_IS_ITP_CLK		14
-#define CLK_GOUT_IS_MCSC_CLK		15
-#define CLK_GOUT_IS_VRA_CLK		16
-#define CLK_GOUT_IS_PPMU_IS0_ACLK	17
-#define CLK_GOUT_IS_PPMU_IS0_PCLK	18
-#define CLK_GOUT_IS_PPMU_IS1_ACLK	19
-#define CLK_GOUT_IS_PPMU_IS1_PCLK	20
-#define CLK_GOUT_IS_SYSMMU_IS0_CLK	21
-#define CLK_GOUT_IS_SYSMMU_IS1_CLK	22
-#define CLK_GOUT_IS_SYSREG_PCLK		23
-
-/* CMU_MFCMSCL */
-#define CLK_MOUT_MFCMSCL_MFC_USER		1
-#define CLK_MOUT_MFCMSCL_M2M_USER		2
-#define CLK_MOUT_MFCMSCL_MCSC_USER		3
-#define CLK_MOUT_MFCMSCL_JPEG_USER		4
-#define CLK_DOUT_MFCMSCL_BUSP			5
-#define CLK_GOUT_MFCMSCL_CMU_MFCMSCL_PCLK	6
-#define CLK_GOUT_MFCMSCL_TZPC_PCLK		7
-#define CLK_GOUT_MFCMSCL_JPEG_ACLK		8
-#define CLK_GOUT_MFCMSCL_M2M_ACLK		9
-#define CLK_GOUT_MFCMSCL_MCSC_CLK		10
-#define CLK_GOUT_MFCMSCL_MFC_ACLK		11
-#define CLK_GOUT_MFCMSCL_PPMU_ACLK		12
-#define CLK_GOUT_MFCMSCL_PPMU_PCLK		13
-#define CLK_GOUT_MFCMSCL_SYSMMU_CLK		14
-#define CLK_GOUT_MFCMSCL_SYSREG_PCLK		15
-
-/* CMU_PERI */
-#define CLK_MOUT_PERI_BUS_USER		1
-#define CLK_MOUT_PERI_UART_USER		2
-#define CLK_MOUT_PERI_HSI2C_USER	3
-#define CLK_MOUT_PERI_SPI_USER		4
-#define CLK_DOUT_PERI_HSI2C0		5
-#define CLK_DOUT_PERI_HSI2C1		6
-#define CLK_DOUT_PERI_HSI2C2		7
-#define CLK_DOUT_PERI_SPI0		8
-#define CLK_GOUT_PERI_HSI2C0		9
-#define CLK_GOUT_PERI_HSI2C1		10
-#define CLK_GOUT_PERI_HSI2C2		11
-#define CLK_GOUT_GPIO_PERI_PCLK		12
-#define CLK_GOUT_HSI2C0_IPCLK		13
-#define CLK_GOUT_HSI2C0_PCLK		14
-#define CLK_GOUT_HSI2C1_IPCLK		15
-#define CLK_GOUT_HSI2C1_PCLK		16
-#define CLK_GOUT_HSI2C2_IPCLK		17
-#define CLK_GOUT_HSI2C2_PCLK		18
-#define CLK_GOUT_I2C0_PCLK		19
-#define CLK_GOUT_I2C1_PCLK		20
-#define CLK_GOUT_I2C2_PCLK		21
-#define CLK_GOUT_I2C3_PCLK		22
-#define CLK_GOUT_I2C4_PCLK		23
-#define CLK_GOUT_I2C5_PCLK		24
-#define CLK_GOUT_I2C6_PCLK		25
-#define CLK_GOUT_MCT_PCLK		26
-#define CLK_GOUT_PWM_MOTOR_PCLK		27
-#define CLK_GOUT_SPI0_IPCLK		28
-#define CLK_GOUT_SPI0_PCLK		29
-#define CLK_GOUT_SYSREG_PERI_PCLK	30
-#define CLK_GOUT_UART_IPCLK		31
-#define CLK_GOUT_UART_PCLK		32
-#define CLK_GOUT_WDT0_PCLK		33
-#define CLK_GOUT_WDT1_PCLK		34
-
-/* CMU_CORE */
-#define CLK_MOUT_CORE_BUS_USER		1
-#define CLK_MOUT_CORE_CCI_USER		2
-#define CLK_MOUT_CORE_MMC_EMBD_USER	3
-#define CLK_MOUT_CORE_SSS_USER		4
-#define CLK_MOUT_CORE_GIC		5
-#define CLK_DOUT_CORE_BUSP		6
-#define CLK_GOUT_CCI_ACLK		7
-#define CLK_GOUT_GIC_CLK		8
-#define CLK_GOUT_MMC_EMBD_ACLK		9
-#define CLK_GOUT_MMC_EMBD_SDCLKIN	10
-#define CLK_GOUT_SSS_ACLK		11
-#define CLK_GOUT_SSS_PCLK		12
-#define CLK_GOUT_GPIO_CORE_PCLK		13
-#define CLK_GOUT_SYSREG_CORE_PCLK	14
-
-/* CMU_DPU */
-#define CLK_MOUT_DPU_USER		1
-#define CLK_DOUT_DPU_BUSP		2
-#define CLK_GOUT_DPU_CMU_DPU_PCLK	3
-#define CLK_GOUT_DPU_DECON0_ACLK	4
-#define CLK_GOUT_DPU_DMA_ACLK		5
-#define CLK_GOUT_DPU_DPP_ACLK		6
-#define CLK_GOUT_DPU_PPMU_ACLK		7
-#define CLK_GOUT_DPU_PPMU_PCLK		8
-#define CLK_GOUT_DPU_SMMU_CLK		9
-#define CLK_GOUT_DPU_SYSREG_PCLK	10
-#define DPU_NR_CLK			11
-
-#endif /* _DT_BINDINGS_CLOCK_EXYNOS_850_H */
diff --git a/include/dt-bindings/soc/samsung,exynos-usi.h b/include/dt-bindings/soc/samsung,exynos-usi.h
deleted file mode 100644
index a01af169d249..000000000000
--- a/include/dt-bindings/soc/samsung,exynos-usi.h
+++ /dev/null
@@ -1,17 +0,0 @@ 
-/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
-/*
- * Copyright (c) 2021 Linaro Ltd.
- * Author: Sam Protsenko <semen.protsenko@linaro.org>
- *
- * Device Tree bindings for Samsung Exynos USI (Universal Serial Interface).
- */
-
-#ifndef __DT_BINDINGS_SAMSUNG_EXYNOS_USI_H
-#define __DT_BINDINGS_SAMSUNG_EXYNOS_USI_H
-
-#define USI_V2_NONE		0
-#define USI_V2_UART		1
-#define USI_V2_SPI		2
-#define USI_V2_I2C		3
-
-#endif /* __DT_BINDINGS_SAMSUNG_EXYNOS_USI_H */