[PATCH] ARM: DTS: exynos4210-origen: Add MAX8997 node entry

2013-01-04 Thread Tushar Behera
The node entry is added as per documentation and legacy board file.

Signed-off-by: Tushar Behera tushar.beh...@linaro.org
---
The patch is rebased on v3.8-rc1.

 arch/arm/boot/dts/exynos4210-origen.dts |  150 +++
 1 files changed, 150 insertions(+), 0 deletions(-)

diff --git a/arch/arm/boot/dts/exynos4210-origen.dts 
b/arch/arm/boot/dts/exynos4210-origen.dts
index f271001..362ef58 100644
--- a/arch/arm/boot/dts/exynos4210-origen.dts
+++ b/arch/arm/boot/dts/exynos4210-origen.dts
@@ -121,4 +121,154 @@
linux,default-trigger = heartbeat;
};
};
+
+   i2c@1386 {
+   #address-cells = 1;
+   #size-cells = 0;
+   samsung,i2c-sda-delay = 100;
+   samsung,i2c-max-bus-freq = 2;
+   pinctrl-0 = i2c0_bus;
+   pinctrl-names = default;
+   status = okay;
+
+   max8997_pmic@66 {
+   compatible = maxim,max8997-pmic;
+   reg = 0x66;
+   interrupt-parent = gpx0;
+   interrupts = 4 0, 3 0;
+
+   max8997,pmic-ignore-gpiodvs-side-effect;
+   max8997,pmic-buck125-default-dvs-idx = 0;
+   max8997,pmic-buck125-dvs-gpios = gpx0 0 0,
+gpx0 1 0,
+gpx0 2 0;
+   max8997,pmic-buck1-dvs-voltage = 135, 130,
+125, 120,
+115, 110,
+100, 95;
+   max8997,pmic-buck2-dvs-voltage = 110, 110,
+110, 110,
+100, 100,
+100, 100;
+   max8997,pmic-buck5-dvs-voltage = 120, 120,
+120, 120,
+120, 120,
+120, 120;
+
+   regulators {
+   ldo1_reg: LDO1 {
+   regulator-name = VDD_ABB_3.3V;
+   regulator-min-microvolt = 330;
+   regulator-max-microvolt = 330;
+   };
+
+   ldo2_reg: LDO2 {
+   regulator-name = VDD_ALIVE_1.1V;
+   regulator-min-microvolt = 110;
+   regulator-max-microvolt = 110;
+   regulator-always-on;
+   };
+
+   ldo3_reg: LDO3 {
+   regulator-name = VMIPI_1.1V;
+   regulator-min-microvolt = 110;
+   regulator-max-microvolt = 110;
+   regulator-always-on;
+   };
+
+   ldo4_reg: LDO4 {
+   regulator-name = VDD_RTC_1.8V;
+   regulator-min-microvolt = 180;
+   regulator-max-microvolt = 180;
+   regulator-always-on;
+   };
+
+   ldo6_reg: LDO6 {
+   regulator-name = VMIPI_1.8V;
+   regulator-min-microvolt = 180;
+   regulator-max-microvolt = 180;
+   regulator-always-on;
+   };
+
+   ldo7_reg: LDO7 {
+   regulator-name = VDD_AUD_1.8V;
+   regulator-min-microvolt = 180;
+   regulator-max-microvolt = 180;
+   regulator-always-on;
+   };
+
+   ldo8_reg: LDO8 {
+   regulator-name = VADC_3.3V;
+   regulator-min-microvolt = 330;
+   regulator-max-microvolt = 330;
+   regulator-always-on;
+   };
+
+   ldo9_reg: LDO9 {
+   

Re: Early kernel hang with big DTB appended

2013-01-04 Thread Tomasz Figa
Hi Nicolas,

Thanks for your reply.

On Thursday 03 of January 2013 21:48:05 Nicolas Pitre wrote:
 On Thu, 3 Jan 2013, Tomasz Figa wrote:
  Hi,
  
  I'm observing strange behavior when booting 3.8-rc1 and -rc2 with
  appended DTB. The kernel hangs very early when the DTB is bigger than
  some threshold somewhere around 24 KiB.
 
 What is the address where you load your zImage?

We are using uImages built with same parameters as those used in simple 
'make uImage', just with a DTB appended to zImage before running mkimage 
on it.

By default the load address is set to 0x40008000, where 0x4000 is DRAM 
base.

 What if you load it, say, at an offset of 16MB from the start of RAM?
 Not that this is a fix, but at least that would help isolate the issue.

Yes, it indeed helps. I tried with shifting the load address by 16 MiB to 
0x41008000 (by adjusting mkimage parameters) and it now boots fine.

Best regards,
-- 
Tomasz Figa
Samsung Poland RD Center
SW Solution Development, Linux Platform

--
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: Early kernel hang with big DTB appended

2013-01-04 Thread Tomasz Figa
Hi Bryan,

Thanks for your reply.

On Thursday 03 of January 2013 13:40:43 Bryan Evenson wrote:
  -Original Message-
  From: linux-arm-kernel-boun...@lists.infradead.org [mailto:linux-arm-
  kernel-boun...@lists.infradead.org] On Behalf Of Tomasz Figa
  Sent: Thursday, January 03, 2013 10:55 AM
  To: devicetree-disc...@lists.ozlabs.org
  Cc: linux-samsung-soc@vger.kernel.org; li...@arm.linux.org.uk;
  n...@linaro.org; kgene@samsung.com; thomas.abra...@linaro.org;
  bo...@secretlab.ca; linux-arm-ker...@lists.infradead.org
  Subject: Early kernel hang with big DTB appended
  
  Hi,
  
  I'm observing strange behavior when booting 3.8-rc1 and -rc2 with
  appended DTB. The kernel hangs very early when the DTB is bigger than
  some threshold somewhere around 24 KiB. With fullest possible low
  level
  UART debugging (and printk patched to use printascii) I'm receiving
  following
  output:
  
  Uncompressing Linux... done, booting the kernel.
  Booting Linux on physical CPU 0xa00
  Linux version 3.8.0-rc1-00073-gdf6efca-dirty (t.figa@amdc1227) (gcc
  version 4.5.2 (Gentoo 4.5.2 p1.2, pie-0.4.5) ) #2 SMP PREEMPT Thu Jan
  3
  15:37:35 CET 2013
  CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=10c53c7d
  CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction
  cache
  
  I tested on two Exynos-based boards (exynos4210-trats and one internal
  exynos4412-based board) and same happens on both.
  
  Do you have any ideas?
 
 Tomasz,
 
 Sounds to me like the DTB is not being fully written to memory or that
 it isn't being fully read from memory.  I've had similar problems when
 I placed the DTB too close to the end of flash and not all of the DTB
 was written to flash.

I'm using CONFIG_ARM_APPENDED_DTB, as it eases testing a bit, because DTB 
is built into the resulting uImage for u-boot (appended after zImage) and 
it does not require OF-aware versions of u-boot.

Also the uImage is stored on an ext4 partition as a regular file, so I 
would exclude any storage issues.

 
 If you load a debug build of U-Boot, I believe there are a number of
 debug messages related to loading the device tree that U-Boot prints. 
 Then you can at least verify that U-Boot is loading the entire device
 tree.

The u-boot I have is not OF-aware, so it just prints the standard messages 
about loading the uImage.

P.S. With Nicolas' hint about image load address I managed to work around 
the issue and limit the scope of code where the bug might exist. Please 
see my reply to Nicolas' post.

Best regards,
-- 
Tomasz Figa
Samsung Poland RD Center
SW Solution Development, Linux Platform

--
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 14/19] ARM: remove unneeded vic.h includes

2013-01-04 Thread Maxime Ripard
Le 03/01/2013 18:54, Rob Herring a écrit :
 diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c
 index 9be910f..b1b5131 100644
 --- a/arch/arm/mach-sunxi/sunxi.c
 +++ b/arch/arm/mach-sunxi/sunxi.c
 @@ -21,7 +21,6 @@
  
  #include linux/irqchip/sunxi.h
  
 -#include asm/hardware/vic.h
  
  #include asm/mach/arch.h
  #include asm/mach/map.h

Just a little nitpick, could you remove the extra line as well?

Other than that, for sunxi,
Acked-By: Maxime Ripard maxime.rip...@free-electrons.com

-- 
Maxime Ripard, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
--
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/5] ARM: exynos: replace cpumask by the corresponding macro

2013-01-04 Thread Daniel Lezcano
A trivial patch to replace for_each_cpu(cpu_id, cpu_online_mask) by
the corresponding macro.

Signed-off-by: Daniel Lezcano daniel.lezc...@linaro.org
---
 arch/arm/mach-exynos/cpuidle.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-exynos/cpuidle.c b/arch/arm/mach-exynos/cpuidle.c
index a5fe194..6e90bed 100644
--- a/arch/arm/mach-exynos/cpuidle.c
+++ b/arch/arm/mach-exynos/cpuidle.c
@@ -205,7 +205,7 @@ static int __init exynos4_init_cpuidle(void)
return ret;
}
 
-   for_each_cpu(cpu_id, cpu_online_mask) {
+   for_each_online_cpu(cpu_id) {
device = per_cpu(exynos4_cpuidle_device, cpu_id);
device-cpu = cpu_id;
 
-- 
1.7.9.5

--
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: exynos: only register cpuidle for cpu0

2013-01-04 Thread Daniel Lezcano
We register the device for cpu1 but with only one state which
is actually WFI. This one is already the default idle function
when no cpuidle device is set for the cpu.

We can remove the cpuidle device for this cpu as it is the same
code path than the pm_idle callback.

Signed-off-by: Daniel Lezcano daniel.lezc...@linaro.org
---
 arch/arm/mach-exynos/cpuidle.c |   22 ++
 1 file changed, 6 insertions(+), 16 deletions(-)

diff --git a/arch/arm/mach-exynos/cpuidle.c b/arch/arm/mach-exynos/cpuidle.c
index 6e90bed..e6f006b 100644
--- a/arch/arm/mach-exynos/cpuidle.c
+++ b/arch/arm/mach-exynos/cpuidle.c
@@ -40,7 +40,7 @@ static int exynos4_enter_lowpower(struct cpuidle_device *dev,
struct cpuidle_driver *drv,
int index);
 
-static DEFINE_PER_CPU(struct cpuidle_device, exynos4_cpuidle_device);
+static struct cpuidle_device exynos4_cpuidle_device;
 
 static struct cpuidle_driver exynos4_idle_driver = {
.name   = exynos4_idle,
@@ -193,8 +193,7 @@ static void __init exynos5_core_down_clk(void)
 
 static int __init exynos4_init_cpuidle(void)
 {
-   int cpu_id, ret;
-   struct cpuidle_device *device;
+   int ret;
 
if (soc_is_exynos5250())
exynos5_core_down_clk();
@@ -205,19 +204,10 @@ static int __init exynos4_init_cpuidle(void)
return ret;
}
 
-   for_each_online_cpu(cpu_id) {
-   device = per_cpu(exynos4_cpuidle_device, cpu_id);
-   device-cpu = cpu_id;
-
-/* Support IDLE only */
-   if (cpu_id != 0)
-   device-state_count = 1;
-
-   ret = cpuidle_register_device(device);
-   if (ret) {
-   printk(KERN_ERR CPUidle register device failed\n);
-   return ret;
-   }
+   ret = cpuidle_register_device(exynos4_cpuidle_device);
+   if (ret) {
+   printk(KERN_ERR CPUidle register device failed\n);
+   return ret;
}
 
return 0;
-- 
1.7.9.5

--
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: exynos: handle properly the return values

2013-01-04 Thread Daniel Lezcano
The cpuidle_register_driver return value is not checked.
The init function returns always -EIO when cpuidle_register_device
fails but the error could be different.

This patch fixes that by checking the cpuidle_register_driver properly
and returning the correct value when cpuidle_register_device fails.

Signed-off-by: Daniel Lezcano daniel.lezc...@linaro.org
---
 arch/arm/mach-exynos/cpuidle.c |   15 ++-
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/arch/arm/mach-exynos/cpuidle.c b/arch/arm/mach-exynos/cpuidle.c
index f8dd1cd..a5fe194 100644
--- a/arch/arm/mach-exynos/cpuidle.c
+++ b/arch/arm/mach-exynos/cpuidle.c
@@ -193,13 +193,17 @@ static void __init exynos5_core_down_clk(void)
 
 static int __init exynos4_init_cpuidle(void)
 {
-   int cpu_id;
+   int cpu_id, ret;
struct cpuidle_device *device;
 
if (soc_is_exynos5250())
exynos5_core_down_clk();
 
-   cpuidle_register_driver(exynos4_idle_driver);
+   ret = cpuidle_register_driver(exynos4_idle_driver);
+   if (ret) {
+   printk(KERN_ERR CPUidle failed to register driver\n);
+   return ret;
+   }
 
for_each_cpu(cpu_id, cpu_online_mask) {
device = per_cpu(exynos4_cpuidle_device, cpu_id);
@@ -209,9 +213,10 @@ static int __init exynos4_init_cpuidle(void)
if (cpu_id != 0)
device-state_count = 1;
 
-   if (cpuidle_register_device(device)) {
-   printk(KERN_ERR CPUidle register device failed\n,);
-   return -EIO;
+   ret = cpuidle_register_device(device);
+   if (ret) {
+   printk(KERN_ERR CPUidle register device failed\n);
+   return ret;
}
}
 
-- 
1.7.9.5

--
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/5] ARM: exynos: factor out the idle states

2013-01-04 Thread Daniel Lezcano
The states are defined in the driver. We can get rid of the
intermediate cpuidle states initialization and the memcpy by
directly initializing the driver states.

Signed-off-by: Daniel Lezcano daniel.lezc...@linaro.org
---
 arch/arm/mach-exynos/cpuidle.c |   45 +++-
 1 file changed, 17 insertions(+), 28 deletions(-)

diff --git a/arch/arm/mach-exynos/cpuidle.c b/arch/arm/mach-exynos/cpuidle.c
index 0509241..f8dd1cd 100644
--- a/arch/arm/mach-exynos/cpuidle.c
+++ b/arch/arm/mach-exynos/cpuidle.c
@@ -40,24 +40,25 @@ static int exynos4_enter_lowpower(struct cpuidle_device 
*dev,
struct cpuidle_driver *drv,
int index);
 
-static struct cpuidle_state exynos4_cpuidle_set[] __initdata = {
-   [0] = ARM_CPUIDLE_WFI_STATE,
-   [1] = {
-   .enter  = exynos4_enter_lowpower,
-   .exit_latency   = 300,
-   .target_residency   = 10,
-   .flags  = CPUIDLE_FLAG_TIME_VALID,
-   .name   = C1,
-   .desc   = ARM power down,
-   },
-};
-
 static DEFINE_PER_CPU(struct cpuidle_device, exynos4_cpuidle_device);
 
 static struct cpuidle_driver exynos4_idle_driver = {
.name   = exynos4_idle,
.owner  = THIS_MODULE,
.en_core_tk_irqen   = 1,
+   .states = {
+   [0] = ARM_CPUIDLE_WFI_STATE,
+   [1] = {
+   .enter= exynos4_enter_lowpower,
+   .exit_latency = 300,
+   .target_residency = 10,
+   .flags= CPUIDLE_FLAG_TIME_VALID,
+   .name = C1,
+   .desc = ARM power down,
+   },
+   },
+   .state_count = 2,
+   .safe_state_index = 0,
 };
 
 /* Ext-GIC nIRQ/nFIQ is the only wakeup source in AFTR */
@@ -192,33 +193,21 @@ static void __init exynos5_core_down_clk(void)
 
 static int __init exynos4_init_cpuidle(void)
 {
-   int i, max_cpuidle_state, cpu_id;
+   int cpu_id;
struct cpuidle_device *device;
-   struct cpuidle_driver *drv = exynos4_idle_driver;
 
if (soc_is_exynos5250())
exynos5_core_down_clk();
 
-   /* Setup cpuidle driver */
-   drv-state_count = (sizeof(exynos4_cpuidle_set) /
-  sizeof(struct cpuidle_state));
-   max_cpuidle_state = drv-state_count;
-   for (i = 0; i  max_cpuidle_state; i++) {
-   memcpy(drv-states[i], exynos4_cpuidle_set[i],
-   sizeof(struct cpuidle_state));
-   }
-   drv-safe_state_index = 0;
cpuidle_register_driver(exynos4_idle_driver);
 
for_each_cpu(cpu_id, cpu_online_mask) {
device = per_cpu(exynos4_cpuidle_device, cpu_id);
device-cpu = cpu_id;
 
-   if (cpu_id == 0)
-   device-state_count = (sizeof(exynos4_cpuidle_set) /
-  sizeof(struct cpuidle_state));
-   else
-   device-state_count = 1;/* Support IDLE only */
+/* Support IDLE only */
+   if (cpu_id != 0)
+   device-state_count = 1;
 
if (cpuidle_register_device(device)) {
printk(KERN_ERR CPUidle register device failed\n,);
-- 
1.7.9.5

--
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: exynos4210-origen: Add MAX8997 node entry

2013-01-04 Thread Thomas Abraham
On 4 January 2013 00:23, Tushar Behera tushar.beh...@linaro.org wrote:
 The node entry is added as per documentation and legacy board file.

 Signed-off-by: Tushar Behera tushar.beh...@linaro.org
 ---
 The patch is rebased on v3.8-rc1.

  arch/arm/boot/dts/exynos4210-origen.dts |  150 
 +++
  1 files changed, 150 insertions(+), 0 deletions(-)

This patch has already been posted. Here is the link:
https://patchwork.kernel.org/patch/1794501/

Thanks,
Thomas.
--
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: exynos: enable/disable cpuidle when cpu1 is down/up

2013-01-04 Thread Daniel Lezcano
What we have now is (1) cpu0 going always to WFI when cpu1 is up,
(2) cpu0 going to all states when cpu1 is down.

In other words, cpuidle is disabled when cpu1 is up and enabled
when cpu1 is down.

This patch use the cpu hotplug notifier to enable/disable cpuidle,
when the cpu1 is plugged or unplugged. That clarifies the code and
make it simpler.

Signed-off: Daniel Lezcano daniel.lezc...@linaro.org
---
 arch/arm/mach-exynos/cpuidle.c |  117 +++-
 1 file changed, 69 insertions(+), 48 deletions(-)

diff --git a/arch/arm/mach-exynos/cpuidle.c b/arch/arm/mach-exynos/cpuidle.c
index e6f006b..d8f6f33 100644
--- a/arch/arm/mach-exynos/cpuidle.c
+++ b/arch/arm/mach-exynos/cpuidle.c
@@ -12,6 +12,8 @@
 #include linux/init.h
 #include linux/cpuidle.h
 #include linux/cpu_pm.h
+#include linux/notifier.h
+#include linux/cpu.h
 #include linux/io.h
 #include linux/export.h
 #include linux/time.h
@@ -36,31 +38,8 @@
 
 #define S5P_CHECK_AFTR 0xFCBA0D10
 
-static int exynos4_enter_lowpower(struct cpuidle_device *dev,
-   struct cpuidle_driver *drv,
-   int index);
-
 static struct cpuidle_device exynos4_cpuidle_device;
 
-static struct cpuidle_driver exynos4_idle_driver = {
-   .name   = exynos4_idle,
-   .owner  = THIS_MODULE,
-   .en_core_tk_irqen   = 1,
-   .states = {
-   [0] = ARM_CPUIDLE_WFI_STATE,
-   [1] = {
-   .enter= exynos4_enter_lowpower,
-   .exit_latency = 300,
-   .target_residency = 10,
-   .flags= CPUIDLE_FLAG_TIME_VALID,
-   .name = C1,
-   .desc = ARM power down,
-   },
-   },
-   .state_count = 2,
-   .safe_state_index = 0,
-};
-
 /* Ext-GIC nIRQ/nFIQ is the only wakeup source in AFTR */
 static void exynos4_set_wakeupmask(void)
 {
@@ -93,9 +72,9 @@ static int idle_finisher(unsigned long flags)
return 1;
 }
 
-static int exynos4_enter_core0_aftr(struct cpuidle_device *dev,
-   struct cpuidle_driver *drv,
-   int index)
+static int exynos4_enter_lowpower(struct cpuidle_device *dev,
+ struct cpuidle_driver *drv,
+ int index)
 {
unsigned long tmp;
 
@@ -143,22 +122,6 @@ static int exynos4_enter_core0_aftr(struct cpuidle_device 
*dev,
return index;
 }
 
-static int exynos4_enter_lowpower(struct cpuidle_device *dev,
-   struct cpuidle_driver *drv,
-   int index)
-{
-   int new_index = index;
-
-   /* This mode only can be entered when other core's are offline */
-   if (num_online_cpus()  1)
-   new_index = drv-safe_state_index;
-
-   if (new_index == 0)
-   return arm_cpuidle_simple_enter(dev, drv, new_index);
-   else
-   return exynos4_enter_core0_aftr(dev, drv, new_index);
-}
-
 static void __init exynos5_core_down_clk(void)
 {
unsigned int tmp;
@@ -191,6 +154,62 @@ static void __init exynos5_core_down_clk(void)
__raw_writel(tmp, EXYNOS5_PWR_CTRL2);
 }
 
+static int cpu_hotplug_notify(struct notifier_block *n,
+ unsigned long action, void *hcpu)
+{
+   int ret;
+
+   /*
+* cpu0 can't be shutdown on Origen, so this routine is
+* called only for cpu1.
+*/
+
+   switch (action  0xf) {
+
+   case CPU_ONLINE:
+   cpuidle_pause_and_lock();
+   cpuidle_disable_device(exynos4_cpuidle_device);
+   cpuidle_resume_and_unlock();
+   break;
+
+   case CPU_DEAD:
+   if (!exynos4_cpuidle_device.registered) {
+   ret = cpuidle_register_device(exynos4_cpuidle_device);
+   WARN_ONCE(ret, Failed to register cpuidle device);
+   } else {
+   cpuidle_pause_and_lock();
+   cpuidle_enable_device(exynos4_cpuidle_device);
+   cpuidle_resume_and_unlock();
+   }
+   break;
+   }
+
+   return NOTIFY_OK;
+}
+
+static struct notifier_block cpu_hotplug_notifier = {
+   .notifier_call = cpu_hotplug_notify,
+};
+
+static struct cpuidle_driver exynos4_idle_driver = {
+   .name   = exynos4_idle,
+   .owner  = THIS_MODULE,
+   .en_core_tk_irqen   = 1,
+   .states = {
+   [0] = ARM_CPUIDLE_WFI_STATE,
+   [1] = {
+   .enter= exynos4_enter_lowpower,
+   .exit_latency = 300,
+   .target_residency = 10,
+   .flags= CPUIDLE_FLAG_TIME_VALID,
+

Re: [PATCH v4 14/19] ARM: remove unneeded vic.h includes

2013-01-04 Thread Mark Brown
On Thu, Jan 03, 2013 at 11:54:23AM -0600, Rob Herring wrote:
 From: Rob Herring rob.herr...@calxeda.com
 
 Numerous includes of asm/hardware/vic.h aren't needed, so remove them.

Acked-by: Mark Brown broo...@opensource.wolfsonmicro.com


signature.asc
Description: Digital signature


[PATCH] spi/s3c64xx: Complain if we fail to set a transfer speed

2013-01-04 Thread Mark Brown
Signed-off-by: Mark Brown broo...@opensource.wolfsonmicro.com
---
 drivers/spi/spi-s3c64xx.c |2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
index ad93231..6495352 100644
--- a/drivers/spi/spi-s3c64xx.c
+++ b/drivers/spi/spi-s3c64xx.c
@@ -957,6 +957,8 @@ static int s3c64xx_spi_setup(struct spi_device *spi)
if (spi-max_speed_hz = speed) {
spi-max_speed_hz = speed;
} else {
+   dev_err(spi-dev, Can't set %dHz transfer speed\n,
+   spi-max_speed_hz);
err = -EINVAL;
goto setup_exit;
}
-- 
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