| // 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"; |
| clocks = <&cmu_cpucl0 CLK_CLUSTER0_SCLK>; |
| clock-names = "cluster0_clk"; |
| }; |
| 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"; |
| clocks = <&cmu_cpucl1 CLK_CLUSTER1_SCLK>; |
| clock-names = "cluster1_clk"; |
| }; |
| 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"; |
| }; |
| |
| pdma0: dma-controller@120c0000 { |
| compatible = "arm,pl330", "arm,primecell"; |
| reg = <0x120c0000 0x1000>; |
| clocks = <&cmu_core CLK_GOUT_PDMA_CORE_ACLK>; |
| clock-names = "apb_pclk"; |
| #dma-cells = <1>; |
| interrupts = <GIC_SPI 479 IRQ_TYPE_LEVEL_HIGH>; |
| arm,pl330-broken-no-flushp; |
| }; |
| |
| 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_cpucl1: clock-controller@10800000 { |
| compatible = "samsung,exynos850-cmu-cpucl1"; |
| reg = <0x10800000 0x8000>; |
| #clock-cells = <1>; |
| |
| clocks = <&oscclk>, <&cmu_top CLK_DOUT_CPUCL1_SWITCH>, |
| <&cmu_top CLK_DOUT_CPUCL1_DBG>; |
| clock-names = "oscclk", "dout_cpucl1_switch", |
| "dout_cpucl1_dbg"; |
| }; |
| |
| cmu_cpucl0: clock-controller@10900000 { |
| compatible = "samsung,exynos850-cmu-cpucl0"; |
| reg = <0x10900000 0x8000>; |
| #clock-cells = <1>; |
| |
| clocks = <&oscclk>, <&cmu_top CLK_DOUT_CPUCL0_SWITCH>, |
| <&cmu_top CLK_DOUT_CPUCL0_DBG>; |
| clock-names = "oscclk", "dout_cpucl0_switch", |
| "dout_cpucl0_dbg"; |
| }; |
| |
| 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", |
| "samsung,exynos7-wakeup-eint"; |
| }; |
| }; |
| |
| pinctrl_cmgp: pinctrl@11c30000 { |
| compatible = "samsung,exynos850-pinctrl"; |
| reg = <0x11c30000 0x1000>; |
| |
| wakeup-interrupt-controller { |
| compatible = "samsung,exynos850-wakeup-eint", |
| "samsung,exynos7-wakeup-eint"; |
| }; |
| }; |
| |
| pinctrl_core: pinctrl@12070000 { |
| compatible = "samsung,exynos850-pinctrl"; |
| reg = <0x12070000 0x1000>; |
| interrupts = <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>; |
| }; |
| |
| trng: rng@12081400 { |
| compatible = "samsung,exynos850-trng"; |
| reg = <0x12081400 0x100>; |
| clocks = <&cmu_core CLK_GOUT_SSS_ACLK>, |
| <&cmu_core CLK_GOUT_SSS_PCLK>; |
| clock-names = "secss", "pclk"; |
| }; |
| |
| 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,exynos850-rtc", "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,exynos850-dw-mshc-smu", |
| "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,exynos850-i2c", "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,exynos850-i2c", "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,exynos850-i2c", "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,exynos850-i2c", "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,exynos850-i2c", "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,exynos850-i2c", "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,exynos850-i2c", "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,exynos850-hsi2c", |
| "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,exynos850-hsi2c", |
| "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,exynos850-hsi2c", |
| "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"; |
| |
| spi_0: spi@13940000 { |
| compatible = "samsung,exynos850-spi"; |
| reg = <0x13940000 0x30>; |
| clocks = <&cmu_peri CLK_GOUT_SPI0_PCLK>, |
| <&cmu_peri CLK_GOUT_SPI0_IPCLK>; |
| clock-names = "spi", "spi_busclk0"; |
| dmas = <&pdma0 5>, <&pdma0 4>; |
| dma-names = "tx", "rx"; |
| interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>; |
| pinctrl-0 = <&spi0_pins>; |
| pinctrl-names = "default"; |
| num-cs = <1>; |
| samsung,spi-src-clk = <0>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| 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,exynos850-hsi2c", |
| "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"; |
| }; |
| |
| spi_1: spi@11d00000 { |
| compatible = "samsung,exynos850-spi"; |
| reg = <0x11d00000 0x30>; |
| clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>, |
| <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>; |
| clock-names = "spi", "spi_busclk0"; |
| dmas = <&pdma0 12>, <&pdma0 13>; |
| dma-names = "tx", "rx"; |
| interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; |
| pinctrl-0 = <&spi1_pins>; |
| pinctrl-names = "default"; |
| num-cs = <1>; |
| samsung,spi-src-clk = <0>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| 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,exynos850-hsi2c", |
| "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"; |
| }; |
| |
| spi_2: spi@11d20000 { |
| compatible = "samsung,exynos850-spi"; |
| reg = <0x11d20000 0x30>; |
| clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>, |
| <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>; |
| clock-names = "spi", "spi_busclk0"; |
| dmas = <&pdma0 14>, <&pdma0 15>; |
| dma-names = "tx", "rx"; |
| interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; |
| pinctrl-0 = <&spi2_pins>; |
| pinctrl-names = "default"; |
| num-cs = <1>; |
| samsung,spi-src-clk = <0>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| status = "disabled"; |
| }; |
| }; |
| }; |
| }; |
| |
| #include "exynos850-pinctrl.dtsi" |