Skip to content

Commit

Permalink
ARM: dts: add devicetree support for s3c2416-smdk2416
Browse files Browse the repository at this point in the history
Definitions in s3c24xx.dtsi are usable for all s3c24xx
SoCs, but some need to be extended with proper compatible
properties, as can be seen in s3c2416.dtsi.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
  • Loading branch information
Heiko Stuebner authored and Kukjin Kim committed May 20, 2013
1 parent f722406 commit 35aca36
Show file tree
Hide file tree
Showing 8 changed files with 521 additions and 0 deletions.
1 change: 1 addition & 0 deletions arch/arm/boot/dts/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ dtb-$(CONFIG_ARCH_U8500) += snowball.dtb \
hrefprev60.dtb \
hrefv60plus.dtb \
ccu9540.dtb
dtb-$(CONFIG_ARCH_S3C24XX) += s3c2416-smdk2416.dtb
dtb-$(CONFIG_ARCH_SHMOBILE) += emev2-kzm9d.dtb \
r8a7740-armadillo800eva.dtb \
r8a7778-bockw.dtb \
Expand Down
173 changes: 173 additions & 0 deletions arch/arm/boot/dts/s3c2416-pinctrl.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
/*
* Samsung S3C2416 pinctrl settings
*
* Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/

&pinctrl_0 {
/*
* Pin banks
*/

gpa: gpa {
gpio-controller;
#gpio-cells = <2>;
};

gpb: gpb {
gpio-controller;
#gpio-cells = <2>;
};

gpc: gpc {
gpio-controller;
#gpio-cells = <2>;
};

gpd: gpd {
gpio-controller;
#gpio-cells = <2>;
};

gpe: gpe {
gpio-controller;
#gpio-cells = <2>;
};

gpf: gpf {
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
};

gpg: gpg {
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
};

gph: gph {
gpio-controller;
#gpio-cells = <2>;
};

gpj: gpj {
gpio-controller;
#gpio-cells = <2>;
};

gpk: gpk {
gpio-controller;
#gpio-cells = <2>;
};

gpl: gpl {
gpio-controller;
#gpio-cells = <2>;
};

gpm: gpm {
gpio-controller;
#gpio-cells = <2>;
};

/*
* Pin groups
*/

uart0_data: uart0-data {
samsung,pins = "gph-0", "gph-1";
samsung,pin-function = <2>;
};

uart0_fctl: uart0-fctl {
samsung,pins = "gph-8", "gph-9";
samsung,pin-function = <2>;
};

uart1_data: uart1-data {
samsung,pins = "gph-2", "gph-3";
samsung,pin-function = <2>;
};

uart1_fctl: uart1-fctl {
samsung,pins = "gph-10", "gph-11";
samsung,pin-function = <2>;
};

uart2_data: uart2-data {
samsung,pins = "gph-4", "gph-5";
samsung,pin-function = <2>;
};

uart2_fctl: uart2-fctl {
samsung,pins = "gph-6", "gph-7";
samsung,pin-function = <2>;
};

uart3_data: uart3-data {
samsung,pins = "gph-6", "gph-7";
samsung,pin-function = <2>;
};

extuart_clk: extuart-clk {
samsung,pins = "gph-12";
samsung,pin-function = <2>;
};

i2c0_bus: i2c0-bus {
samsung,pins = "gpe-14", "gpe-15";
samsung,pin-function = <2>;
};

spi0_bus: spi0-bus {
samsung,pins = "gpe-11", "gpe-12", "gpe-13";
samsung,pin-function = <2>;
};

sd0_clk: sd0-clk {
samsung,pins = "gpe-5";
samsung,pin-function = <2>;
};

sd0_cmd: sd0-cmd {
samsung,pins = "gpe-6";
samsung,pin-function = <2>;
};

sd0_bus1: sd0-bus1 {
samsung,pins = "gpe-7";
samsung,pin-function = <2>;
};

sd0_bus4: sd0-bus4 {
samsung,pins = "gpe-8", "gpe-9", "gpe-10";
samsung,pin-function = <2>;
};

sd1_cmd: sd1-cmd {
samsung,pins = "gpl-8";
samsung,pin-function = <2>;
};

sd1_clk: sd1-clk {
samsung,pins = "gpl-9";
samsung,pin-function = <2>;
};

sd1_bus1: sd1-bus1 {
samsung,pins = "gpl-0";
samsung,pin-function = <2>;
};

sd1_bus4: sd1-bus4 {
samsung,pins = "gpl-1", "gpl-2", "gpl-3";
samsung,pin-function = <2>;
};
};
72 changes: 72 additions & 0 deletions arch/arm/boot/dts/s3c2416-smdk2416.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/*
* SAMSUNG SMDK2416 board device tree source
*
* Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/

/dts-v1/;
/include/ "s3c2416.dtsi"

/ {
model = "SMDK2416";
compatible = "samsung,s3c2416";

memory {
reg = <0x30000000 0x4000000>;
};

serial@50000000 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart0_data>, <&uart0_fctl>;
};

serial@50004000 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart1_data>, <&uart1_fctl>;
};

serial@50008000 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart2_data>;
};

serial@5000C000 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart3_data>;
};

watchdog@53000000 {
status = "okay";
};

rtc@57000000 {
status = "okay";
};

sdhci@4AC00000 {
pinctrl-names = "default";
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>,
<&sd0_bus1>, <&sd0_bus4>;
bus-width = <4>;
cd-gpios = <&gpf 1 0>;
cd-inverted;
status = "okay";
};

sdhci@4A800000 {
pinctrl-names = "default";
pinctrl-0 = <&sd1_clk>, <&sd1_cmd>,
<&sd1_bus1>, <&sd1_bus4>;
bus-width = <4>;
broken-cd;
status = "okay";
};
};
79 changes: 79 additions & 0 deletions arch/arm/boot/dts/s3c2416.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
/*
* Samsung's S3C2416 SoC device tree source
*
* Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/

/include/ "s3c24xx.dtsi"
/include/ "s3c2416-pinctrl.dtsi"

/ {
model = "Samsung S3C2416 SoC";
compatible = "samsung,s3c2416";

cpus {
#address-cells = <1>;
#size-cells = <0>;

cpu {
compatible = "arm,arm926ejs";
};
};

interrupt-controller@4a000000 {
compatible = "samsung,s3c2416-irq";
};

pinctrl@56000000 {
compatible = "samsung,s3c2416-pinctrl";
};

serial@50000000 {
compatible = "samsung,s3c2440-uart";
};

serial@50004000 {
compatible = "samsung,s3c2440-uart";
};

serial@50008000 {
compatible = "samsung,s3c2440-uart";
};

serial@5000C000 {
compatible = "samsung,s3c2440-uart";
reg = <0x5000C000 0x4000>;
interrupts = <1 18 24 4>, <1 18 25 4>;
status = "disabled";
};

sdhci@4AC00000 {
compatible = "samsung,s3c6410-sdhci";
reg = <0x4AC00000 0x100>;
interrupts = <0 0 21 3>;
status = "disabled";
};

sdhci@4A800000 {
compatible = "samsung,s3c6410-sdhci";
reg = <0x4A800000 0x100>;
interrupts = <0 0 20 3>;
status = "disabled";
};

watchdog@53000000 {
interrupts = <1 9 27 3>;
};

rtc@57000000 {
compatible = "samsung,s3c2416-rtc";
};

i2c@54000000 {
compatible = "samsung,s3c2440-i2c";
};
};
Loading

0 comments on commit 35aca36

Please sign in to comment.