Commit 2dfe48a8 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'samsung-dt64-6.8' of...

Merge tag 'samsung-dt64-6.8' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/dt

Samsung DTS ARM64 changes for v6.8

Two (and a half) major items are coming with this pull request:
1. Add specific compatibles to all Samsung Exynos and Tesla FSD blocks,
   because that's what guidelines expect [1] and is generally
   recommended practice.  Existing compatibles are left untouched, thus
   no driver changes are needed.  The work only cleans things up, so any
   future contributions will use recommended style: specific and
   fallback compatibles.

   Since no driver changes are needed in this work and the DTS is
   directly affected by bindings change (running tests with `make
   dtbs_check`), this pull includes all bindings changes, even though
   usual practice is that bindings come via driver subsystem.  Keeping
   everything here makes review and testing easier.  Also will allow us
   to avoid conflicts related to new platforms (see below).

2. Add ExynosAutov920 SoC and SADK board (Samsung Automotive Development
   Kit) with minimal support so far: serial console, GPIO-based keys and
   PWM fan.

3. Add few bindings for upcoming Google GS101 SoC.  This pull request
   does not include its DTS yet, just few reviewed dependencies.  DTS
   will be coming soon.

[1] Documentation/devicetree/bindings/writing-bindings.rst

* tag 'samsung-dt64-6.8' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: (38 commits)
  arm64: dts: exynos: add minimal support for exynosautov920 sadk board
  arm64: dts: exynos: add initial support for exynosautov920 SoC
  dt-bindings: samsung: exynos-sysreg: combine exynosautov920 with other enum
  dt-bindings: soc: google: exynos-sysreg: add dedicated SYSREG compatibles to GS101
  dt-bindings: clock: Add Google gs101 clock management unit bindings
  dt-bindings: soc: samsung: exynos-pmu: Add gs101 compatible
  arm64: dts: fsd: add specific compatibles for Tesla FSD
  dt-bindings: watchdog: samsung: add specific compatible for Tesla FSD
  dt-bindings: samsung: exynos-pmu: add specific compatible for Tesla FSD
  dt-bindings: serial: samsung: add specific compatible for Tesla FSD
  dt-bindings: pwm: samsung: add specific compatible for Tesla FSD
  dt-bindings: i2c: exynos5: add specific compatible for Tesla FSD
  arm64: dts: exynosautov9: use Exynos7 fallbacks for pin wake-up controller
  arm64: dts: exynos850: use Exynos7 fallbacks for pin wake-up controllers
  dt-bindings: hwinfo: samsung,exynos-chipid: add exynosautov920 compatible
  dt-bindings: arm: samsung: Document exynosautov920 SADK board binding
  dt-bindings: pwm: samsung: add exynosautov920 compatible
  dt-bindings: serial: samsung: add exynosautov920-uart compatible
  dt-bindings: samsung: usi: add exynosautov920-usi compatible
  dt-bindings: samsung: exynos-pmu: add exynosautov920 compatible
  ...

Link: https://lore.kernel.org/r/20231212093105.13938-1-krzysztof.kozlowski@linaro.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 487e6d8d 40af852a
......@@ -230,6 +230,12 @@ properties:
- samsung,exynosautov9-sadk # Samsung Exynos Auto v9 SADK
- const: samsung,exynosautov9
- description: Exynos Auto v920 based boards
items:
- enum:
- samsung,exynosautov920-sadk # Samsung Exynos Auto v920 SADK
- const: samsung,exynosautov920
required:
- compatible
......
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/google,gs101-clock.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Google GS101 SoC clock controller
maintainers:
- Peter Griffin <peter.griffin@linaro.org>
description: |
Google GS101 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. The root clock in that clock tree
is OSCCLK (24.576 MHz). That external clock must be defined as a fixed-rate
clock 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/gs101.h' header.
properties:
compatible:
enum:
- google,gs101-cmu-top
- google,gs101-cmu-apm
- google,gs101-cmu-misc
clocks:
minItems: 1
maxItems: 2
clock-names:
minItems: 1
maxItems: 2
"#clock-cells":
const: 1
reg:
maxItems: 1
required:
- compatible
- "#clock-cells"
- clocks
- clock-names
- reg
allOf:
- if:
properties:
compatible:
contains:
enum:
- google,gs101-cmu-top
- google,gs101-cmu-apm
then:
properties:
clocks:
items:
- description: External reference clock (24.576 MHz)
clock-names:
items:
- const: oscclk
- if:
properties:
compatible:
contains:
const: google,gs101-cmu-misc
then:
properties:
clocks:
items:
- description: Misc bus clock (from CMU_TOP)
- description: Misc sss clock (from CMU_TOP)
clock-names:
items:
- const: dout_cmu_misc_bus
- const: dout_cmu_misc_sss
additionalProperties: false
examples:
# Clock controller node for CMU_TOP
- |
#include <dt-bindings/clock/google,gs101.h>
cmu_top: clock-controller@1e080000 {
compatible = "google,gs101-cmu-top";
reg = <0x1e080000 0x8000>;
#clock-cells = <1>;
clocks = <&ext_24_5m>;
clock-names = "oscclk";
};
...
......@@ -40,6 +40,11 @@ properties:
- rockchip,rk3288-mali
- samsung,exynos5433-mali
- const: arm,mali-t760
- items:
- enum:
- samsung,exynos7-mali
- const: samsung,exynos5433-mali
- const: arm,mali-t760
- items:
- enum:
- rockchip,rk3399-mali
......
......@@ -11,9 +11,21 @@ maintainers:
properties:
compatible:
enum:
- samsung,exynos4210-chipid
- samsung,exynos850-chipid
oneOf:
- enum:
- samsung,exynos4210-chipid
- samsung,exynos850-chipid
- items:
- enum:
- samsung,exynos5433-chipid
- samsung,exynos7-chipid
- const: samsung,exynos4210-chipid
- items:
- enum:
- samsung,exynos7885-chipid
- samsung,exynosautov9-chipid
- samsung,exynosautov920-chipid
- const: samsung,exynos850-chipid
reg:
maxItems: 1
......
......@@ -25,7 +25,16 @@ properties:
- samsung,exynos5250-hsi2c # Exynos5250 and Exynos5420
- samsung,exynos5260-hsi2c # Exynos5260
- samsung,exynos7-hsi2c # Exynos7
- samsung,exynosautov9-hsi2c # ExynosAutoV9 and Exynos850
- samsung,exynosautov9-hsi2c
- items:
- enum:
- samsung,exynos5433-hsi2c
- tesla,fsd-hsi2c
- const: samsung,exynos7-hsi2c
- items:
- enum:
- samsung,exynos850-hsi2c
- const: samsung,exynosautov9-hsi2c
- const: samsung,exynos5-hsi2c # Exynos5250 and Exynos5420
deprecated: true
......
......@@ -11,14 +11,20 @@ maintainers:
properties:
compatible:
enum:
- samsung,s3c2410-i2c
- samsung,s3c2440-i2c
# For s3c2440-like I2C used inside HDMIPHY block found on several SoCs:
- samsung,s3c2440-hdmiphy-i2c
# For s3c2440-like I2C used as a host to SATA PHY controller on an
# internal bus:
- samsung,exynos5-sata-phy-i2c
oneOf:
- enum:
- samsung,s3c2410-i2c
- samsung,s3c2440-i2c
# For s3c2440-like I2C used inside HDMIPHY block found on several SoCs:
- samsung,s3c2440-hdmiphy-i2c
# For s3c2440-like I2C used as a host to SATA PHY controller on an
# internal bus:
- samsung,exynos5-sata-phy-i2c
- items:
- enum:
- samsung,exynos7885-i2c
- samsung,exynos850-i2c
- const: samsung,s3c2440-i2c
'#address-cells':
const: 1
......
......@@ -11,18 +11,23 @@ maintainers:
properties:
compatible:
enum:
- samsung,exynos-adc-v1 # Exynos5250
- samsung,exynos-adc-v2
- samsung,exynos3250-adc
- samsung,exynos4212-adc # Exynos4212 and Exynos4412
- samsung,exynos7-adc
- samsung,s3c2410-adc
- samsung,s3c2416-adc
- samsung,s3c2440-adc
- samsung,s3c2443-adc
- samsung,s3c6410-adc
- samsung,s5pv210-adc
oneOf:
- enum:
- samsung,exynos-adc-v1 # Exynos5250
- samsung,exynos-adc-v2
- samsung,exynos3250-adc
- samsung,exynos4212-adc # Exynos4212 and Exynos4412
- samsung,exynos7-adc
- samsung,s3c2410-adc
- samsung,s3c2416-adc
- samsung,s3c2440-adc
- samsung,s3c2443-adc
- samsung,s3c6410-adc
- samsung,s5pv210-adc
- items:
- enum:
- samsung,exynos5433-adc
- const: samsung,exynos7-adc
reg:
maxItems: 1
......
......@@ -85,7 +85,7 @@ examples:
};
i2s@11440000 {
compatible = "samsung,exynos7-i2s";
compatible = "samsung,exynos5433-i2s", "samsung,exynos7-i2s";
reg = <0x11440000 0x100>;
dmas = <&adma 0>, <&adma 2>;
dma-names = "tx", "rx";
......
......@@ -14,15 +14,22 @@ maintainers:
properties:
compatible:
enum:
- samsung,exynos4210-dw-mshc
- samsung,exynos4412-dw-mshc
- samsung,exynos5250-dw-mshc
- samsung,exynos5420-dw-mshc
- samsung,exynos5420-dw-mshc-smu
- samsung,exynos7-dw-mshc
- samsung,exynos7-dw-mshc-smu
- axis,artpec8-dw-mshc
oneOf:
- enum:
- axis,artpec8-dw-mshc
- samsung,exynos4210-dw-mshc
- samsung,exynos4412-dw-mshc
- samsung,exynos5250-dw-mshc
- samsung,exynos5420-dw-mshc
- samsung,exynos5420-dw-mshc-smu
- samsung,exynos7-dw-mshc
- samsung,exynos7-dw-mshc-smu
- items:
- enum:
- samsung,exynos5433-dw-mshc-smu
- samsung,exynos7885-dw-mshc-smu
- samsung,exynos850-dw-mshc-smu
- const: samsung,exynos7-dw-mshc-smu
reg:
maxItems: 1
......
......@@ -29,7 +29,11 @@ properties:
- samsung,exynos4210-pwm # 32-bit, Exynos
- items:
- enum:
- samsung,exynos5433-pwm
- samsung,exynos7-pwm
- samsung,exynosautov9-pwm
- samsung,exynosautov920-pwm
- tesla,fsd-pwm
- const: samsung,exynos4210-pwm
reg:
......
......@@ -17,6 +17,11 @@ properties:
- samsung,s3c2416-rtc
- samsung,s3c2443-rtc
- samsung,s3c6410-rtc
- items:
- enum:
- samsung,exynos7-rtc
- samsung,exynos850-rtc
- const: samsung,s3c6410-rtc
- const: samsung,exynos3250-rtc
deprecated: true
......
......@@ -18,9 +18,6 @@ description: |+
properties:
compatible:
oneOf:
- items:
- const: samsung,exynosautov9-uart
- const: samsung,exynos850-uart
- enum:
- apple,s5l-uart
- axis,artpec8-uart
......@@ -29,6 +26,20 @@ properties:
- samsung,exynos4210-uart
- samsung,exynos5433-uart
- samsung,exynos850-uart
- items:
- enum:
- samsung,exynos7-uart
- tesla,fsd-uart
- const: samsung,exynos4210-uart
- items:
- enum:
- samsung,exynos7885-uart
- const: samsung,exynos5433-uart
- items:
- enum:
- samsung,exynosautov9-uart
- samsung,exynosautov920-uart
- const: samsung,exynos850-uart
reg:
maxItems: 1
......
......@@ -15,6 +15,7 @@ select:
compatible:
contains:
enum:
- google,gs101-pmu
- samsung,exynos3250-pmu
- samsung,exynos4210-pmu
- samsung,exynos4212-pmu
......@@ -35,6 +36,7 @@ properties:
oneOf:
- items:
- enum:
- google,gs101-pmu
- samsung,exynos3250-pmu
- samsung,exynos4210-pmu
- samsung,exynos4212-pmu
......@@ -48,6 +50,14 @@ properties:
- samsung,exynos850-pmu
- samsung-s5pv210-pmu
- const: syscon
- items:
- enum:
- samsung,exynos7885-pmu
- samsung,exynosautov9-pmu
- samsung,exynosautov920-pmu
- tesla,fsd-pmu
- const: samsung,exynos7-pmu
- const: syscon
- items:
- enum:
- samsung,exynos3250-pmu
......
......@@ -24,7 +24,9 @@ properties:
compatible:
oneOf:
- items:
- const: samsung,exynosautov9-usi
- enum:
- samsung,exynosautov9-usi
- samsung,exynosautov920-usi
- const: samsung,exynos850-usi
- enum:
- samsung,exynos850-usi
......@@ -155,7 +157,7 @@ examples:
};
hsi2c_0: i2c@13820000 {
compatible = "samsung,exynosautov9-hsi2c";
compatible = "samsung,exynos850-hsi2c", "samsung,exynosautov9-hsi2c";
reg = <0x13820000 0xc0>;
interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......
......@@ -14,9 +14,14 @@ properties:
oneOf:
- items:
- enum:
- google,gs101-apm-sysreg
- google,gs101-peric0-sysreg
- google,gs101-peric1-sysreg
- samsung,exynos3-sysreg
- samsung,exynos4-sysreg
- samsung,exynos5-sysreg
- samsung,exynosautov920-peric0-sysreg
- samsung,exynosautov920-peric1-sysreg
- tesla,fsd-cam-sysreg
- tesla,fsd-fsys0-sysreg
- tesla,fsd-fsys1-sysreg
......
......@@ -44,13 +44,18 @@ properties:
frequencies supported by Exynos7 I2S and 7.1 channel TDM support
for playback and capture TDM (Time division multiplexing) to allow
transfer of multiple channel audio data on single data line.
enum:
- samsung,s3c6410-i2s
- samsung,s5pv210-i2s
- samsung,exynos5420-i2s
- samsung,exynos7-i2s
- samsung,exynos7-i2s1
- tesla,fsd-i2s
oneOf:
- enum:
- samsung,s3c6410-i2s
- samsung,s5pv210-i2s
- samsung,exynos5420-i2s
- samsung,exynos7-i2s
- samsung,exynos7-i2s1
- tesla,fsd-i2s
- items:
- enum:
- samsung,exynos5433-i2s
- const: samsung,exynos7-i2s
'#address-cells':
const: 1
......
......@@ -16,14 +16,19 @@ description: |+
properties:
compatible:
enum:
- samsung,s3c2410-wdt # for S3C2410
- samsung,s3c6410-wdt # for S3C6410, S5PV210 and Exynos4
- samsung,exynos5250-wdt # for Exynos5250
- samsung,exynos5420-wdt # for Exynos5420
- samsung,exynos7-wdt # for Exynos7
- samsung,exynos850-wdt # for Exynos850
- samsung,exynosautov9-wdt # for Exynosautov9
oneOf:
- enum:
- samsung,s3c2410-wdt # for S3C2410
- samsung,s3c6410-wdt # for S3C6410, S5PV210 and Exynos4
- samsung,exynos5250-wdt # for Exynos5250
- samsung,exynos5420-wdt # for Exynos5420
- samsung,exynos7-wdt # for Exynos7
- samsung,exynos850-wdt # for Exynos850
- samsung,exynosautov9-wdt # for Exynosautov9
- items:
- enum:
- tesla,fsd-wdt
- const: samsung,exynos7-wdt
reg:
maxItems: 1
......
......@@ -5,4 +5,5 @@ dtb-$(CONFIG_ARCH_EXYNOS) += \
exynos7-espresso.dtb \
exynos7885-jackpotlte.dtb \
exynos850-e850-96.dtb \
exynosautov9-sadk.dtb
exynosautov9-sadk.dtb \
exynosautov920-sadk.dtb
......@@ -361,7 +361,8 @@ soc: soc@0 {
ranges = <0x0 0x0 0x0 0x18000000>;
chipid@10000000 {
compatible = "samsung,exynos4210-chipid";
compatible = "samsung,exynos5433-chipid",
"samsung,exynos4210-chipid";
reg = <0x10000000 0x100>;
};
......@@ -850,7 +851,8 @@ pinctrl_alive: pinctrl@10580000 {
reg = <0x10580000 0x1a20>, <0x11090000 0x100>;
wakeup-interrupt-controller {
compatible = "samsung,exynos7-wakeup-eint";
compatible = "samsung,exynos5433-wakeup-eint",
"samsung,exynos7-wakeup-eint";
interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
};
};
......@@ -1546,7 +1548,7 @@ spi_4: spi@14d00000 {
};
adc: adc@14d10000 {
compatible = "samsung,exynos7-adc";
compatible = "samsung,exynos5433-adc", "samsung,exynos7-adc";
reg = <0x14d10000 0x100>;
interrupts = <GIC_SPI 438 IRQ_TYPE_LEVEL_HIGH>;
clock-names = "adc";
......@@ -1556,7 +1558,7 @@ adc: adc@14d10000 {
};
i2s1: i2s@14d60000 {
compatible = "samsung,exynos7-i2s";
compatible = "samsung,exynos5433-i2s", "samsung,exynos7-i2s";
reg = <0x14d60000 0x100>;
dmas = <&pdma0 31>, <&pdma0 30>;
dma-names = "tx", "rx";
......@@ -1571,7 +1573,7 @@ i2s1: i2s@14d60000 {
};
pwm: pwm@14dd0000 {
compatible = "samsung,exynos4210-pwm";
compatible = "samsung,exynos5433-pwm", "samsung,exynos4210-pwm";
reg = <0x14dd0000 0x100>;
interrupts = <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>,
......@@ -1586,7 +1588,8 @@ pwm: pwm@14dd0000 {
};
hsi2c_0: i2c@14e40000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14e40000 0x1000>;
interrupts = <GIC_SPI 428 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1599,7 +1602,8 @@ hsi2c_0: i2c@14e40000 {
};
hsi2c_1: i2c@14e50000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14e50000 0x1000>;
interrupts = <GIC_SPI 429 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1612,7 +1616,8 @@ hsi2c_1: i2c@14e50000 {
};
hsi2c_2: i2c@14e60000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14e60000 0x1000>;
interrupts = <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1625,7 +1630,8 @@ hsi2c_2: i2c@14e60000 {
};
hsi2c_3: i2c@14e70000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14e70000 0x1000>;
interrupts = <GIC_SPI 431 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1638,7 +1644,8 @@ hsi2c_3: i2c@14e70000 {
};
hsi2c_4: i2c@14ec0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14ec0000 0x1000>;
interrupts = <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1651,7 +1658,8 @@ hsi2c_4: i2c@14ec0000 {
};
hsi2c_5: i2c@14ed0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14ed0000 0x1000>;
interrupts = <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1664,7 +1672,8 @@ hsi2c_5: i2c@14ed0000 {
};
hsi2c_6: i2c@14ee0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14ee0000 0x1000>;
interrupts = <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1677,7 +1686,8 @@ hsi2c_6: i2c@14ee0000 {
};
hsi2c_7: i2c@14ef0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14ef0000 0x1000>;
interrupts = <GIC_SPI 427 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1690,7 +1700,8 @@ hsi2c_7: i2c@14ef0000 {
};
hsi2c_8: i2c@14d90000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14d90000 0x1000>;
interrupts = <GIC_SPI 443 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1703,7 +1714,8 @@ hsi2c_8: i2c@14d90000 {
};
hsi2c_9: i2c@14da0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14da0000 0x1000>;
interrupts = <GIC_SPI 444 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1716,7 +1728,8 @@ hsi2c_9: i2c@14da0000 {
};
hsi2c_10: i2c@14de0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14de0000 0x1000>;
interrupts = <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1729,7 +1742,8 @@ hsi2c_10: i2c@14de0000 {
};
hsi2c_11: i2c@14df0000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "samsung,exynos5433-hsi2c",
"samsung,exynos7-hsi2c";
reg = <0x14df0000 0x1000>;
interrupts = <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -1820,7 +1834,8 @@ usbhost_dwc3: usb@0 {
};
mshc_0: mmc@15540000 {
compatible = "samsung,exynos7-dw-mshc-smu";
compatible = "samsung,exynos5433-dw-mshc-smu",
"samsung,exynos7-dw-mshc-smu";
interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
......@@ -1833,7 +1848,8 @@ mshc_0: mmc@15540000 {
};
mshc_1: mmc@15550000 {
compatible = "samsung,exynos7-dw-mshc-smu";
compatible = "samsung,exynos5433-dw-mshc-smu",
"samsung,exynos7-dw-mshc-smu";
interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
......@@ -1846,7 +1862,8 @@ mshc_1: mmc@15550000 {
};
mshc_2: mmc@15560000 {
compatible = "samsung,exynos7-dw-mshc-smu";
compatible = "samsung,exynos5433-dw-mshc-smu",
"samsung,exynos7-dw-mshc-smu";
interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
......@@ -1897,7 +1914,8 @@ adma: dma-controller@11420000 {
};
i2s0: i2s@11440000 {
compatible = "samsung,exynos7-i2s";
compatible = "samsung,exynos5433-i2s",
"samsung,exynos7-i2s";
reg = <0x11440000 0x100>;
dmas = <&adma 0>, <&adma 2>;
dma-names = "tx", "rx";
......
......@@ -128,7 +128,8 @@ soc: soc@0 {
ranges = <0 0 0 0x18000000>;
chipid@10000000 {
compatible = "samsung,exynos4210-chipid";
compatible = "samsung,exynos7-chipid",
"samsung,exynos4210-chipid";
reg = <0x10000000 0x100>;
};
......@@ -279,7 +280,7 @@ clock_fsys1: clock-controller@156e0000 {
};
serial_0: serial@13630000 {
compatible = "samsung,exynos4210-uart";
compatible = "samsung,exynos7-uart", "samsung,exynos4210-uart";
reg = <0x13630000 0x100>;
interrupts = <GIC_SPI 440 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clock_peric0 PCLK_UART0>,
......@@ -289,7 +290,7 @@ serial_0: serial@13630000 {
};
serial_1: serial@14c20000 {
compatible = "samsung,exynos4210-uart";
compatible = "samsung,exynos7-uart", "samsung,exynos4210-uart";
reg = <0x14c20000 0x100>;
interrupts = <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clock_peric1 PCLK_UART1>,
......@@ -299,7 +300,7 @@ serial_1: serial@14c20000 {
};
serial_2: serial@14c30000 {
compatible = "samsung,exynos4210-uart";
compatible = "samsung,exynos7-uart", "samsung,exynos4210-uart";
reg = <0x14c30000 0x100>;
interrupts = <GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clock_peric1 PCLK_UART2>,
......@@ -309,7 +310,7 @@ serial_2: serial@14c30000 {
};
serial_3: serial@14c40000 {
compatible = "samsung,exynos4210-uart";
compatible = "samsung,exynos7-uart", "samsung,exynos4210-uart";
reg = <0x14c40000 0x100>;
interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clock_peric1 PCLK_UART3>,
......@@ -539,7 +540,7 @@ pmu_system_controller: system-controller@105c0000 {
};
rtc: rtc@10590000 {
compatible = "samsung,s3c6410-rtc";
compatible = "samsung,exynos7-rtc", "samsung,s3c6410-rtc";
reg = <0x10590000 0x100>;
interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
......@@ -559,7 +560,8 @@ watchdog: watchdog@101d0000 {
};
gpu: gpu@14ac0000 {
compatible = "samsung,exynos5433-mali", "arm,mali-t760";
compatible = "samsung,exynos7-mali",
"samsung,exynos5433-mali", "arm,mali-t760";
reg = <0x14ac0000 0x5000>;
interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>,
......@@ -619,7 +621,7 @@ adc: adc@13620000 {
};
pwm: pwm@136c0000 {
compatible = "samsung,exynos4210-pwm";
compatible = "samsung,exynos7-pwm", "samsung,exynos4210-pwm";
reg = <0x136c0000 0x100>;
interrupts = <GIC_SPI 449 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 450 IRQ_TYPE_LEVEL_HIGH>,
......
......@@ -172,7 +172,8 @@ soc: soc@0 {
ranges = <0x0 0x0 0x0 0x20000000>;
chipid@10000000 {
compatible = "samsung,exynos850-chipid";
compatible = "samsung,exynos7885-chipid",
"samsung,exynos850-chipid";
reg = <0x10000000 0x24>;
};
......@@ -264,7 +265,8 @@ pinctrl_alive: pinctrl@11cb0000 {
reg = <0x11cb0000 0x1000>;
wakeup-interrupt-controller {
compatible = "samsung,exynos7-wakeup-eint";
compatible = "samsung,exynos7885-wakeup-eint",
"samsung,exynos7-wakeup-eint";
interrupt-parent = <&gic>;
interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
};
......@@ -289,12 +291,14 @@ pinctrl_dispaud: pinctrl@148f0000 {
};
pmu_system_controller: system-controller@11c80000 {
compatible = "samsung,exynos7-pmu", "syscon";
compatible = "samsung,exynos7885-pmu",
"samsung,exynos7-pmu", "syscon";
reg = <0x11c80000 0x10000>;
};
mmc_0: mmc@13500000 {
compatible = "samsung,exynos7-dw-mshc-smu";
compatible = "samsung,exynos7885-dw-mshc-smu",
"samsung,exynos7-dw-mshc-smu";
reg = <0x13500000 0x2000>;
interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -307,7 +311,8 @@ mmc_0: mmc@13500000 {
};
serial_0: serial@13800000 {
compatible = "samsung,exynos5433-uart";
compatible = "samsung,exynos7885-uart",
"samsung,exynos5433-uart";
reg = <0x13800000 0x100>;
interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-names = "default";
......@@ -320,7 +325,8 @@ serial_0: serial@13800000 {
};
serial_1: serial@13810000 {
compatible = "samsung,exynos5433-uart";
compatible = "samsung,exynos7885-uart",
"samsung,exynos5433-uart";
reg = <0x13810000 0x100>;
interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-names = "default";
......@@ -333,7 +339,8 @@ serial_1: serial@13810000 {
};
serial_2: serial@13820000 {
compatible = "samsung,exynos5433-uart";
compatible = "samsung,exynos7885-uart",
"samsung,exynos5433-uart";
reg = <0x13820000 0x100>;
interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-names = "default";
......@@ -346,7 +353,8 @@ serial_2: serial@13820000 {
};
i2c_0: i2c@13830000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13830000 0x100>;
interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -359,7 +367,8 @@ i2c_0: i2c@13830000 {
};
i2c_1: i2c@13840000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13840000 0x100>;
interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -372,7 +381,8 @@ i2c_1: i2c@13840000 {
};
i2c_2: i2c@13850000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13850000 0x100>;
interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -385,7 +395,8 @@ i2c_2: i2c@13850000 {
};
i2c_3: i2c@13860000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13860000 0x100>;
interrupts = <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -398,7 +409,8 @@ i2c_3: i2c@13860000 {
};
i2c_4: i2c@13870000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13870000 0x100>;
interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -411,7 +423,8 @@ i2c_4: i2c@13870000 {
};
i2c_5: i2c@13880000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13880000 0x100>;
interrupts = <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -424,7 +437,8 @@ i2c_5: i2c@13880000 {
};
i2c_6: i2c@13890000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x13890000 0x100>;
interrupts = <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -437,7 +451,8 @@ i2c_6: i2c@13890000 {
};
i2c_7: i2c@11cd0000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos7885-i2c",
"samsung,s3c2440-i2c";
reg = <0x11cd0000 0x100>;
interrupts = <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......
......@@ -359,7 +359,8 @@ pinctrl_alive: pinctrl@11850000 {
reg = <0x11850000 0x1000>;
wakeup-interrupt-controller {
compatible = "samsung,exynos850-wakeup-eint";
compatible = "samsung,exynos850-wakeup-eint",
"samsung,exynos7-wakeup-eint";
};
};
......@@ -368,7 +369,8 @@ pinctrl_cmgp: pinctrl@11c30000 {
reg = <0x11c30000 0x1000>;
wakeup-interrupt-controller {
compatible = "samsung,exynos850-wakeup-eint";
compatible = "samsung,exynos850-wakeup-eint",
"samsung,exynos7-wakeup-eint";
};
};
......@@ -396,7 +398,7 @@ pinctrl_aud: pinctrl@14a60000 {
};
rtc: rtc@11a30000 {
compatible = "samsung,s3c6410-rtc";
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>;
......@@ -406,7 +408,8 @@ rtc: rtc@11a30000 {
};
mmc_0: mmc@12100000 {
compatible = "samsung,exynos7-dw-mshc-smu";
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>;
......@@ -419,7 +422,7 @@ mmc_0: mmc@12100000 {
};
i2c_0: i2c@13830000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13830000 0x100>;
interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -432,7 +435,7 @@ i2c_0: i2c@13830000 {
};
i2c_1: i2c@13840000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13840000 0x100>;
interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -445,7 +448,7 @@ i2c_1: i2c@13840000 {
};
i2c_2: i2c@13850000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13850000 0x100>;
interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -458,7 +461,7 @@ i2c_2: i2c@13850000 {
};
i2c_3: i2c@13860000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13860000 0x100>;
interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -471,7 +474,7 @@ i2c_3: i2c@13860000 {
};
i2c_4: i2c@13870000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13870000 0x100>;
interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -485,7 +488,7 @@ i2c_4: i2c@13870000 {
/* I2C_5 (also called CAM_PMIC_I2C in TRM) */
i2c_5: i2c@13880000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13880000 0x100>;
interrupts = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -499,7 +502,7 @@ i2c_5: i2c@13880000 {
/* I2C_6 (also called MOTOR_I2C in TRM) */
i2c_6: i2c@13890000 {
compatible = "samsung,s3c2440-i2c";
compatible = "samsung,exynos850-i2c", "samsung,s3c2440-i2c";
reg = <0x13890000 0x100>;
interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -640,7 +643,8 @@ usi_hsi2c_0: usi@138a00c0 {
status = "disabled";
hsi2c_0: i2c@138a0000 {
compatible = "samsung,exynosautov9-hsi2c";
compatible = "samsung,exynos850-hsi2c",
"samsung,exynosautov9-hsi2c";
reg = <0x138a0000 0xc0>;
interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -668,7 +672,8 @@ usi_hsi2c_1: usi@138b00c0 {
status = "disabled";
hsi2c_1: i2c@138b0000 {
compatible = "samsung,exynosautov9-hsi2c";
compatible = "samsung,exynos850-hsi2c",
"samsung,exynosautov9-hsi2c";
reg = <0x138b0000 0xc0>;
interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -696,7 +701,8 @@ usi_hsi2c_2: usi@138c00c0 {
status = "disabled";
hsi2c_2: i2c@138c0000 {
compatible = "samsung,exynosautov9-hsi2c";
compatible = "samsung,exynos850-hsi2c",
"samsung,exynosautov9-hsi2c";
reg = <0x138c0000 0xc0>;
interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -738,7 +744,8 @@ usi_cmgp0: usi@11d000c0 {
status = "disabled";
hsi2c_3: i2c@11d00000 {
compatible = "samsung,exynosautov9-hsi2c";
compatible = "samsung,exynos850-hsi2c",
"samsung,exynosautov9-hsi2c";
reg = <0x11d00000 0xc0>;
interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -778,7 +785,8 @@ usi_cmgp1: usi@11d200c0 {
status = "disabled";
hsi2c_4: i2c@11d20000 {
compatible = "samsung,exynosautov9-hsi2c";
compatible = "samsung,exynos850-hsi2c",
"samsung,exynosautov9-hsi2c";
reg = <0x11d20000 0xc0>;
interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......
......@@ -9,6 +9,7 @@
/dts-v1/;
#include "exynosautov9.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
/ {
model = "Samsung ExynosAuto v9 SADK board";
......@@ -32,6 +33,31 @@ memory@80000000 {
<0xa 0x00000000 0x2 0x00000000>;
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_wakeup &key_volup &key_voldown>;
key-wakeup {
label = "Wakeup";
linux,code = <KEY_WAKEUP>;
gpios = <&gpa0 0 GPIO_ACTIVE_LOW>;
wakeup-source;
};
key-volume-down {
label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>;
gpios = <&gpg2 0 GPIO_ACTIVE_LOW>;
};
key-volume-up {
label = "Volume Up";
linux,code = <KEY_VOLUMEUP>;
gpios = <&gpg1 5 GPIO_ACTIVE_LOW>;
};
};
ufs_0_fixed_vcc_reg: regulator-0 {
compatible = "regulator-fixed";
regulator-name = "ufs-vcc";
......@@ -49,6 +75,31 @@ ufs_1_fixed_vcc_reg: regulator-1 {
};
};
&pinctrl_alive {
key_wakeup: key-wakeup-pins {
samsung,pins = "gpa0-0";
samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
};
};
&pinctrl_peric1 {
key_voldown: key-voldown-pins {
samsung,pins = "gpg2-0";
samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
};
key_volup: key-volup-pins {
samsung,pins = "gpg1-5";
samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
};
};
&pwm {
pinctrl-names = "default";
pinctrl-0 = <&pwm_tout3>;
......
......@@ -166,7 +166,8 @@ soc: soc@0 {
ranges = <0x0 0x0 0x0 0x20000000>;
chipid@10000000 {
compatible = "samsung,exynos850-chipid";
compatible = "samsung,exynosautov9-chipid",
"samsung,exynos850-chipid";
reg = <0x10000000 0x24>;
};
......@@ -309,7 +310,9 @@ pinctrl_alive: pinctrl@10450000 {
reg = <0x10450000 0x1000>;
wakeup-interrupt-controller {
compatible = "samsung,exynosautov9-wakeup-eint";
compatible = "samsung,exynosautov9-wakeup-eint",
"samsung,exynos850-wakeup-eint",
"samsung,exynos7-wakeup-eint";
};
};
......@@ -349,7 +352,8 @@ pinctrl_peric1: pinctrl@10830000 {
};
pmu_system_controller: system-controller@10460000 {
compatible = "samsung,exynos7-pmu", "syscon";
compatible = "samsung,exynosautov9-pmu",
"samsung,exynos7-pmu", "syscon";
reg = <0x10460000 0x10000>;
reboot: syscon-reboot {
......
This diff is collapsed.
// SPDX-License-Identifier: GPL-2.0
/*
* Samsung's ExynosAutov920 SADK board device tree source
*
* Copyright (c) 2023 Samsung Electronics Co., Ltd.
*
*/
/dts-v1/;
#include "exynosautov920.dtsi"
#include "exynos-pinctrl.h"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
/ {
model = "Samsung ExynosAutov920 SADK board";
compatible = "samsung,exynosautov920-sadk", "samsung,exynosautov920";
#address-cells = <2>;
#size-cells = <2>;
aliases {
serial0 = &serial_0;
};
chosen {
stdout-path = &serial_0;
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_wakeup &key_back>;
key-wakeup {
label = "KEY_WAKEUP";
linux,code = <KEY_WAKEUP>;
gpios = <&gpa0 0 GPIO_ACTIVE_LOW>;
wakeup-source;
};
key-back {
label = "KEY_BACK";
linux,code = <KEY_BACK>;
gpios = <&gpp6 3 GPIO_ACTIVE_LOW>;
};
};
memory@80000000 {
device_type = "memory";
reg = <0x0 0x80000000 0x0 0x70000000>,
<0x8 0x80000000 0x1 0xfba00000>,
<0xa 0x00000000 0x2 0x00000000>;
};
};
&pinctrl_alive {
key_wakeup: key-wakeup-pins {
samsung,pins = "gpa0-0";
samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
};
};
&pinctrl_peric1 {
key_back: key-back-pins {
samsung,pins = "gpp6-3";
samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
};
};
&pwm {
pinctrl-names = "default";
pinctrl-0 = <&pwm_tout0>;
status = "okay";
};
&serial_0 {
status = "okay";
};
&usi_0 {
samsung,clkreq-on; /* needed for UART mode */
status = "okay";
};
&xtcxo {
clock-frequency = <38400000>;
};
// SPDX-License-Identifier: GPL-2.0
/*
* Samsung's ExynosAutov920 SoC device tree source
*
* Copyright (c) 2023 Samsung Electronics Co., Ltd.
*
*/
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/soc/samsung,exynos-usi.h>
/ {
compatible = "samsung,exynosautov920";
#address-cells = <2>;
#size-cells = <1>;
interrupt-parent = <&gic>;
aliases {
pinctrl0 = &pinctrl_alive;
pinctrl1 = &pinctrl_aud;
pinctrl2 = &pinctrl_hsi0;
pinctrl3 = &pinctrl_hsi1;
pinctrl4 = &pinctrl_hsi2;
pinctrl5 = &pinctrl_hsi2ufs;
pinctrl6 = &pinctrl_peric0;
pinctrl7 = &pinctrl_peric1;
};
arm-pmu {
compatible = "arm,cortex-a78-pmu";
interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
};
xtcxo: clock {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-output-names = "oscclk";
};
/*
* FIXME: Keep the stub clock for serial driver, until proper clock
* driver is implemented.
*/
clock_usi: clock-usi {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <200000000>;
clock-output-names = "usi";
};
cpus: cpus {
#address-cells = <2>;
#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>;
};
};
cluster2 {
core0 {
cpu = <&cpu8>;
};
core1 {
cpu = <&cpu9>;
};
};
};
cpu0: cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x0>;
enable-method = "psci";
};
cpu1: cpu@100 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x100>;
enable-method = "psci";
};
cpu2: cpu@200 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x200>;
enable-method = "psci";
};
cpu3: cpu@300 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x300>;
enable-method = "psci";
};
cpu4: cpu@10000 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x10000>;
enable-method = "psci";
};
cpu5: cpu@10100 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x10100>;
enable-method = "psci";
};
cpu6: cpu@10200 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x10200>;
enable-method = "psci";
};
cpu7: cpu@10300 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x10300>;
enable-method = "psci";
};
cpu8: cpu@20000 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x20000>;
enable-method = "psci";
};
cpu9: cpu@20100 {
device_type = "cpu";
compatible = "arm,cortex-a78ae";
reg = <0x0 0x20100>;
enable-method = "psci";
};
};
psci {
compatible = "arm,psci-1.0";
method = "smc";
};
soc: soc@0 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x0 0x0 0x20000000>;
chipid@10000000 {
compatible = "samsung,exynosautov920-chipid",
"samsung,exynos850-chipid";
reg = <0x10000000 0x24>;
};
gic: interrupt-controller@10400000 {
compatible = "arm,gic-v3";
#interrupt-cells = <3>;
#address-cells = <0>;
interrupt-controller;
reg = <0x10400000 0x10000>,
<0x10460000 0x140000>;
interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
};
syscon_peric0: syscon@10820000 {
compatible = "samsung,exynosautov920-peric0-sysreg",
"syscon";
reg = <0x10820000 0x2000>;
};
pinctrl_peric0: pinctrl@10830000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x10830000 0x10000>;
interrupts = <GIC_SPI 753 IRQ_TYPE_LEVEL_HIGH>;
};
usi_0: usi@108800c0 {
compatible = "samsung,exynosautov920-usi",
"samsung,exynos850-usi";
reg = <0x108800c0 0x20>;
samsung,sysreg = <&syscon_peric0 0x1000>;
samsung,mode = <USI_V2_UART>;
#address-cells = <1>;
#size-cells = <1>;
ranges;
clocks = <&clock_usi>, <&clock_usi>;
clock-names = "pclk", "ipclk";
status = "disabled";
serial_0: serial@10880000 {
compatible = "samsung,exynosautov920-uart",
"samsung,exynos850-uart";
reg = <0x10880000 0xc0>;
interrupts = <GIC_SPI 764 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&uart0_bus>;
clocks = <&clock_usi>, <&clock_usi>;
clock-names = "uart", "clk_uart_baud0";
samsung,uart-fifosize = <256>;
status = "disabled";
};
};
pwm: pwm@109b0000 {
compatible = "samsung,exynosautov920-pwm",
"samsung,exynos4210-pwm";
reg = <0x109b0000 0x100>;
samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
clocks = <&xtcxo>;
clock-names = "timers";
status = "disabled";
};
syscon_peric1: syscon@10c20000 {
compatible = "samsung,exynosautov920-peric1-sysreg",
"syscon";
reg = <0x10c20000 0x2000>;
};
pinctrl_peric1: pinctrl@10c30000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x10c30000 0x10000>;
interrupts = <GIC_SPI 781 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_alive: pinctrl@11850000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x11850000 0x10000>;
wakeup-interrupt-controller {
compatible = "samsung,exynosautov920-wakeup-eint";
};
};
pmu_system_controller: system-controller@11860000 {
compatible = "samsung,exynosautov920-pmu",
"samsung,exynos7-pmu","syscon";
reg = <0x11860000 0x10000>;
};
pinctrl_hsi0: pinctrl@16040000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x16040000 0x10000>;
interrupts = <GIC_SPI 442 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_hsi1: pinctrl@16450000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x16450000 0x10000>;
interrupts = <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_hsi2: pinctrl@16c10000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x16c10000 0x10000>;
interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_hsi2ufs: pinctrl@16d20000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x16d20000 0x10000>;
interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_aud: pinctrl@1a460000 {
compatible = "samsung,exynosautov920-pinctrl";
reg = <0x1a460000 0x10000>;
};
};
timer {
compatible = "arm,armv8-timer";
interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
<GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
<GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
<GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>,
<GIC_PPI 12 IRQ_TYPE_LEVEL_LOW>;
};
};
#include "exynosautov920-pinctrl.dtsi"
......@@ -581,7 +581,7 @@ pdma1: dma-controller@14290000 {
};
serial_0: serial@14180000 {
compatible = "samsung,exynos4210-uart";
compatible = "tesla,fsd-uart", "samsung,exynos4210-uart";
reg = <0x0 0x14180000 0x0 0x100>;
interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 1>, <&pdma1 0>;
......@@ -593,7 +593,7 @@ serial_0: serial@14180000 {
};
serial_1: serial@14190000 {
compatible = "samsung,exynos4210-uart";
compatible = "tesla,fsd-uart", "samsung,exynos4210-uart";
reg = <0x0 0x14190000 0x0 0x100>;
interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&pdma1 3>, <&pdma1 2>;
......@@ -605,12 +605,12 @@ serial_1: serial@14190000 {
};
pmu_system_controller: system-controller@11400000 {
compatible = "samsung,exynos7-pmu", "syscon";
compatible = "tesla,fsd-pmu", "samsung,exynos7-pmu", "syscon";
reg = <0x0 0x11400000 0x0 0x5000>;
};
watchdog_0: watchdog@100a0000 {
compatible = "samsung,exynos7-wdt";
compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
reg = <0x0 0x100a0000 0x0 0x100>;
interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
samsung,syscon-phandle = <&pmu_system_controller>;
......@@ -619,7 +619,7 @@ watchdog_0: watchdog@100a0000 {
};
watchdog_1: watchdog@100b0000 {
compatible = "samsung,exynos7-wdt";
compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
reg = <0x0 0x100b0000 0x0 0x100>;
interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
samsung,syscon-phandle = <&pmu_system_controller>;
......@@ -628,7 +628,7 @@ watchdog_1: watchdog@100b0000 {
};
watchdog_2: watchdog@100c0000 {
compatible = "samsung,exynos7-wdt";
compatible = "tesla,fsd-wdt", "samsung,exynos7-wdt";
reg = <0x0 0x100c0000 0x0 0x100>;
interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
samsung,syscon-phandle = <&pmu_system_controller>;
......@@ -637,7 +637,7 @@ watchdog_2: watchdog@100c0000 {
};
pwm_0: pwm@14100000 {
compatible = "samsung,exynos4210-pwm";
compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
reg = <0x0 0x14100000 0x0 0x100>;
samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
......@@ -647,7 +647,7 @@ pwm_0: pwm@14100000 {
};
pwm_1: pwm@14110000 {
compatible = "samsung,exynos4210-pwm";
compatible = "tesla,fsd-pwm", "samsung,exynos4210-pwm";
reg = <0x0 0x14110000 0x0 0x100>;
samsung,pwm-outputs = <0>, <1>, <2>, <3>;
#pwm-cells = <3>;
......@@ -657,7 +657,7 @@ pwm_1: pwm@14110000 {
};
hsi2c_0: i2c@14200000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14200000 0x0 0x1000>;
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -670,7 +670,7 @@ hsi2c_0: i2c@14200000 {
};
hsi2c_1: i2c@14210000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14210000 0x0 0x1000>;
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -683,7 +683,7 @@ hsi2c_1: i2c@14210000 {
};
hsi2c_2: i2c@14220000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14220000 0x0 0x1000>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -696,7 +696,7 @@ hsi2c_2: i2c@14220000 {
};
hsi2c_3: i2c@14230000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14230000 0x0 0x1000>;
interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -709,7 +709,7 @@ hsi2c_3: i2c@14230000 {
};
hsi2c_4: i2c@14240000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14240000 0x0 0x1000>;
interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -722,7 +722,7 @@ hsi2c_4: i2c@14240000 {
};
hsi2c_5: i2c@14250000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14250000 0x0 0x1000>;
interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -735,7 +735,7 @@ hsi2c_5: i2c@14250000 {
};
hsi2c_6: i2c@14260000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14260000 0x0 0x1000>;
interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......@@ -748,7 +748,7 @@ hsi2c_6: i2c@14260000 {
};
hsi2c_7: i2c@14270000 {
compatible = "samsung,exynos7-hsi2c";
compatible = "tesla,fsd-hsi2c", "samsung,exynos7-hsi2c";
reg = <0x0 0x14270000 0x0 0x1000>;
interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment