Re: [PATCH 2/2] driver: ata: add new Exynos5250 SATA PHY controller driver

2013-02-06 Thread Vasanth Ananthan
Hi Tomasz,

On Tue, Feb 5, 2013 at 7:53 PM, Tomasz Figa t.f...@samsung.com wrote:

 Hi Vasanth,

 Please see my comments inline. They are basically related to the same
 issues as I pointed in previous version of this patch.

 On Tuesday 29 of January 2013 20:49:18 Vasanth Ananthan wrote:
  Adding platform driver and I2C client driver for SATA PHY controller
  for Samsung Exynos5250.
 
  The PHY controller in Exynos5250 has both the APB interface
  and I2C client interface, hence it requires both a platform driver
  and an I2C client driver. The PHY controller's primary charecteristics
  are handled through the APB interface, facilitated by the platform
  driver and the 40 bit interface should be enabled through the I2C
  interface, facilitated by the I2C client driver.
 
  Further, this PHY controller driver uses PHY framework introduced by
  this patchset. The driver registers its initialization/shutdown call
  back to the framework and corresponding port this PHY controller is
  assciated with gets this PHY and initializes it.
 
  Signed-off-by: Vasanth Ananthan vasant...@samsung.com
  ---
   arch/arm/mach-exynos/include/mach/regs-pmu.h  |3 +
   arch/arm/mach-exynos/include/mach/regs-sata.h |   29 +++
   drivers/ata/Makefile  |2 +-
   drivers/ata/sata_exynos_phy.c |  265
  + 4 files changed, 298 insertions(+), 1
  deletion(-)
   create mode 100644 arch/arm/mach-exynos/include/mach/regs-sata.h
   create mode 100644 drivers/ata/sata_exynos_phy.c
 
  diff --git a/arch/arm/mach-exynos/include/mach/regs-pmu.h
  b/arch/arm/mach-exynos/include/mach/regs-pmu.h index 3f30aa1..fd813d9
  100644
  --- a/arch/arm/mach-exynos/include/mach/regs-pmu.h
  +++ b/arch/arm/mach-exynos/include/mach/regs-pmu.h
  @@ -369,4 +369,7 @@
 
   #define EXYNOS5_OPTION_USE_RETENTION (1  4)
 
  +/* Only for EXYNOS5250 */
  +#define EXYNOS5_SATA_PHY_CONTROL
 S5P_PMUREG(0x0724)
  +
   #endif /* __ASM_ARCH_REGS_PMU_H */
  diff --git a/arch/arm/mach-exynos/include/mach/regs-sata.h
  b/arch/arm/mach-exynos/include/mach/regs-sata.h new file mode 100644
  index 000..80dd564
  --- /dev/null
  +++ b/arch/arm/mach-exynos/include/mach/regs-sata.h
  @@ -0,0 +1,29 @@
  +/*
  + * Copyright (c) 2010-2012 Samsung Electronics Co., Ltd.
  + *  http://www.samsung.com
  + *
  + * EXYNOS - SATA PHY controller definition
  + *
  + * 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.
  +*/
  +
  +#define EXYNOS5_SATA_RESET   0x4
  +#define RESET_CMN_RST_N  (1  1)
  +#define LINK_RESET   0xF
  +
  +#define EXYNOS5_SATA_MODE0   0x10
  +
  +#define EXYNOS5_SATA_CTRL0   0x14
  +#define CTRL0_P0_PHY_CALIBRATED_SEL  (1  9)
  +#define CTRL0_P0_PHY_CALIBRATED  (1  8)
  +
  +#define EXYNOS5_SATA_PHSATA_CTRLM0xE0
  +#define PHCTRLM_REF_RATE (1  1)
  +#define PHCTRLM_HIGH_SPEED   (1  0)
  +
  +#define EXYNOS5_SATA_PHSATA_STATM0xF0
  +#define PHSTATM_PLL_LOCKED   (1  0)
  +
  +#define SATA_PHY_CON_RESET  0xF003F
  diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
  index 3d2d128..7add682 100644
  --- a/drivers/ata/Makefile
  +++ b/drivers/ata/Makefile
  @@ -10,7 +10,7 @@ obj-$(CONFIG_SATA_INIC162X) += sata_inic162x.o
   obj-$(CONFIG_SATA_SIL24) += sata_sil24.o
   obj-$(CONFIG_SATA_DWC)   += sata_dwc_460ex.o
   obj-$(CONFIG_SATA_HIGHBANK)  += sata_highbank.o libahci.o
  -obj-$(CONFIG_SATA_PHY)   += sata_phy.o
  +obj-$(CONFIG_SATA_PHY)   += sata_phy.o sata_exynos_phy.o
 
   # SFF w/ custom DMA
   obj-$(CONFIG_PDC_ADMA)   += pdc_adma.o
  diff --git a/drivers/ata/sata_exynos_phy.c
  b/drivers/ata/sata_exynos_phy.c new file mode 100644
  index 000..f48fd2f
  --- /dev/null
  +++ b/drivers/ata/sata_exynos_phy.c
  @@ -0,0 +1,265 @@
  +/*
  + * Copyright (c) 2010-2012 Samsung Electronics Co., Ltd.
  + *  http://www.samsung.com
  + *
  + * EXYNOS - SATA PHY controller driver
  + *
  + * 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 linux/module.h
  +#include linux/device.h
  +#include linux/platform_device.h
  +#include linux/i2c.h
  +#include linux/clk.h
  +#include linux/delay.h
  +#include linux/dma-mapping.h
  +#include linux/ahci_platform.h
  +#include linux/kernel.h
  +#include linux/slab.h
  +#include linux/list.h
  +#include linux/io.h
  +#include linux/of_address.h
  +
  +#include plat/cpu.h
  +
  +#include mach/irqs.h
  +#include mach/map.h
  +#include mach/regs-pmu.h
  +#include mach/regs-sata.h
  +
  +#include sata_phy.h
  +
  +#define  SATA_TIME_LIMIT 

Re: [PATCH V3 1/5] DMA: PL330: Add new pl330 filter for DT case.

2013-02-06 Thread Arnd Bergmann
On Wednesday 06 February 2013, Padmavathi Venna wrote:
 
 This patch adds a new pl330_dt_filter for DT case to filter the
 required channel based on the new filter params and modifies the
 old filter only for non-DT case as suggested by Arnd Bergmann.
 
 Signed-off-by: Padmavathi Venna padm...@samsung.com

Acked-by: Arnd Bergmann a...@arndb.de
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH V3 5/5] ARM: SAMSUNG: dma: Remove unnecessary code

2013-02-06 Thread Arnd Bergmann
On Wednesday 06 February 2013, Padmavathi Venna wrote:
 
 This patch removes the usage of DMACH_DT_PROP and dt_dmach_prop
 from dma code as the new generic dma dt binding support has been
 added.
 
 Signed-off-by: Padmavathi Venna padm...@samsung.com


Acked-by: Arnd Bergmann a...@arndb.de
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/7] ARM: dts: Add G2D node to exynos4210.dtsi

2013-02-06 Thread Sachin Kamat
Added G2D DT node to Exynos4210.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
 arch/arm/boot/dts/exynos4210.dtsi |8 
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4210.dtsi 
b/arch/arm/boot/dts/exynos4210.dtsi
index 79ba247..3410d5f 100644
--- a/arch/arm/boot/dts/exynos4210.dtsi
+++ b/arch/arm/boot/dts/exynos4210.dtsi
@@ -47,6 +47,14 @@
 0 12 0, 0 13 0, 0 14 0, 0 15 0;
};
 
+   g2d@1280 {
+   compatible = samsung,s5pv210-g2d;
+   reg = 0x1280 0x1000;
+   interrupts = 0 89 0;
+   samsung,power-domain = pd_lcd0;
+   status = disabled;
+   };
+
pmu {
compatible = arm,cortex-a9-pmu;
interrupt-parent = combiner;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 0/7] ARM: dts: Add G2D DT nodes to Exynos4 machines

2013-02-06 Thread Sachin Kamat
This patch series is based on for-next branch of Kukjin Kim's tree
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git

Patches added on top of MFC DT series which has been accepted by Kukjin.
http://www.spinics.net/lists/linux-samsung-soc/msg15419.html

Sachin Kamat (7):
  ARM: dts: Add G2D node to exynos4210.dtsi
  ARM: dts: Add G2D node to SMDKV310
  ARM: dts: Add G2D node to exynos4210-origen
  ARM: dts: Add G2D node to exynos4x12.dtsi
  ARM: dts: Add G2D node to SMDK4412
  ARM: dts: Add G2D node to exynos4412-origen
  ARM: dts: Add Samsung G2D DT bindings documentation

 .../devicetree/bindings/gpu/samsung-g2d.txt|   30 
 arch/arm/boot/dts/exynos4210-origen.dts|4 ++
 arch/arm/boot/dts/exynos4210-smdkv310.dts  |4 ++
 arch/arm/boot/dts/exynos4210.dtsi  |8 +
 arch/arm/boot/dts/exynos4412-origen.dts|4 ++
 arch/arm/boot/dts/exynos4412-smdk4412.dts  |4 ++
 arch/arm/boot/dts/exynos4x12.dtsi  |7 
 7 files changed, 61 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/gpu/samsung-g2d.txt

-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 2/7] ARM: dts: Add G2D node to SMDKV310

2013-02-06 Thread Sachin Kamat
Added G2D DT node to SMDKV310 board.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
 arch/arm/boot/dts/exynos4210-smdkv310.dts |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4210-smdkv310.dts 
b/arch/arm/boot/dts/exynos4210-smdkv310.dts
index 2b1e03a..7bb16aa 100644
--- a/arch/arm/boot/dts/exynos4210-smdkv310.dts
+++ b/arch/arm/boot/dts/exynos4210-smdkv310.dts
@@ -43,6 +43,10 @@
status = okay;
};
 
+   g2d@1280 {
+   status = okay;
+   };
+
codec@1340 {
samsung,mfc-r = 0x4300 0x80;
samsung,mfc-l = 0x5100 0x80;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 3/7] ARM: dts: Add G2D node to exynos4210-origen

2013-02-06 Thread Sachin Kamat
Added G2D DT node to Origen4210 board.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
 arch/arm/boot/dts/exynos4210-origen.dts |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4210-origen.dts 
b/arch/arm/boot/dts/exynos4210-origen.dts
index 052606b..e081d89 100644
--- a/arch/arm/boot/dts/exynos4210-origen.dts
+++ b/arch/arm/boot/dts/exynos4210-origen.dts
@@ -57,6 +57,10 @@
status = okay;
};
 
+   g2d@1280 {
+   status = okay;
+   };
+
codec@1340 {
samsung,mfc-r = 0x4300 0x80;
samsung,mfc-l = 0x5100 0x80;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 4/7] ARM: dts: Add G2D node to exynos4x12.dtsi

2013-02-06 Thread Sachin Kamat
Added G2D DT node to exynos4x12.dtsi file.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
 arch/arm/boot/dts/exynos4x12.dtsi |7 +++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4x12.dtsi 
b/arch/arm/boot/dts/exynos4x12.dtsi
index 022a839..f9247b9 100644
--- a/arch/arm/boot/dts/exynos4x12.dtsi
+++ b/arch/arm/boot/dts/exynos4x12.dtsi
@@ -36,6 +36,13 @@
 0 16 0, 0 17 0, 0 18 0, 0 19 0;
};
 
+   g2d@1080 {
+   compatible = samsung,exynos4212-g2d;
+   reg = 0x1080 0x1000;
+   interrupts = 0 89 0;
+   status = disabled;
+   };
+
pinctrl_0: pinctrl@1140 {
compatible = samsung,exynos4x12-pinctrl;
reg = 0x1140 0x1000;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 5/7] ARM: dts: Add G2D node to SMDK4412

2013-02-06 Thread Sachin Kamat
Added G2D DT node to SMDK4412 board.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
This patch is added on top of below patch:
http://www.mail-archive.com/linux-samsung-soc@vger.kernel.org/msg15148.html
---
 arch/arm/boot/dts/exynos4412-smdk4412.dts |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4412-smdk4412.dts 
b/arch/arm/boot/dts/exynos4412-smdk4412.dts
index 6ae4276..bba53a8 100644
--- a/arch/arm/boot/dts/exynos4412-smdk4412.dts
+++ b/arch/arm/boot/dts/exynos4412-smdk4412.dts
@@ -27,6 +27,10 @@
bootargs =root=/dev/ram0 rw ramdisk=8192 initrd=0x4100,8M 
console=ttySAC1,115200 init=/linuxrc;
};
 
+   g2d@1080 {
+   status = okay;
+   };
+
sdhci@1253 {
bus-width = 4;
pinctrl-0 = sd2_clk sd2_cmd sd2_bus4 sd2_cd;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 6/7] ARM: dts: Add G2D node to exynos4412-origen

2013-02-06 Thread Sachin Kamat
Added G2D DT node to Origen4412 board.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
This patch is added on top of below patch:
http://www.spinics.net/lists/linux-samsung-soc/msg15543.html
---
 arch/arm/boot/dts/exynos4412-origen.dts |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4412-origen.dts 
b/arch/arm/boot/dts/exynos4412-origen.dts
index daa3884..1df7ebd 100644
--- a/arch/arm/boot/dts/exynos4412-origen.dts
+++ b/arch/arm/boot/dts/exynos4412-origen.dts
@@ -36,6 +36,10 @@
enable-active-high;
};
 
+   g2d@1080 {
+   status = okay;
+   };
+
sdhci@1253 {
bus-width = 4;
pinctrl-0 = sd2_clk sd2_cmd sd2_bus4 sd2_cd;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 7/7] ARM: dts: Add Samsung G2D DT bindings documentation

2013-02-06 Thread Sachin Kamat
Added documentaion about G2D bindings.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
 .../devicetree/bindings/gpu/samsung-g2d.txt|   30 
 1 files changed, 30 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/gpu/samsung-g2d.txt

diff --git a/Documentation/devicetree/bindings/gpu/samsung-g2d.txt 
b/Documentation/devicetree/bindings/gpu/samsung-g2d.txt
new file mode 100644
index 000..838b26b
--- /dev/null
+++ b/Documentation/devicetree/bindings/gpu/samsung-g2d.txt
@@ -0,0 +1,30 @@
+* Samsung 2D Graphics Accelerator
+
+Samsung FIMG2D is a 2D graphics accelerator which supports Bit Block Transfer.
+We set the drawing-context registers for configuring the rendering parameters
+and then start rendering.
+The G2D has V4L2 as well as DRM framework based driver support.
+
+Required properties:
+  - compatible : value should be one among the following
+   (a) samsung,s5pv210-g2d for G2D IP present in S5PV210  Exynos4210 SoC
+   (b) samsung,exynos4212-g2d for G2D IP present in Exynos4x12 SoCs
+   (b) samsung,exynos5250-g2d for G2D IP present in Exynos5250 SoC
+
+  - reg : Physical base address of the IP registers and length of memory
+ mapped region.
+
+  - interrupts : G2D interrupt number to the CPU.
+
+Optional properties:
+  - samsung,power-domain : power-domain property defined with a phandle
+  to respective power domain.
+
+Example:
+   g2d@1280 {
+   compatible = samsung,s5pv210-g2d;
+   reg = 0x1280 0x1000;
+   interrupts = 0 89 0;
+   samsung,power-domain = pd_lcd0;
+   status = disabled;
+   };
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] ARM: dts: moving dt binding documents for video devices to common place

2013-02-06 Thread Rahul Sharma
Binding Documents for drm-devices are placed in
Documentation/devicetree/bindings/drm/*. But these devices are common
for v4l framework, hence moved to a common place at
Documentation/devicetree/bindings/video/. 'exynos_' prefix is added to
associate them with exynos soc series.

Signed-off-by: Rahul Sharma rahul.sha...@samsung.com
---
It is base on for-next branch of
git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git
 .../devicetree/bindings/drm/exynos/hdmi.txt| 22 --
 .../devicetree/bindings/drm/exynos/hdmiddc.txt | 12 
 .../devicetree/bindings/drm/exynos/hdmiphy.txt | 12 
 .../devicetree/bindings/drm/exynos/mixer.txt   | 15 ---
 .../devicetree/bindings/video/exynos_hdmi.txt  | 22 ++
 .../devicetree/bindings/video/exynos_hdmiddc.txt   | 12 
 .../devicetree/bindings/video/exynos_hdmiphy.txt   | 12 
 .../devicetree/bindings/video/exynos_mixer.txt | 15 +++
 8 files changed, 61 insertions(+), 61 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/hdmi.txt
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/mixer.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_hdmi.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_mixer.txt

diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt 
b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt
deleted file mode 100644
index 589edee..000
--- a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-Device-Tree bindings for drm hdmi driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-hdmi.
-- reg: physical base address of the hdmi and length of memory mapped
-   region.
-- interrupts: interrupt number to the cpu.
-- hpd-gpio: following information about the hotplug gpio pin.
-   a) phandle of the gpio controller node.
-   b) pin number within the gpio controller.
-   c) pin function mode.
-   d) optional flags and pull up/down.
-   e) drive strength.
-
-Example:
-
-   hdmi {
-   compatible = samsung,exynos5-hdmi;
-   reg = 0x1453 0x10;
-   interrupts = 0 95 0;
-   hpd-gpio = gpx3 7 0xf 1 3;
-   };
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt 
b/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
deleted file mode 100644
index fa166d9..000
--- a/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-Device-Tree bindings for hdmiddc driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-hdmiddc.
-- reg: I2C address of the hdmiddc device.
-
-Example:
-
-   hdmiddc {
-   compatible = samsung,exynos5-hdmiddc;
-   reg = 0x50;
-   };
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt 
b/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
deleted file mode 100644
index 858f4f9..000
--- a/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-Device-Tree bindings for hdmiphy driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-hdmiphy.
-- reg: I2C address of the hdmiphy device.
-
-Example:
-
-   hdmiphy {
-   compatible = samsung,exynos5-hdmiphy;
-   reg = 0x38;
-   };
diff --git a/Documentation/devicetree/bindings/drm/exynos/mixer.txt 
b/Documentation/devicetree/bindings/drm/exynos/mixer.txt
deleted file mode 100644
index 9b2ea03..000
--- a/Documentation/devicetree/bindings/drm/exynos/mixer.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-Device-Tree bindings for mixer driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-mixer.
-- reg: physical base address of the mixer and length of memory mapped
-   region.
-- interrupts: interrupt number to the cpu.
-
-Example:
-
-   mixer {
-   compatible = samsung,exynos5-mixer;
-   reg = 0x1445 0x1;
-   interrupts = 0 94 0;
-   };
diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt 
b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
new file mode 100644
index 000..589edee
--- /dev/null
+++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
@@ -0,0 +1,22 @@
+Device-Tree bindings for drm hdmi driver
+
+Required properties:
+- compatible: value should be samsung,exynos5-hdmi.
+- reg: physical base address of the hdmi and length of memory mapped
+   region.
+- interrupts: interrupt number to the cpu.

[PATCH] ARM: dts: moving dt binding documents for video devices to common place

2013-02-06 Thread Rahul Sharma
Binding Documents for drm-devices are placed in
Documentation/devicetree/bindings/drm/*. But these devices are common
for v4l framework, hence moved to a common place
Documentation/devicetree/bindings/video/. 'exynos_' prefix is added to
associate them with exynos soc series.

Signed-off-by: Rahul Sharma rahul.sha...@samsung.com
---
It is base on for-next branch of
git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git

 .../devicetree/bindings/drm/exynos/hdmi.txt| 22 --
 .../devicetree/bindings/drm/exynos/hdmiddc.txt | 12 
 .../devicetree/bindings/drm/exynos/hdmiphy.txt | 12 
 .../devicetree/bindings/drm/exynos/mixer.txt   | 15 ---
 .../devicetree/bindings/video/exynos_hdmi.txt  | 22 ++
 .../devicetree/bindings/video/exynos_hdmiddc.txt   | 12 
 .../devicetree/bindings/video/exynos_hdmiphy.txt   | 12 
 .../devicetree/bindings/video/exynos_mixer.txt | 15 +++
 8 files changed, 61 insertions(+), 61 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/hdmi.txt
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
 delete mode 100644 Documentation/devicetree/bindings/drm/exynos/mixer.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_hdmi.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_hdmiddc.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_hdmiphy.txt
 create mode 100644 Documentation/devicetree/bindings/video/exynos_mixer.txt

diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt 
b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt
deleted file mode 100644
index 589edee..000
--- a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-Device-Tree bindings for drm hdmi driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-hdmi.
-- reg: physical base address of the hdmi and length of memory mapped
-   region.
-- interrupts: interrupt number to the cpu.
-- hpd-gpio: following information about the hotplug gpio pin.
-   a) phandle of the gpio controller node.
-   b) pin number within the gpio controller.
-   c) pin function mode.
-   d) optional flags and pull up/down.
-   e) drive strength.
-
-Example:
-
-   hdmi {
-   compatible = samsung,exynos5-hdmi;
-   reg = 0x1453 0x10;
-   interrupts = 0 95 0;
-   hpd-gpio = gpx3 7 0xf 1 3;
-   };
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt 
b/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
deleted file mode 100644
index fa166d9..000
--- a/Documentation/devicetree/bindings/drm/exynos/hdmiddc.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-Device-Tree bindings for hdmiddc driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-hdmiddc.
-- reg: I2C address of the hdmiddc device.
-
-Example:
-
-   hdmiddc {
-   compatible = samsung,exynos5-hdmiddc;
-   reg = 0x50;
-   };
diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt 
b/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
deleted file mode 100644
index 858f4f9..000
--- a/Documentation/devicetree/bindings/drm/exynos/hdmiphy.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-Device-Tree bindings for hdmiphy driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-hdmiphy.
-- reg: I2C address of the hdmiphy device.
-
-Example:
-
-   hdmiphy {
-   compatible = samsung,exynos5-hdmiphy;
-   reg = 0x38;
-   };
diff --git a/Documentation/devicetree/bindings/drm/exynos/mixer.txt 
b/Documentation/devicetree/bindings/drm/exynos/mixer.txt
deleted file mode 100644
index 9b2ea03..000
--- a/Documentation/devicetree/bindings/drm/exynos/mixer.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-Device-Tree bindings for mixer driver
-
-Required properties:
-- compatible: value should be samsung,exynos5-mixer.
-- reg: physical base address of the mixer and length of memory mapped
-   region.
-- interrupts: interrupt number to the cpu.
-
-Example:
-
-   mixer {
-   compatible = samsung,exynos5-mixer;
-   reg = 0x1445 0x1;
-   interrupts = 0 94 0;
-   };
diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt 
b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
new file mode 100644
index 000..4c48a83
--- /dev/null
+++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
@@ -0,0 +1,22 @@
+Device-Tree bindings for hdmi driver
+
+Required properties:
+- compatible: value should be samsung,exynos5-hdmi.
+- reg: physical base address of the hdmi and length of memory mapped
+   region.
+- interrupts: interrupt number to the cpu.
+- 

Re: [PATCH] ARM: dts: moving dt binding documents for video devices to common place

2013-02-06 Thread Sylwester Nawrocki
Hi Rahul,

On 02/06/2013 03:57 PM, Rahul Sharma wrote:
 Binding Documents for drm-devices are placed in
 Documentation/devicetree/bindings/drm/*. But these devices are common
 for v4l framework, hence moved to a common place
 Documentation/devicetree/bindings/video/. 'exynos_' prefix is added to
 associate them with exynos soc series.

It looks good to me, I would just use 'exynos-' prefix instead,
this seems to be more common across existing files. Sorry for
the nitpicking..

I suppose you should address the patch to and base on the tree of
the device tree maintainers.

Thanks,
Sylwester
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH V3 4/5] ARM: dts: Add #dma-cells for generic dma binding support

2013-02-06 Thread Rob Herring
On 02/06/2013 12:18 AM, Padmavathi Venna wrote:
 This patch adds #dma-cells property to PL330 DMA controller
 nodes for supporting generic dma dt bindings on samsung
 exynos5250 platform.

The subject doesn't reflect this is for pl330.

 
 Signed-off-by: Padmavathi Venna padm...@samsung.com
 Acked-by: Arnd Bergmann a...@arndb.de
 ---
  .../devicetree/bindings/dma/arm-pl330.txt  |   15 +++
  arch/arm/boot/dts/exynos5250.dtsi  |4 
  2 files changed, 15 insertions(+), 4 deletions(-)
 
 diff --git a/Documentation/devicetree/bindings/dma/arm-pl330.txt 
 b/Documentation/devicetree/bindings/dma/arm-pl330.txt
 index 36e27d5..1fdbff6 100644
 --- a/Documentation/devicetree/bindings/dma/arm-pl330.txt
 +++ b/Documentation/devicetree/bindings/dma/arm-pl330.txt
 @@ -8,6 +8,8 @@ Required properties:
- reg: physical base address of the controller and length of memory mapped
  region.
- interrupts: interrupt number to the cpu.
 +  - #dma-cells: must be 1. used to represent the number of integer
 +cells in the dmas property of client device.

This should be optional in the case of platforms supporting only memory
to memory xfers.

Rob

  
  Optional properties:
  - dma-coherent  : Present if dma operations are coherent
 @@ -18,16 +20,21 @@ Example:
   compatible = arm,pl330, arm,primecell;
   reg = 0x1268 0x1000;
   interrupts = 99;
 + #dma-cells = 1;
   };
  
  Client drivers (device nodes requiring dma transfers from dev-to-mem or
 -mem-to-dev) should specify the DMA channel numbers using a two-value pair
 +mem-to-dev) should specify the DMA channel numbers and dma channel names
  as shown below.
  
[property name]  = [phandle of the dma controller] [dma request id];
 +  [property name]  = [dma channel name]
  
where 'dma request id' is the dma request number which is connected
 -  to the client controller. The 'property name' is recommended to be
 -  of the form name-dma-channel.
 +  to the client controller. The 'property name' 'dmas' and 'dma-names'
 +  as required by the generic dma device tree binding helpers. The dma
 +  names correspond 1:1 with the dma request ids in the dmas property.
  
 -  Example:  tx-dma-channel = pdma0 12;
 +  Example:  dmas = pdma0 12
 + pdma1 11;
 + dma-names = tx, rx;
 diff --git a/arch/arm/boot/dts/exynos5250.dtsi 
 b/arch/arm/boot/dts/exynos5250.dtsi
 index f50b4e8..724f5bd 100644
 --- a/arch/arm/boot/dts/exynos5250.dtsi
 +++ b/arch/arm/boot/dts/exynos5250.dtsi
 @@ -312,24 +312,28 @@
   compatible = arm,pl330, arm,primecell;
   reg = 0x121A 0x1000;
   interrupts = 0 34 0;
 + #dma-cells = 1;
   };
  
   pdma1: pdma@121B {
   compatible = arm,pl330, arm,primecell;
   reg = 0x121B 0x1000;
   interrupts = 0 35 0;
 + #dma-cells = 1;
   };
  
   mdma0: mdma@1080 {
   compatible = arm,pl330, arm,primecell;
   reg = 0x1080 0x1000;
   interrupts = 0 33 0;
 + #dma-cells = 1;
   };
  
   mdma1: mdma@11C1 {
   compatible = arm,pl330, arm,primecell;
   reg = 0x11C1 0x1000;
   interrupts = 0 124 0;
 + #dma-cells = 1;
   };
   };
  
 

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] ARM: smdk2410: Fix compile breakage

2013-02-06 Thread Alexander Shiyan
Symbol S3C_DEV_USB_HOST should be defined to avoid this problem.
  LINKvmlinux
  LD  vmlinux.o
  MODPOST vmlinux.o
WARNING: modpost: Found 2 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
  GEN .version
  CHK include/generated/compile.h
  UPD include/generated/compile.h
  CC  init/version.o
  LD  init/built-in.o
arch/arm/mach-s3c24xx/built-in.o:(.init.data+0x660): undefined reference to 
`s3c_device_ohci'
make: *** [vmlinux] Error 1

Signed-off-by: Alexander Shiyan shc_w...@mail.ru
---
 arch/arm/mach-s3c24xx/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-s3c24xx/Kconfig b/arch/arm/mach-s3c24xx/Kconfig
index ba6c501..8080dc1 100644
--- a/arch/arm/mach-s3c24xx/Kconfig
+++ b/arch/arm/mach-s3c24xx/Kconfig
@@ -350,6 +350,7 @@ config MACH_QT2410
 config ARCH_SMDK2410
bool SMDK2410/A9M2410
select S3C24XX_SMDK
+   select S3C_DEV_USB_HOST
help
  Say Y here if you are using the SMDK2410 or the derived module A9M2410
  http://www.fsforth.de
-- 
1.7.12.4

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v3 1/3] drm/exynos: Get HDMI version from device tree

2013-02-06 Thread Olof Johansson
On Tue, Feb 5, 2013 at 6:56 PM, 김승우 sw0312@samsung.com wrote:


 On 2013년 02월 06일 09:56, Sean Paul wrote:
 On Tue, Feb 5, 2013 at 4:42 PM, Stephen Warren swar...@wwwdotorg.org wrote:
 On 02/05/2013 05:37 PM, Sean Paul wrote:
 On Tue, Feb 5, 2013 at 4:22 PM, Stephen Warren swar...@wwwdotorg.org 
 wrote:
 n 02/05/2013 04:42 PM, Sean Paul wrote:
 Use the compatible string in the device tree to determine which
 registers/functions to use in the HDMI driver. Also changes the
 references from v13 to 4210 and v14 to 4212 to reflect the IP
 block version instead of the HDMI version.

 diff --git a/Documentation/devicetree/bindings/drm/exynos/hdmi.txt 
 b/Documentation/devicetree/bindings/drm/exynos/hdmi.txt

 Binding looks sane to me.

 diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c 
 b/drivers/gpu/drm/exynos/exynos_hdmi.c

  #ifdef CONFIG_OF
  static struct of_device_id hdmi_match_types[] = {
   {
 - .compatible = samsung,exynos5-hdmi,
 - .data   = (void *)HDMI_TYPE14,
 + .compatible = samsung,exynos4-hdmi,
   }, {
   /* end node */
   }

 Why not fill in all the base compatible values there (I think you need
 this anyway so that DTs don't all have to be compatible with
 samsung,exynos4-hdmi), with .data containing the HDMI_VER_EXYNOS*
 values, then ...


 At the moment, all DTs have to be compatible with exynos4-hdmi since
 it provides the base for the current driver. The driver uses 4210 and
 4212 to differentiate between different register addresses and
 features, but most things are just exynos4-hdmi compatible.

 The DT nodes should include only the compatible values that the HW is
 actually compatible with. If the HW isn't compatible with exynos4-hdmi,
 that value shouldn't be in the compatible property, but instead whatever
 the base value that the HW really is compatible with. The driver can
 support multiple base compatible values from this table.


 All devices that use this driver are compatible, at some level, with
 exynos4-hdmi, so I think its usage is correct here.

 @@ -2218,17 +2217,18 @@ static int hdmi_probe(struct platform_device 
 *pdev)

 +
 + if (of_device_is_compatible(dev-of_node, 
 samsung,exynos4210-hdmi))
 + hdata-version |= HDMI_VER_EXYNOS4210;
 + if (of_device_is_compatible(dev-of_node, 
 samsung,exynos4212-hdmi))
 + hdata-version |= HDMI_VER_EXYNOS4212;
 + if (of_device_is_compatible(dev-of_node, 
 samsung,exynos5250-hdmi))
 + hdata-version |= HDMI_VER_EXYNOS5250;

 Instead of that, do roughly:

 match = of_match_device(hdmi_match_types, pdev-dev);
 if (match)
 hdata-version |= (int)match-data;

 That way, it's all table-based. Any future additions to
 hdmi_match_types[] won't require another if statement to be added to
 probe().

 I don't think it's that easy. of_match_device returns the first match
 from the device table, so I'd still need to iterate through the
 matches. I could still break this out into a table, but I don't think
 of_match_device is the right way to probe it.

 You shouldn't have to iterate over multiple matches. of_match_device()
 is supposed to return the match for the first entry in the compatible
 property, then if there was no match, move on to looking at the next
 entry in the compatible property, etc. In practice, I think it's still
 not implemented quite correctly for this, but you can make it work by
 putting the newest compatible value first in the match table.

 I think the only way that works is if you hardcode the compatible
 versions in the driver, like this:

 static struct of_device_id hdmi_match_types[] = {
 {
 .compatible = samsung,exynos5250-hdmi,
 .data = (void *)(HDMI_VER_EXYNOS5250 | HDMI_VER_EXYNOS4212);
 }, {
 .compatible = samsung,exynos4212-hdmi,
 .data = (void *)HDMI_VER_EXYNOS4212;
 }, {
 .compatible = samsung,exynos4210-hdmi,
 .data = (void *)HDMI_VER_EXYNOS4210;
 }, {
 /* end node */
 }
 };

 Actually, I can't understand why there is HDMI_VER_EXYNOS5250 because it
 is not used anywhere in your patch. I'm not sure I missed something from
 your v2 patch thread, but to me, just hdmi version or hdmi ip version
 can be used as data field of struct of_device_id as like your v2 patch
 set. and then of_match_device() can be used without | in data field.

 If I have missed some point from v2 thread, please let me know.


Exactly. I think that's causing some of this confusion. It'd be easier
to just leave any 5250 reference out of this patch. The _only_ place
5250 should be used now is in the 5250 dtsi file, as the most specific
compatible field. Compatible there should be, in order:

5250, 4212, 4

(or maybe not 4 at all, if the driver can't successfully drive the
hardware in degraded mode using the HDMI 1.3 register maps, etc).

... But there's no need to 

[PATCH 1/3] cpufreq: exynos: Remove error return even if no soc found

2013-02-06 Thread Amit Daniel Kachhap
This change is needed for adding different type of cpufreq driver
and support single binary image.

Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
---
 drivers/cpufreq/exynos-cpufreq.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/cpufreq/exynos-cpufreq.c b/drivers/cpufreq/exynos-cpufreq.c
index 7012ea8..9d3690a 100644
--- a/drivers/cpufreq/exynos-cpufreq.c
+++ b/drivers/cpufreq/exynos-cpufreq.c
@@ -272,7 +272,7 @@ static int __init exynos_cpufreq_init(void)
else if (soc_is_exynos5250())
ret = exynos5250_cpufreq_init(exynos_info);
else
-   pr_err(%s: CPU type not found\n, __func__);
+   return 0;
 
if (ret)
goto err_vdd_arm;
-- 
1.7.10.4

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 2/3] cpufreq: exynos: Adding cpufreq driver for exynos5440

2013-02-06 Thread Amit Daniel Kachhap
This patch adds dvfs support for exynos5440 SOC. The nature of exynos5440
clock controller is different from previous exynos controllers so not using
the common exynos cpufreq framework. Also, the device tree parsing is added
to get different parameters like frequency, voltage etc.

Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
---
 .../bindings/cpufreq/cpufreq-exynos5440.txt|   24 ++
 drivers/cpufreq/Kconfig.arm|8 +
 drivers/cpufreq/Makefile   |1 +
 drivers/cpufreq/exynos5440-cpufreq.c   |  448 
 4 files changed, 481 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt
 create mode 100644 drivers/cpufreq/exynos5440-cpufreq.c

diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt 
b/Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt
new file mode 100644
index 000..96cb0ed
--- /dev/null
+++ b/Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt
@@ -0,0 +1,24 @@
+
+Exynos5440 cpufreq driver
+---
+
+Exynos5440 SoC cpufreq driver for CPU frequency scaling.
+
+Required properties:
+- interrupts: Interrupt to know the completion of cpu frequency change.
+- cpufreq_tbl: Table of frequencies and voltage CPU could be transitioned into,
+   in the decreasing order. Frequency should be in KHZ units and voltage
+   should be in microvolts.
+
+All the required listed above must be defined under node cpufreq.
+
+Example:
+
+   cpufreq@16 {
+   compatible = samsung,exynos5440-cpufreq;
+   reg = 0x16 0x1000;
+   interrupts = 0 57 0;
+   cpufreq_tbl =  120 1025000
+   100 975000
+   80  925000 ;
+   };
diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
index a0b3661..554756f 100644
--- a/drivers/cpufreq/Kconfig.arm
+++ b/drivers/cpufreq/Kconfig.arm
@@ -77,6 +77,14 @@ config ARM_EXYNOS5250_CPUFREQ
  This adds the CPUFreq driver for Samsung EXYNOS5250
  SoC.
 
+config ARM_EXYNOS5440_CPUFREQ
+   def_bool SOC_EXYNOS5440
+   help
+ This adds the CPUFreq driver for Samsung EXYNOS5440
+ SoC. The nature of exynos5440 clock controller is
+ different than previous exynos controllers so not using
+ the common exynos framework.
+
 config ARM_SPEAR_CPUFREQ
bool SPEAr CPUFreq support
depends on PLAT_SPEAR
diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile
index fadc4d4..5159ba4 100644
--- a/drivers/cpufreq/Makefile
+++ b/drivers/cpufreq/Makefile
@@ -50,6 +50,7 @@ obj-$(CONFIG_ARM_EXYNOS_CPUFREQ)  += exynos-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS4210_CPUFREQ)   += exynos4210-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS4X12_CPUFREQ)   += exynos4x12-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS5250_CPUFREQ)   += exynos5250-cpufreq.o
+obj-$(CONFIG_ARM_EXYNOS5440_CPUFREQ)   += exynos5440-cpufreq.o
 obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ) += omap-cpufreq.o
 obj-$(CONFIG_ARM_SPEAR_CPUFREQ)+= spear-cpufreq.o
 
diff --git a/drivers/cpufreq/exynos5440-cpufreq.c 
b/drivers/cpufreq/exynos5440-cpufreq.c
new file mode 100644
index 000..41d39e2
--- /dev/null
+++ b/drivers/cpufreq/exynos5440-cpufreq.c
@@ -0,0 +1,448 @@
+/*
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd.
+ * http://www.samsung.com
+ *
+ * Amit Daniel Kachhap amit.dan...@samsung.com
+ *
+ * EXYNOS5440 - CPU frequency scaling support
+ *
+ * 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 linux/clk.h
+#include linux/cpufreq.h
+#include linux/err.h
+#include linux/interrupt.h
+#include linux/io.h
+#include linux/of_address.h
+#include linux/of_irq.h
+#include linux/slab.h
+
+/*Register definations*/
+#define XMU_DVFS_CTRL  0x0060
+#define XMU_PMU_P0_7   0x0064
+#define XMU_C0_3_PSTATE0x0090
+#define XMU_P_LIMIT0x00A0
+#define XMU_P_STATUS   0x00A4
+#define XMU_PMUEVTEN   0x00D0
+#define XMU_PMUIRQEN   0x00D4
+#define XMU_PMUIRQ 0x00D8
+
+/*PMU mask and shift definations*/
+#define P_VALUE_MASK   0x7
+
+#define XMU_DVFS_CTRL_EN_SHIFT 0
+
+#define P0_7_CPUCLKDEV_SHIFT   21
+#define P0_7_CPUCLKDEV_MASK0x7
+#define P0_7_ATBCLKDEV_SHIFT   18
+#define P0_7_ATBCLKDEV_MASK0x7
+#define P0_7_CSCLKDEV_SHIFT15
+#define P0_7_CSCLKDEV_MASK 0x7
+#define P0_7_CPUEMA_SHIFT  28
+#define P0_7_CPUEMA_MASK   0xf
+#define P0_7_L2EMA_SHIFT   24
+#define P0_7_L2EMA_MASK0xf
+#define P0_7_VDD_SHIFT 8
+#define P0_7_VDD_MASK  0x7f
+#define P0_7_FREQ_SHIFT0
+#define P0_7_FREQ_MASK 0xff
+
+#define C0_3_PSTATE_VALID_SHIFT

[PATCH 3/3] dts: Add cpufreq controller node for Exynos5440 SoC

2013-02-06 Thread Amit Daniel Kachhap
Add cpufreq controller device node for Exynos5440 SoC for passing
parameters like controller base address, interrupt and cpufreq
table.

Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
---
 arch/arm/boot/dts/exynos5440.dtsi |9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5440.dtsi 
b/arch/arm/boot/dts/exynos5440.dtsi
index 024269d..b20b517 100644
--- a/arch/arm/boot/dts/exynos5440.dtsi
+++ b/arch/arm/boot/dts/exynos5440.dtsi
@@ -63,6 +63,15 @@
 
};
 
+   cpufreq@16 {
+   compatible = samsung,exynos5440-cpufreq;
+   reg = 0x16 0x1000;
+   interrupts = 0 57 0;
+   cpufreq_tbl =  120 1025000
+   100 975000
+   80  925000 ;
+   };
+
serial@B {
compatible = samsung,exynos4210-uart;
reg = 0xB 0x1000;
-- 
1.7.10.4

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 01/10] s5p-csis: Add device tree support

2013-02-06 Thread Stephen Warren
On 02/01/2013 12:09 PM, Sylwester Nawrocki wrote:
 s5p-csis is platform device driver for MIPI-CSI frontend to the FIMC
 device. This patch support for binding the driver to the MIPI-CSIS
 devices instantiated from device tree and for parsing all SoC and
 board specific properties.

 diff --git 
 a/Documentation/devicetree/bindings/media/soc/samsung-mipi-csis.txt 
 b/Documentation/devicetree/bindings/media/soc/samsung-mipi-csis.txt

 +Optional properties:
 +
 +- clock-frequency : The IP's main (system bus) clock frequency in Hz, default
 + value when this property is not specified is 166 MHz;

Shouldn't this be a clocks property, so that the driver can call
clk_get(), clk_prepare_enable(), clk_get_rate(), etc. on it?

Other than that this binding seems fine to me at a quick glance.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 02/10] s5p-fimc: Add device tree support for FIMC devices

2013-02-06 Thread Stephen Warren
On 02/01/2013 12:09 PM, Sylwester Nawrocki wrote:
 This patch adds support for FIMC devices instantiated from devicetree
 for S5PV210 and Exynos4 SoCs. The FIMC IP features include colorspace
 conversion and scaling (mem-to-mem) and parallel/MIPI CSI2 bus video
 capture interface.
 
 Multiple SoC revisions specific parameters are defined statically in
 the driver and are used for both dt and non-dt. The driver's static
 data is selected based on the compatible property. Previously the
 platform device name was used to match driver data and a specific
 SoC/IP version.
 
 Aliases are used to determine an index of the IP which is essential
 for linking FIMC IP with other entities, like MIPI-CSIS (the MIPI
 CSI-2 bus frontend) or FIMC-LITE and FIMC-IS ISP.

 diff --git a/Documentation/devicetree/bindings/media/soc/samsung-fimc.txt 
 b/Documentation/devicetree/bindings/media/soc/samsung-fimc.txt

 +Samsung S5P/EXYNOS SoC Camera Subsystem (FIMC)
 +--
 +
 +The Exynos Camera subsystem comprises of multiple sub-devices that are
 +represented by separate platform devices. Some of the IPs come in different

platform devices is a rather Linux-centric term, and DT bindings
should be OS-agnostic. Perhaps use device tree nodes here?

 +variants across the SoC revisions (FIMC) and some remain mostly unchanged
 +(MIPI CSIS, FIMC-LITE).
 +
 +All those sub-subdevices are defined as parent nodes of the common device

s/parent nodes/child node/ I think?

 +For every fimc node a numbered alias should be present in the aliases node.
 +Aliases are of the form fimcn, where n is an integer (0...N) specifying
 +the IP's instance index.

Why? Isn't it up to the DT author whether they care if each fimc node is
assigned a specific identification v.s. whether identification is
assigned automatically?

 +Optional properties
 +
 + - clock-frequency - maximum FIMC local clock (LCLK) frequency

Again, I'd expect a clocks property here instead.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 05/10] s5p-fimc: Add device tree based sensors registration

2013-02-06 Thread Stephen Warren
On 02/01/2013 12:09 PM, Sylwester Nawrocki wrote:
 The sensor (I2C and/or SPI client) devices are instantiated by their
 corresponding control bus drivers. Since the I2C client's master clock
 is often provided by a video bus receiver (host interface) or other
 than I2C/SPI controller device, the drivers of those client devices
 are not accessing hardware in their driver's probe() callback. Instead,
 after enabling clock, the host driver calls back into a sub-device
 when it wants to activate them. This pattern is used by some in-tree
 drivers and this patch also uses it for DT case. This patch is intended
 as a first step for adding device tree support to the S5P/Exynos SoC
 camera drivers. The second one is adding support for asynchronous
 sub-devices registration and clock control from sub-device driver
 level. The bindings shall not change when asynchronous probing support
 is added.

 diff --git a/Documentation/devicetree/bindings/media/soc/samsung-fimc.txt 
 b/Documentation/devicetree/bindings/media/soc/samsung-fimc.txt

 +The sensor device nodes should be added as their control bus controller

I think as should be to?

 +(e.g. I2C0) child nodes and linked to a port node in the csis or 
 parallel-ports
 +node, using common the common video interfaces bindings, i.e. port/endpoint
 +node pairs. The implementation of this binding requires clock-frequency
 +property to be present in the sensor device nodes.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 06/10] s5p-fimc: Use pinctrl API for camera ports configuration

2013-02-06 Thread Stephen Warren
On 02/01/2013 12:09 PM, Sylwester Nawrocki wrote:
 Before the camera ports can be used the pinmux needs to be configured
 properly. This patch adds a function to set the camera ports pinctrl
 to a default state within the media driver's probe().
 The camera port(s) are then configured for the video bus operation.

 diff --git a/Documentation/devicetree/bindings/media/soc/samsung-fimc.txt 
 b/Documentation/devicetree/bindings/media/soc/samsung-fimc.txt

 +- pinctrl-names: pinctrl names for camera port pinmux control, at least
 +  default needs to be specified.
 +- pinctrl-0...N : pinctrl properties corresponding to pinctrl-names
 +

A reference to the binding document describing the pin control bindings
would be appropriate here. Given that reference, I'm not sure if
spelling out the property names makes sense since it feels a little like
duplication; an alternative might be simply:

The pinctrl bindings defined in ../../../pinctrl/pinctrl-bindings.txt
must be used to define a pinctrl state named default.

However, this isn't a big deal; it's fine either way.

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] ARM: dts: moving dt binding documents for video devices to common place

2013-02-06 Thread Rahul Sharma
Hi Sylwester,

On Wed, Feb 6, 2013 at 8:20 PM, Sylwester Nawrocki
s.nawro...@samsung.com wrote:
 Hi Rahul,

 On 02/06/2013 03:57 PM, Rahul Sharma wrote:
 Binding Documents for drm-devices are placed in
 Documentation/devicetree/bindings/drm/*. But these devices are common
 for v4l framework, hence moved to a common place
 Documentation/devicetree/bindings/video/. 'exynos_' prefix is added to
 associate them with exynos soc series.

 It looks good to me, I would just use 'exynos-' prefix instead,
 this seems to be more common across existing files. Sorry for
 the nitpicking..

 I suppose you should address the patch to and base on the tree of
 the device tree maintainers.

 Thanks,
 Sylwester

I mentioned it in the patch. Please let me know if it needs to be re-based
to some other tree.

 Signed-off-by: Rahul Sharma rahul.sha...@samsung.com
 ---
 It is base on for-next branch of
 git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git

  .../devicetree/bindings/drm/exynos/hdmi.txt| 22 
 --
  .../devicetree/bindings/drm/exynos/hdmiddc.txt | 12 
  .../devicetree/bindings/drm/exynos/hdmiphy.txt | 12 

 --

Regards,
Rahul Sharma,
email to: rahul.sha...@samsung.com
Samsung India.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 3/3] dts: Add cpufreq controller node for Exynos5440 SoC

2013-02-06 Thread Inderpal Singh
On 7 February 2013 01:09, Amit Daniel Kachhap amit.dan...@samsung.com wrote:
 Add cpufreq controller device node for Exynos5440 SoC for passing
 parameters like controller base address, interrupt and cpufreq
 table.

 Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
 ---
  arch/arm/boot/dts/exynos5440.dtsi |9 +
  1 file changed, 9 insertions(+)

 diff --git a/arch/arm/boot/dts/exynos5440.dtsi 
 b/arch/arm/boot/dts/exynos5440.dtsi
 index 024269d..b20b517 100644
 --- a/arch/arm/boot/dts/exynos5440.dtsi
 +++ b/arch/arm/boot/dts/exynos5440.dtsi
 @@ -63,6 +63,15 @@

 };

 +   cpufreq@16 {
 +   compatible = samsung,exynos5440-cpufreq;
 +   reg = 0x16 0x1000;
 +   interrupts = 0 57 0;
 +   cpufreq_tbl =  120 1025000
 +   100 975000
 +   80  925000 ;
 +   };
 +

I think cpufreq_tbl should be part of the cpu node as it's the
property of the cpu.
Please refer cpufreq-cpu0 and spear-cpufreq.

 serial@B {
 compatible = samsung,exynos4210-uart;
 reg = 0xB 0x1000;
 --
 1.7.10.4

 --
 To unsubscribe from this list: send the line unsubscribe linux-samsung-soc 
 in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/3] cpufreq: exynos: Adding cpufreq driver for exynos5440

2013-02-06 Thread Inderpal Singh
On 7 February 2013 01:09, Amit Daniel Kachhap amit.dan...@samsung.com wrote:
 This patch adds dvfs support for exynos5440 SOC. The nature of exynos5440
 clock controller is different from previous exynos controllers so not using
 the common exynos cpufreq framework. Also, the device tree parsing is added
 to get different parameters like frequency, voltage etc.

 Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
 ---
  .../bindings/cpufreq/cpufreq-exynos5440.txt|   24 ++
  drivers/cpufreq/Kconfig.arm|8 +
  drivers/cpufreq/Makefile   |1 +
  drivers/cpufreq/exynos5440-cpufreq.c   |  448 
 
  4 files changed, 481 insertions(+)
  create mode 100644 
 Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt
  create mode 100644 drivers/cpufreq/exynos5440-cpufreq.c

 diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt 
 b/Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt
 new file mode 100644
 index 000..96cb0ed
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/cpufreq/cpufreq-exynos5440.txt
 @@ -0,0 +1,24 @@
 +
 +Exynos5440 cpufreq driver
 +---
 +
 +Exynos5440 SoC cpufreq driver for CPU frequency scaling.
 +
 +Required properties:
 +- interrupts: Interrupt to know the completion of cpu frequency change.
 +- cpufreq_tbl: Table of frequencies and voltage CPU could be transitioned 
 into,
 +   in the decreasing order. Frequency should be in KHZ units and voltage
 +   should be in microvolts.
 +
 +All the required listed above must be defined under node cpufreq.
 +
 +Example:
 +
 +   cpufreq@16 {
 +   compatible = samsung,exynos5440-cpufreq;
 +   reg = 0x16 0x1000;
 +   interrupts = 0 57 0;
 +   cpufreq_tbl =  120 1025000
 +   100 975000
 +   80  925000 ;
 +   };
 diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
 index a0b3661..554756f 100644
 --- a/drivers/cpufreq/Kconfig.arm
 +++ b/drivers/cpufreq/Kconfig.arm
 @@ -77,6 +77,14 @@ config ARM_EXYNOS5250_CPUFREQ
   This adds the CPUFreq driver for Samsung EXYNOS5250
   SoC.

 +config ARM_EXYNOS5440_CPUFREQ
 +   def_bool SOC_EXYNOS5440
 +   help
 + This adds the CPUFreq driver for Samsung EXYNOS5440
 + SoC. The nature of exynos5440 clock controller is
 + different than previous exynos controllers so not using
 + the common exynos framework.
 +
  config ARM_SPEAR_CPUFREQ
 bool SPEAr CPUFreq support
 depends on PLAT_SPEAR
 diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile
 index fadc4d4..5159ba4 100644
 --- a/drivers/cpufreq/Makefile
 +++ b/drivers/cpufreq/Makefile
 @@ -50,6 +50,7 @@ obj-$(CONFIG_ARM_EXYNOS_CPUFREQ)  += exynos-cpufreq.o
  obj-$(CONFIG_ARM_EXYNOS4210_CPUFREQ)   += exynos4210-cpufreq.o
  obj-$(CONFIG_ARM_EXYNOS4X12_CPUFREQ)   += exynos4x12-cpufreq.o
  obj-$(CONFIG_ARM_EXYNOS5250_CPUFREQ)   += exynos5250-cpufreq.o
 +obj-$(CONFIG_ARM_EXYNOS5440_CPUFREQ)   += exynos5440-cpufreq.o
  obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ) += omap-cpufreq.o
  obj-$(CONFIG_ARM_SPEAR_CPUFREQ)+= spear-cpufreq.o

 diff --git a/drivers/cpufreq/exynos5440-cpufreq.c 
 b/drivers/cpufreq/exynos5440-cpufreq.c
 new file mode 100644
 index 000..41d39e2
 --- /dev/null
 +++ b/drivers/cpufreq/exynos5440-cpufreq.c
 @@ -0,0 +1,448 @@
 +/*
 + * Copyright (c) 2013 Samsung Electronics Co., Ltd.
 + * http://www.samsung.com
 + *
 + * Amit Daniel Kachhap amit.dan...@samsung.com
 + *
 + * EXYNOS5440 - CPU frequency scaling support
 + *
 + * 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 linux/clk.h
 +#include linux/cpufreq.h
 +#include linux/err.h
 +#include linux/interrupt.h
 +#include linux/io.h
 +#include linux/of_address.h
 +#include linux/of_irq.h
 +#include linux/slab.h
 +
 +/*Register definations*/
 +#define XMU_DVFS_CTRL  0x0060
 +#define XMU_PMU_P0_7   0x0064
 +#define XMU_C0_3_PSTATE0x0090
 +#define XMU_P_LIMIT0x00A0
 +#define XMU_P_STATUS   0x00A4
 +#define XMU_PMUEVTEN   0x00D0
 +#define XMU_PMUIRQEN   0x00D4
 +#define XMU_PMUIRQ 0x00D8
 +
 +/*PMU mask and shift definations*/
 +#define P_VALUE_MASK   0x7
 +
 +#define XMU_DVFS_CTRL_EN_SHIFT 0
 +
 +#define P0_7_CPUCLKDEV_SHIFT   21
 +#define P0_7_CPUCLKDEV_MASK0x7
 +#define P0_7_ATBCLKDEV_SHIFT   18
 +#define P0_7_ATBCLKDEV_MASK0x7
 +#define P0_7_CSCLKDEV_SHIFT15
 +#define P0_7_CSCLKDEV_MASK 0x7
 +#define P0_7_CPUEMA_SHIFT  28
 +#define P0_7_CPUEMA_MASK   0xf
 +#define P0_7_L2EMA_SHIFT   24
 +#define 

[PATCH 1/5] ARM: dts: exynos5250-arndale: Add node entry for gpio-buttons

2013-02-06 Thread Tushar Behera
Added GPIO buttons DT node to Arndale board file.

Signed-off-by: Tushar Behera tushar.beh...@linaro.org
Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
---
This series is based on for-next branch of Kukjin Kim's tree
and added on top of the below patch:
https://patchwork.kernel.org/patch/2042451/
---
 arch/arm/boot/dts/exynos5250-arndale.dts |   48 ++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
b/arch/arm/boot/dts/exynos5250-arndale.dts
index 63572f9..9ce40df 100644
--- a/arch/arm/boot/dts/exynos5250-arndale.dts
+++ b/arch/arm/boot/dts/exynos5250-arndale.dts
@@ -119,4 +119,52 @@
spi_2: spi@12d4 {
status = disabled;
};
+
+   gpio_keys {
+   compatible = gpio-keys;
+   #address-cells = 1;
+   #size-cells = 0;
+
+   menu {
+   label = SW-TACT2;
+   gpios = gpx1 4 0 0x1 2;
+   linux,code = 139;
+   gpio-key,wakeup;
+   };
+
+   home {
+   label = SW-TACT3;
+   gpios = gpx1 5 0 0x1 2;
+   linux,code = 102;
+   gpio-key,wakeup;
+   };
+
+   up {
+   label = SW-TACT4;
+   gpios = gpx1 6 0 0x1 2;
+   linux,code = 103;
+   gpio-key,wakeup;
+   };
+
+   down {
+   label = SW-TACT5;
+   gpios = gpx1 7 0 0x1 2;
+   linux,code = 108;
+   gpio-key,wakeup;
+   };
+
+   back {
+   label = SW-TACT6;
+   gpios = gpx2 0 0 0x1 2;
+   linux,code = 158;
+   gpio-key,wakeup;
+   };
+
+   wakeup {
+   label = SW-TACT7;
+   gpios = gpx2 1 0 0x1 2;
+   linux,code = 143;
+   gpio-key,wakeup;
+   };
+   };
 };
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 2/5] ARM: dts: exynos5250-arndale: Add PMIC node entry

2013-02-06 Thread Tushar Behera
From: Amit Daniel Kachhap amit.dan...@samsung.com

Added S5M8767 PMIC DT nodes to Arndale board.

Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
Signed-off-by: Tushar Behera tushar.beh...@linaro.org
---
 arch/arm/boot/dts/exynos5250-arndale.dts |  213 +-
 1 files changed, 212 insertions(+), 1 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
b/arch/arm/boot/dts/exynos5250-arndale.dts
index 9ce40df..b40a02f 100644
--- a/arch/arm/boot/dts/exynos5250-arndale.dts
+++ b/arch/arm/boot/dts/exynos5250-arndale.dts
@@ -25,7 +25,218 @@
};
 
i2c@12C6 {
-   status = disabled;
+   status = okay;
+   samsung,i2c-sda-delay = 100;
+   samsung,i2c-max-bus-freq = 2;
+   samsung,i2c-slave-addr = 0x66;
+   gpios = gpb3 0 2 3 0,
+   gpb3 1 2 3 0;
+
+   s5m8767_pmic@66 {
+   compatible = samsung,s5m8767-pmic;
+   reg = 0x66;
+
+   s5m8767,pmic-buck2-dvs-voltage = 130;
+   s5m8767,pmic-buck3-dvs-voltage = 110;
+   s5m8767,pmic-buck4-dvs-voltage = 120;
+   s5m8767,pmic-buck-dvs-gpios = gpd1 0 1 0 0,
+   gpd1 1 1 0 0,
+   gpd1 2 1 0 0;
+   s5m8767,pmic-buck-ds-gpios = gpx2 3 1 0 0,
+   gpx2 4 1 0 0,
+   gpx2 5 1 0 0;
+   regulators {
+   ldo1_reg: LDO1 {
+   regulator-name = VDD_ALIVE_1.0V;
+   regulator-min-microvolt = 110;
+   regulator-max-microvolt = 110;
+   regulator-always-on;
+   regulator-boot-on;
+   op_mode = 1;
+   };
+
+   ldo2_reg: LDO2 {
+   regulator-name = VDD_28IO_DP_1.35V;
+   regulator-min-microvolt = 120;
+   regulator-max-microvolt = 120;
+   regulator-always-on;
+   op_mode = 1;
+   };
+
+   ldo3_reg: LDO3 {
+   regulator-name = VDD_COMMON1_1.8V;
+   regulator-min-microvolt = 180;
+   regulator-max-microvolt = 180;
+   regulator-always-on;
+   op_mode = 1;
+   };
+
+   ldo4_reg: LDO4 {
+   regulator-name = VDD_IOPERI_1.8V;
+   regulator-min-microvolt = 180;
+   regulator-max-microvolt = 180;
+   regulator-always-on;
+   op_mode = 1;
+   };
+
+   ldo5_reg: LDO5 {
+   regulator-name = VDD_EXT_1.8V;
+   regulator-min-microvolt = 180;
+   regulator-max-microvolt = 180;
+   regulator-always-on;
+   op_mode = 1;
+   };
+
+   ldo6_reg: LDO6 {
+   regulator-name = VDD_MPLL_1.1V;
+   regulator-min-microvolt = 110;
+   regulator-max-microvolt = 110;
+   regulator-always-on;
+   op_mode = 1;
+   };
+
+   ldo7_reg: LDO7 {
+   regulator-name = VDD_XPLL_1.1V;
+   regulator-min-microvolt = 110;
+   regulator-max-microvolt = 110;
+   regulator-always-on;
+   op_mode = 1;
+   };
+
+   ldo8_reg: LDO8 {
+   regulator-name = VDD_COMMON2_1.0V;
+   regulator-min-microvolt = 100;
+

[PATCH 3/5] ARM: dts: exynos5250-arndale: Add vmmc regulator support

2013-02-06 Thread Tushar Behera
From: Sachin Kamat sachin.ka...@linaro.org

Added vmmc regulator node to Arndale DT file.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
Signed-off-by: Tushar Behera tushar.beh...@linaro.org
---
 arch/arm/boot/dts/exynos5250-arndale.dts |   11 +++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
b/arch/arm/boot/dts/exynos5250-arndale.dts
index b40a02f..d018fd2 100644
--- a/arch/arm/boot/dts/exynos5250-arndale.dts
+++ b/arch/arm/boot/dts/exynos5250-arndale.dts
@@ -280,6 +280,7 @@
samsung,dw-mshc-ciu-div = 3;
samsung,dw-mshc-sdr-timing = 2 3;
samsung,dw-mshc-ddr-timing = 1 2;
+   vmmc-supply = mmc_reg;
 
slot@0 {
reg = 0;
@@ -304,6 +305,7 @@
samsung,dw-mshc-ciu-div = 3;
samsung,dw-mshc-sdr-timing = 2 3;
samsung,dw-mshc-ddr-timing = 1 2;
+   vmmc-supply = mmc_reg;
 
slot@0 {
reg = 0;
@@ -378,4 +380,13 @@
gpio-key,wakeup;
};
};
+
+   mmc_reg: voltage-regulator {
+   compatible = regulator-fixed;
+   regulator-name = VDD_33ON_2.8V;
+   regulator-min-microvolt = 280;
+   regulator-max-microvolt = 280;
+   gpio = gpx1 1 0 0 2;
+   enable-active-high;
+   };
 };
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 4/5] ARM: dts: exynos5250-arndale: Add MFC codec support

2013-02-06 Thread Tushar Behera
From: Sachin Kamat sachin.ka...@linaro.org

Added MFC codec node to Arndale DT file.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
Signed-off-by: Tushar Behera tushar.beh...@linaro.org
---
 arch/arm/boot/dts/exynos5250-arndale.dts |5 +
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
b/arch/arm/boot/dts/exynos5250-arndale.dts
index d018fd2..6162a72 100644
--- a/arch/arm/boot/dts/exynos5250-arndale.dts
+++ b/arch/arm/boot/dts/exynos5250-arndale.dts
@@ -24,6 +24,11 @@
bootargs = console=ttySAC2,115200;
};
 
+   codec@1100 {
+   samsung,mfc-r = 0x4300 0x80;
+   samsung,mfc-l = 0x5100 0x80;
+   };
+
i2c@12C6 {
status = okay;
samsung,i2c-sda-delay = 100;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 5/5] ARM: dts: exynos5250-arndale: Add HDMI HPD and regulator node

2013-02-06 Thread Tushar Behera
From: Sachin Kamat sachin.ka...@linaro.org

Added HDMI hot plug and regulator nodes to Arndale DT file.

Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
Signed-off-by: Tushar Behera tushar.beh...@linaro.org
---
 arch/arm/boot/dts/exynos5250-arndale.dts |   12 
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
b/arch/arm/boot/dts/exynos5250-arndale.dts
index 6162a72..7b891a9 100644
--- a/arch/arm/boot/dts/exynos5250-arndale.dts
+++ b/arch/arm/boot/dts/exynos5250-arndale.dts
@@ -386,6 +386,13 @@
};
};
 
+   hdmi {
+   hpd-gpio = gpx3 7 0xf 1 3;
+   vdd_osc-supply = ldo10_reg;
+   vdd_pll-supply = ldo8_reg;
+   vdd-supply = ldo8_reg;
+   };
+
mmc_reg: voltage-regulator {
compatible = regulator-fixed;
regulator-name = VDD_33ON_2.8V;
@@ -394,4 +401,9 @@
gpio = gpx1 1 0 0 2;
enable-active-high;
};
+
+   reg_hdmi_en: fixedregulator@0 {
+   compatible = regulator-fixed;
+   regulator-name = hdmi-en;
+   };
 };
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH 2/5] ARM: dts: exynos5250-arndale: Add PMIC node entry

2013-02-06 Thread Kumar, Anil
On Thu, Feb 07, 2013 at 10:45:26, Tushar Behera wrote:
 From: Amit Daniel Kachhap amit.dan...@samsung.com
 
 Added S5M8767 PMIC DT nodes to Arndale board.
 
 Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |  213 
 +-
  1 files changed, 212 insertions(+), 1 deletions(-)
 
 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 9ce40df..b40a02f 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -25,7 +25,218 @@
   };
  
   i2c@12C6 {
 - status = disabled;
 + status = okay;

Is there any need to change status okay here as in dtsi file it is
by default okay ?   

 + samsung,i2c-sda-delay = 100;
 + samsung,i2c-max-bus-freq = 2;
 + samsung,i2c-slave-addr = 0x66;
 + gpios = gpb3 0 2 3 0,
 + gpb3 1 2 3 0;
 +
 + s5m8767_pmic@66 {
 + compatible = samsung,s5m8767-pmic;
 + reg = 0x66;
 +
 + s5m8767,pmic-buck2-dvs-voltage = 130;
 + s5m8767,pmic-buck3-dvs-voltage = 110;
 + s5m8767,pmic-buck4-dvs-voltage = 120;
 + s5m8767,pmic-buck-dvs-gpios = gpd1 0 1 0 0,
 + gpd1 1 1 0 0,
 + gpd1 2 1 0 0;
 + s5m8767,pmic-buck-ds-gpios = gpx2 3 1 0 0,
 + gpx2 4 1 0 0,
 + gpx2 5 1 0 0;
 + regulators {
 + ldo1_reg: LDO1 {
 + regulator-name = VDD_ALIVE_1.0V;
 + regulator-min-microvolt = 110;
 + regulator-max-microvolt = 110;
 + regulator-always-on;
 + regulator-boot-on;
 + op_mode = 1;
 + };
 +
 + ldo2_reg: LDO2 {
 + regulator-name = VDD_28IO_DP_1.35V;
 + regulator-min-microvolt = 120;
 + regulator-max-microvolt = 120;
 + regulator-always-on;
 + op_mode = 1;
 + };
 +
 + ldo3_reg: LDO3 {
 + regulator-name = VDD_COMMON1_1.8V;
 + regulator-min-microvolt = 180;
 + regulator-max-microvolt = 180;
 + regulator-always-on;
 + op_mode = 1;
 + };
 +
 + ldo4_reg: LDO4 {
 + regulator-name = VDD_IOPERI_1.8V;
 + regulator-min-microvolt = 180;
 + regulator-max-microvolt = 180;
 + regulator-always-on;
 + op_mode = 1;
 + };
 +
 + ldo5_reg: LDO5 {
 + regulator-name = VDD_EXT_1.8V;
 + regulator-min-microvolt = 180;
 + regulator-max-microvolt = 180;
 + regulator-always-on;
 + op_mode = 1;
 + };
 +
 + ldo6_reg: LDO6 {
 + regulator-name = VDD_MPLL_1.1V;
 + regulator-min-microvolt = 110;
 + regulator-max-microvolt = 110;
 + regulator-always-on;
 + op_mode = 1;
 + };
 +
 + ldo7_reg: LDO7 {
 + regulator-name = VDD_XPLL_1.1V;
 + regulator-min-microvolt = 110;
 + regulator-max-microvolt = 110;
 + regulator-always-on;
 + op_mode = 1;
 + };
 +
 + ldo8_reg: LDO8 {
 + regulator-name = VDD_COMMON2_1.0V;
 +  

Re: [PATCH 2/5] ARM: dts: exynos5250-arndale: Add PMIC node entry

2013-02-06 Thread Tushar Behera
On 02/07/2013 11:19 AM, Kumar, Anil wrote:
 On Thu, Feb 07, 2013 at 10:45:26, Tushar Behera wrote:
 From: Amit Daniel Kachhap amit.dan...@samsung.com

 Added S5M8767 PMIC DT nodes to Arndale board.

 Signed-off-by: Amit Daniel Kachhap amit.dan...@samsung.com
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |  213 
 +-
  1 files changed, 212 insertions(+), 1 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 9ce40df..b40a02f 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -25,7 +25,218 @@
  };
  
  i2c@12C6 {
 -status = disabled;
 +status = okay;
 
 Is there any need to change status okay here as in dtsi file it is
 by default okay ?   
 

Right, there is no need for setting it as okay explicitly.

-- 
Tushar Behera
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH 1/5] ARM: dts: exynos5250-arndale: Add node entry for gpio-buttons

2013-02-06 Thread Kumar, Anil
On Thu, Feb 07, 2013 at 10:45:25, Tushar Behera wrote:
 Added GPIO buttons DT node to Arndale board file.
 
 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 ---
 This series is based on for-next branch of Kukjin Kim's tree
 and added on top of the below patch:
 https://patchwork.kernel.org/patch/2042451/
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |   48 
 ++
  1 files changed, 48 insertions(+), 0 deletions(-)
 
 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 63572f9..9ce40df 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -119,4 +119,52 @@
   spi_2: spi@12d4 {
   status = disabled;
   };
 +
 + gpio_keys {
 + compatible = gpio-keys;
 + #address-cells = 1;
 + #size-cells = 0;

Just want to understand why these properties are here?  
As these properties are for child dt node. But have not seen
anyone is using here.

Sorry if I have misunderstood. 

 +
 + menu {
 + label = SW-TACT2;
 + gpios = gpx1 4 0 0x1 2;
 + linux,code = 139;
 + gpio-key,wakeup;
 + };
 +
 + home {
 + label = SW-TACT3;
 + gpios = gpx1 5 0 0x1 2;
 + linux,code = 102;
 + gpio-key,wakeup;
 + };
 +
 + up {
 + label = SW-TACT4;
 + gpios = gpx1 6 0 0x1 2;
 + linux,code = 103;
 + gpio-key,wakeup;
 + };
 +
 + down {
 + label = SW-TACT5;
 + gpios = gpx1 7 0 0x1 2;
 + linux,code = 108;
 + gpio-key,wakeup;
 + };
 +
 + back {
 + label = SW-TACT6;
 + gpios = gpx2 0 0 0x1 2;
 + linux,code = 158;
 + gpio-key,wakeup;
 + };
 +
 + wakeup {
 + label = SW-TACT7;
 + gpios = gpx2 1 0 0x1 2;
 + linux,code = 143;
 + gpio-key,wakeup;
 + };
 + };
  };
 -- 
 1.7.4.1
 
 
 ___
 linux-arm-kernel mailing list
 linux-arm-ker...@lists.infradead.org
 http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
 

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 1/5] ARM: dts: exynos5250-arndale: Add node entry for gpio-buttons

2013-02-06 Thread Tushar Behera
On 02/07/2013 11:47 AM, Kumar, Anil wrote:
 On Thu, Feb 07, 2013 at 10:45:25, Tushar Behera wrote:
 Added GPIO buttons DT node to Arndale board file.

 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 ---
 This series is based on for-next branch of Kukjin Kim's tree
 and added on top of the below patch:
 https://patchwork.kernel.org/patch/2042451/
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |   48 
 ++
  1 files changed, 48 insertions(+), 0 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 63572f9..9ce40df 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -119,4 +119,52 @@
  spi_2: spi@12d4 {
  status = disabled;
  };
 +
 +gpio_keys {
 +compatible = gpio-keys;
 +#address-cells = 1;
 +#size-cells = 0;
 
 Just want to understand why these properties are here?  
 As these properties are for child dt node. But have not seen
 anyone is using here.
 

That is how gpio_keys node entries are defined in other .dts files.

-- 
Tushar Behera
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 1/5] ARM: dts: exynos5250-arndale: Add node entry for gpio-buttons

2013-02-06 Thread Manish Badarkhe
Hi Tushar

On Thu, Feb 7, 2013 at 11:56 AM, Tushar Behera tushar.beh...@linaro.org wrote:
 On 02/07/2013 11:47 AM, Kumar, Anil wrote:
 On Thu, Feb 07, 2013 at 10:45:25, Tushar Behera wrote:
 Added GPIO buttons DT node to Arndale board file.

 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 ---
 This series is based on for-next branch of Kukjin Kim's tree
 and added on top of the below patch:
 https://patchwork.kernel.org/patch/2042451/
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |   48 
 ++
  1 files changed, 48 insertions(+), 0 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 63572f9..9ce40df 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -119,4 +119,52 @@
  spi_2: spi@12d4 {
  status = disabled;
  };
 +
 +gpio_keys {
 +compatible = gpio-keys;
 +#address-cells = 1;
 +#size-cells = 0;

 Just want to understand why these properties are here?
 As these properties are for child dt node. But have not seen
 anyone is using here.


 That is how gpio_keys node entries are defined in other .dts files.

I have gone through example for address-cells and size-cells in following link:
http://devicetree.org/mediawiki/index.php?title=Device_Tree_Usagestable=1#CPU_addressing

which indicates that these fields are for child reg.
I think, here in child node there is no reg. so there is no use
of address-cells and size-cells propeties.

Correct me if I am wrong here?

Thanks
Manish Badarkhe
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 1/5] ARM: dts: exynos5250-arndale: Add node entry for gpio-buttons

2013-02-06 Thread Tushar Behera
On 02/07/2013 12:06 PM, Manish Badarkhe wrote:
 Hi Tushar
 
 On Thu, Feb 7, 2013 at 11:56 AM, Tushar Behera tushar.beh...@linaro.org 
 wrote:
 On 02/07/2013 11:47 AM, Kumar, Anil wrote:
 On Thu, Feb 07, 2013 at 10:45:25, Tushar Behera wrote:
 Added GPIO buttons DT node to Arndale board file.

 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 ---
 This series is based on for-next branch of Kukjin Kim's tree
 and added on top of the below patch:
 https://patchwork.kernel.org/patch/2042451/
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |   48 
 ++
  1 files changed, 48 insertions(+), 0 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 63572f9..9ce40df 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -119,4 +119,52 @@
  spi_2: spi@12d4 {
  status = disabled;
  };
 +
 +gpio_keys {
 +compatible = gpio-keys;
 +#address-cells = 1;
 +#size-cells = 0;

 Just want to understand why these properties are here?
 As these properties are for child dt node. But have not seen
 anyone is using here.


 That is how gpio_keys node entries are defined in other .dts files.
 
 I have gone through example for address-cells and size-cells in following 
 link:
 http://devicetree.org/mediawiki/index.php?title=Device_Tree_Usagestable=1#CPU_addressing
 
 which indicates that these fields are for child reg.
 I think, here in child node there is no reg. so there is no use
 of address-cells and size-cells propeties.
 

Please check Documentation/devicetree/bindings/gpio/gpio_keys.txt

And whether these properties are required or not, I will let device tree
experts to comment on that.

As such, currently all node entries for gpio_keys use these properties.

-- 
Tushar Behera
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 1/5] ARM: dts: exynos5250-arndale: Add node entry for gpio-buttons

2013-02-06 Thread Girish KS
On Wed, Feb 6, 2013 at 10:56 PM, Tushar Behera tushar.beh...@linaro.org wrote:
 On 02/07/2013 12:06 PM, Manish Badarkhe wrote:
 Hi Tushar

 On Thu, Feb 7, 2013 at 11:56 AM, Tushar Behera tushar.beh...@linaro.org 
 wrote:
 On 02/07/2013 11:47 AM, Kumar, Anil wrote:
 On Thu, Feb 07, 2013 at 10:45:25, Tushar Behera wrote:
 Added GPIO buttons DT node to Arndale board file.

 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 Signed-off-by: Sachin Kamat sachin.ka...@linaro.org
 ---
 This series is based on for-next branch of Kukjin Kim's tree
 and added on top of the below patch:
 https://patchwork.kernel.org/patch/2042451/
 ---
  arch/arm/boot/dts/exynos5250-arndale.dts |   48 
 ++
  1 files changed, 48 insertions(+), 0 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts 
 b/arch/arm/boot/dts/exynos5250-arndale.dts
 index 63572f9..9ce40df 100644
 --- a/arch/arm/boot/dts/exynos5250-arndale.dts
 +++ b/arch/arm/boot/dts/exynos5250-arndale.dts
 @@ -119,4 +119,52 @@
  spi_2: spi@12d4 {
  status = disabled;
  };
 +
 +gpio_keys {
 +compatible = gpio-keys;
 +#address-cells = 1;
 +#size-cells = 0;

 Just want to understand why these properties are here?
 As these properties are for child dt node. But have not seen
 anyone is using here.


 That is how gpio_keys node entries are defined in other .dts files.

 I have gone through example for address-cells and size-cells in following 
 link:
 http://devicetree.org/mediawiki/index.php?title=Device_Tree_Usagestable=1#CPU_addressing

 which indicates that these fields are for child reg.
 I think, here in child node there is no reg. so there is no use
 of address-cells and size-cells propeties.


 Please check Documentation/devicetree/bindings/gpio/gpio_keys.txt

 And whether these properties are required or not, I will let device tree
 experts to comment on that.

 As such, currently all node entries for gpio_keys use these properties.
you can just verify by a simple test.
delete the 2 lines. address-cells and size cells.
this will have no affect.
now with these 2 lines deleted lines add a dummy reg property with
address and cell. dtb compiler will warn.
So I think what manish reffered is right.
There is also a reference of smdk4210 for kepads.

 --
 Tushar Behera

 ___
 linux-arm-kernel mailing list
 linux-arm-ker...@lists.infradead.org
 http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html