[PATCH v3 05/10] ARM:stixxxx: Add STiH416 SOC support

2013-06-20 Thread Srinivas KANDAGATLA
The STiH416 is advanced HD AVC processor with 3D graphics acceleration
and 1.2-GHz ARM Cortex-A9 SMP CPU.

Signed-off-by: Srinivas Kandagatla 
CC: Stephen Gallimore 
CC: Stuart Menefy 
CC: Arnd Bergmann 
CC: Linus Walleij 
---
 Documentation/arm/sti/stih416-overview.txt |   12 +
 arch/arm/boot/dts/stih416-clock.dtsi   |   41 
 arch/arm/boot/dts/stih416-pinctrl.dtsi |  295 
 arch/arm/boot/dts/stih416.dtsi |   96 
 arch/arm/mach-sti/Kconfig  |9 +
 arch/arm/mach-sti/board-dt.c   |3 +-
 6 files changed, 455 insertions(+), 1 deletions(-)
 create mode 100644 Documentation/arm/sti/stih416-overview.txt
 create mode 100644 arch/arm/boot/dts/stih416-clock.dtsi
 create mode 100644 arch/arm/boot/dts/stih416-pinctrl.dtsi
 create mode 100644 arch/arm/boot/dts/stih416.dtsi

diff --git a/Documentation/arm/sti/stih416-overview.txt 
b/Documentation/arm/sti/stih416-overview.txt
new file mode 100644
index 000..558444c
--- /dev/null
+++ b/Documentation/arm/sti/stih416-overview.txt
@@ -0,0 +1,12 @@
+   STiH416 Overview
+   
+
+Introduction
+
+
+The STiH416 is the next generation of HD, AVC set-top box processors
+for satellite, cable, terrestrial and IP-STB markets.
+
+Features
+- ARM Cortex-A9 1.2 GHz dual core CPU
+- SATA2x2,USB 2.0x3, PCIe, Gbit Ethernet MACx2
diff --git a/arch/arm/boot/dts/stih416-clock.dtsi 
b/arch/arm/boot/dts/stih416-clock.dtsi
new file mode 100644
index 000..7026bf1
--- /dev/null
+++ b/arch/arm/boot/dts/stih416-clock.dtsi
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2013 STMicroelectronics R Limited
+ * 
+ *
+ * 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.
+ */
+/ {
+   clocks {
+   /*
+* Fixed 30MHz oscillator inputs to SoC
+*/
+   CLK_SYSIN: CLK_SYSIN {
+   #clock-cells = <0>;
+   compatible = "fixed-clock";
+   clock-frequency = <3000>;
+   clock-output-names = "CLK_SYSIN";
+   };
+
+   /*
+* ARM Peripheral clock for timers
+*/
+   arm_periph_clk: arm_periph_clk {
+   #clock-cells = <0>;
+   compatible = "fixed-clock";
+   clock-frequency = <6>;
+   };
+
+   /*
+* Bootloader initialized system infrastructure clock for
+* serial devices.
+*/
+   CLK_S_ICN_REG_0: clockgenA0@4 {
+   #clock-cells = <0>;
+   compatible = "fixed-clock";
+   clock-frequency = <1>;
+   clock-output-names = "CLK_S_ICN_REG_0";
+   };
+   };
+};
diff --git a/arch/arm/boot/dts/stih416-pinctrl.dtsi 
b/arch/arm/boot/dts/stih416-pinctrl.dtsi
new file mode 100644
index 000..957b21a
--- /dev/null
+++ b/arch/arm/boot/dts/stih416-pinctrl.dtsi
@@ -0,0 +1,295 @@
+
+/*
+ * Copyright (C) 2013 STMicroelectronics Limited.
+ * Author: Srinivas Kandagatla 
+ *
+ * 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
+ * publishhed by the Free Software Foundation.
+ */
+#include "st-pincfg.h"
+/ {
+
+   aliases {
+   gpio0   = 
+   gpio1   = 
+   gpio2   = 
+   gpio3   = 
+   gpio4   = 
+   gpio5   = 
+   gpio6   = 
+   gpio7   = 
+   gpio8   = 
+   gpio9   = 
+   gpio10  = 
+   gpio11  = 
+   gpio12  = 
+   gpio13  = 
+   gpio14  = 
+   gpio15  = 
+   gpio16  = 
+   gpio17  = 
+   gpio18  = 
+   gpio19  = 
+   gpio20  = 
+   gpio21  = 
+   gpio22  = 
+   gpio23  = 
+   gpio24  = 
+   gpio25  = 
+   gpio26  = 
+   gpio27  = 
+   gpio28  = 
+   gpio29  = 
+   };
+
+   soc {
+   pin-controller-sbc {
+   #address-cells  = <1>;
+   #size-cells = <1>;
+   compatible  = "st,stih416-sbc-pinctrl";
+   st,syscfg   = <_sbc>;
+   ranges  = <0 0xfe61 0x6000>;
+
+   PIO0: gpio@fe61 {
+   gpio-controller;
+   #gpio-cells = <1>;
+   reg = 

[PATCH v3 05/10] ARM:stixxxx: Add STiH416 SOC support

2013-06-20 Thread Srinivas KANDAGATLA
The STiH416 is advanced HD AVC processor with 3D graphics acceleration
and 1.2-GHz ARM Cortex-A9 SMP CPU.

Signed-off-by: Srinivas Kandagatla srinivas.kandaga...@st.com
CC: Stephen Gallimore stephen.gallim...@st.com
CC: Stuart Menefy stuart.men...@st.com
CC: Arnd Bergmann a...@arndb.de
CC: Linus Walleij linus.wall...@linaro.org
---
 Documentation/arm/sti/stih416-overview.txt |   12 +
 arch/arm/boot/dts/stih416-clock.dtsi   |   41 
 arch/arm/boot/dts/stih416-pinctrl.dtsi |  295 
 arch/arm/boot/dts/stih416.dtsi |   96 
 arch/arm/mach-sti/Kconfig  |9 +
 arch/arm/mach-sti/board-dt.c   |3 +-
 6 files changed, 455 insertions(+), 1 deletions(-)
 create mode 100644 Documentation/arm/sti/stih416-overview.txt
 create mode 100644 arch/arm/boot/dts/stih416-clock.dtsi
 create mode 100644 arch/arm/boot/dts/stih416-pinctrl.dtsi
 create mode 100644 arch/arm/boot/dts/stih416.dtsi

diff --git a/Documentation/arm/sti/stih416-overview.txt 
b/Documentation/arm/sti/stih416-overview.txt
new file mode 100644
index 000..558444c
--- /dev/null
+++ b/Documentation/arm/sti/stih416-overview.txt
@@ -0,0 +1,12 @@
+   STiH416 Overview
+   
+
+Introduction
+
+
+The STiH416 is the next generation of HD, AVC set-top box processors
+for satellite, cable, terrestrial and IP-STB markets.
+
+Features
+- ARM Cortex-A9 1.2 GHz dual core CPU
+- SATA2x2,USB 2.0x3, PCIe, Gbit Ethernet MACx2
diff --git a/arch/arm/boot/dts/stih416-clock.dtsi 
b/arch/arm/boot/dts/stih416-clock.dtsi
new file mode 100644
index 000..7026bf1
--- /dev/null
+++ b/arch/arm/boot/dts/stih416-clock.dtsi
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2013 STMicroelectronics RD Limited
+ * stlinux-de...@stlinux.com
+ *
+ * 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.
+ */
+/ {
+   clocks {
+   /*
+* Fixed 30MHz oscillator inputs to SoC
+*/
+   CLK_SYSIN: CLK_SYSIN {
+   #clock-cells = 0;
+   compatible = fixed-clock;
+   clock-frequency = 3000;
+   clock-output-names = CLK_SYSIN;
+   };
+
+   /*
+* ARM Peripheral clock for timers
+*/
+   arm_periph_clk: arm_periph_clk {
+   #clock-cells = 0;
+   compatible = fixed-clock;
+   clock-frequency = 6;
+   };
+
+   /*
+* Bootloader initialized system infrastructure clock for
+* serial devices.
+*/
+   CLK_S_ICN_REG_0: clockgenA0@4 {
+   #clock-cells = 0;
+   compatible = fixed-clock;
+   clock-frequency = 1;
+   clock-output-names = CLK_S_ICN_REG_0;
+   };
+   };
+};
diff --git a/arch/arm/boot/dts/stih416-pinctrl.dtsi 
b/arch/arm/boot/dts/stih416-pinctrl.dtsi
new file mode 100644
index 000..957b21a
--- /dev/null
+++ b/arch/arm/boot/dts/stih416-pinctrl.dtsi
@@ -0,0 +1,295 @@
+
+/*
+ * Copyright (C) 2013 STMicroelectronics Limited.
+ * Author: Srinivas Kandagatla srinivas.kandaga...@st.com
+ *
+ * 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
+ * publishhed by the Free Software Foundation.
+ */
+#include st-pincfg.h
+/ {
+
+   aliases {
+   gpio0   = PIO0;
+   gpio1   = PIO1;
+   gpio2   = PIO2;
+   gpio3   = PIO3;
+   gpio4   = PIO4;
+   gpio5   = PIO40;
+   gpio6   = PIO5;
+   gpio7   = PIO6;
+   gpio8   = PIO7;
+   gpio9   = PIO8;
+   gpio10  = PIO9;
+   gpio11  = PIO10;
+   gpio12  = PIO11;
+   gpio13  = PIO12;
+   gpio14  = PIO30;
+   gpio15  = PIO31;
+   gpio16  = PIO13;
+   gpio17  = PIO14;
+   gpio18  = PIO15;
+   gpio19  = PIO16;
+   gpio20  = PIO17;
+   gpio21  = PIO18;
+   gpio22  = PIO100;
+   gpio23  = PIO101;
+   gpio24  = PIO102;
+   gpio25  = PIO103;
+   gpio26  = PIO104;
+   gpio27  = PIO105;
+   gpio28  = PIO106;
+   gpio29  = PIO107;
+   };
+
+   soc {
+   pin-controller-sbc {
+   #address-cells  = 1;
+   #size-cells = 1;
+   compatible  = st,stih416-sbc-pinctrl;
+