diff options
author | Vasanth Ananthan <vasanthananthan@gmail.com> | 2012-11-20 07:02:11 -0500 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2012-11-20 07:02:17 -0500 |
commit | c47d244a646d08e2161b7fa22c5512e7988762ae (patch) | |
tree | 1ba9836448fc41d08e40b30a5d9e3f553bfe5bde | |
parent | d36bb0f0401b60f5484700da84a4cf760cd82fe3 (diff) |
ARM: EXYNOS: DT Support for SATA and SATA PHY
This patch adds Device Nodes for SATA and SATA PHY device.
Signed-off-by: Vasanth Ananthan <vasanth.a@samsung.com>
[kgene.kim@samsung.com: removed address definitions as per comments]
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
-rw-r--r-- | Documentation/devicetree/bindings/ata/exynos-sata-phy.txt | 14 | ||||
-rw-r--r-- | Documentation/devicetree/bindings/ata/exynos-sata.txt | 17 | ||||
-rw-r--r-- | arch/arm/boot/dts/exynos5250-smdk5250.dts | 15 | ||||
-rw-r--r-- | arch/arm/boot/dts/exynos5250.dtsi | 18 | ||||
-rw-r--r-- | arch/arm/mach-exynos/mach-exynos5-dt.c | 6 |
5 files changed, 70 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/ata/exynos-sata-phy.txt b/Documentation/devicetree/bindings/ata/exynos-sata-phy.txt new file mode 100644 index 000000000000..37824fac688e --- /dev/null +++ b/Documentation/devicetree/bindings/ata/exynos-sata-phy.txt | |||
@@ -0,0 +1,14 @@ | |||
1 | * Samsung SATA PHY Controller | ||
2 | |||
3 | SATA PHY nodes are defined to describe on-chip SATA Physical layer controllers. | ||
4 | Each SATA PHY controller should have its own node. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible : compatible list, contains "samsung,exynos5-sata-phy" | ||
8 | - reg : <registers mapping> | ||
9 | |||
10 | Example: | ||
11 | sata@ffe07000 { | ||
12 | compatible = "samsung,exynos5-sata-phy"; | ||
13 | reg = <0xffe07000 0x1000>; | ||
14 | }; | ||
diff --git a/Documentation/devicetree/bindings/ata/exynos-sata.txt b/Documentation/devicetree/bindings/ata/exynos-sata.txt new file mode 100644 index 000000000000..0849f1025e34 --- /dev/null +++ b/Documentation/devicetree/bindings/ata/exynos-sata.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | * Samsung AHCI SATA Controller | ||
2 | |||
3 | SATA nodes are defined to describe on-chip Serial ATA controllers. | ||
4 | Each SATA controller should have its own node. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible : compatible list, contains "samsung,exynos5-sata" | ||
8 | - interrupts : <interrupt mapping for SATA IRQ> | ||
9 | - reg : <registers mapping> | ||
10 | - samsung,sata-freq : <frequency in MHz> | ||
11 | |||
12 | Example: | ||
13 | sata@ffe08000 { | ||
14 | compatible = "samsung,exynos5-sata"; | ||
15 | reg = <0xffe08000 0x1000>; | ||
16 | interrupts = <115>; | ||
17 | }; | ||
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts index 21d4ccdb0a5a..3f8c2ab1d038 100644 --- a/arch/arm/boot/dts/exynos5250-smdk5250.dts +++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts | |||
@@ -55,6 +55,21 @@ | |||
55 | }; | 55 | }; |
56 | }; | 56 | }; |
57 | 57 | ||
58 | i2c@121D0000 { | ||
59 | samsung,i2c-sda-delay = <100>; | ||
60 | samsung,i2c-max-bus-freq = <40000>; | ||
61 | samsung,i2c-slave-addr = <0x38>; | ||
62 | |||
63 | sata-phy { | ||
64 | compatible = "samsung,sata-phy"; | ||
65 | reg = <0x38>; | ||
66 | }; | ||
67 | }; | ||
68 | |||
69 | sata@122F0000 { | ||
70 | samsung,sata-freq = <66>; | ||
71 | }; | ||
72 | |||
58 | i2c@12C80000 { | 73 | i2c@12C80000 { |
59 | status = "disabled"; | 74 | status = "disabled"; |
60 | }; | 75 | }; |
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 670dfdb01a09..e913525a4814 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi | |||
@@ -104,6 +104,17 @@ | |||
104 | interrupts = <0 54 0>; | 104 | interrupts = <0 54 0>; |
105 | }; | 105 | }; |
106 | 106 | ||
107 | sata@122F0000 { | ||
108 | compatible = "samsung,exynos5-sata-ahci"; | ||
109 | reg = <0x122F0000 0x1ff>; | ||
110 | interrupts = <0 115 0>; | ||
111 | }; | ||
112 | |||
113 | sata-phy@12170000 { | ||
114 | compatible = "samsung,exynos5-sata-phy"; | ||
115 | reg = <0x12170000 0x1ff>; | ||
116 | }; | ||
117 | |||
107 | i2c@12C60000 { | 118 | i2c@12C60000 { |
108 | compatible = "samsung,s3c2440-i2c"; | 119 | compatible = "samsung,s3c2440-i2c"; |
109 | reg = <0x12C60000 0x100>; | 120 | reg = <0x12C60000 0x100>; |
@@ -168,6 +179,13 @@ | |||
168 | #size-cells = <0>; | 179 | #size-cells = <0>; |
169 | }; | 180 | }; |
170 | 181 | ||
182 | i2c@121D0000 { | ||
183 | compatible = "samsung,exynos5-sata-phy-i2c"; | ||
184 | reg = <0x121D0000 0x100>; | ||
185 | #address-cells = <1>; | ||
186 | #size-cells = <0>; | ||
187 | }; | ||
188 | |||
171 | spi_0: spi@12d20000 { | 189 | spi_0: spi@12d20000 { |
172 | compatible = "samsung,exynos4210-spi"; | 190 | compatible = "samsung,exynos4210-spi"; |
173 | reg = <0x12d20000 0x100>; | 191 | reg = <0x12d20000 0x100>; |
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c index 4c0f3369abdf..a88c19f5efcc 100644 --- a/arch/arm/mach-exynos/mach-exynos5-dt.c +++ b/arch/arm/mach-exynos/mach-exynos5-dt.c | |||
@@ -64,6 +64,12 @@ static const struct of_dev_auxdata exynos5250_auxdata_lookup[] __initconst = { | |||
64 | "exynos4210-spi.1", NULL), | 64 | "exynos4210-spi.1", NULL), |
65 | OF_DEV_AUXDATA("samsung,exynos4210-spi", EXYNOS5_PA_SPI2, | 65 | OF_DEV_AUXDATA("samsung,exynos4210-spi", EXYNOS5_PA_SPI2, |
66 | "exynos4210-spi.2", NULL), | 66 | "exynos4210-spi.2", NULL), |
67 | OF_DEV_AUXDATA("samsung,exynos5-sata-ahci", 0x122F0000, | ||
68 | "exynos5-sata", NULL), | ||
69 | OF_DEV_AUXDATA("samsung,exynos5-sata-phy", 0x12170000, | ||
70 | "exynos5-sata-phy", NULL), | ||
71 | OF_DEV_AUXDATA("samsung,exynos5-sata-phy-i2c", 0x121D0000, | ||
72 | "exynos5-sata-phy-i2c", NULL), | ||
67 | OF_DEV_AUXDATA("arm,pl330", EXYNOS5_PA_PDMA0, "dma-pl330.0", NULL), | 73 | OF_DEV_AUXDATA("arm,pl330", EXYNOS5_PA_PDMA0, "dma-pl330.0", NULL), |
68 | OF_DEV_AUXDATA("arm,pl330", EXYNOS5_PA_PDMA1, "dma-pl330.1", NULL), | 74 | OF_DEV_AUXDATA("arm,pl330", EXYNOS5_PA_PDMA1, "dma-pl330.1", NULL), |
69 | OF_DEV_AUXDATA("arm,pl330", EXYNOS5_PA_MDMA1, "dma-pl330.2", NULL), | 75 | OF_DEV_AUXDATA("arm,pl330", EXYNOS5_PA_MDMA1, "dma-pl330.2", NULL), |