Re: [PATCH V2 61/63] clocksource/drivers/arc: Convert init function to return error

2016-06-17 Thread Vineet Gupta
On Thursday 16 June 2016 11:27 PM, Daniel Lezcano wrote:
> The init functions do not return any error. They behave as the following:
> 
>   - panic, thus leading to a kernel crash while another timer may work and
>make the system boot up correctly
> 
>   or
> 
>   - print an error and let the caller unaware if the state of the system
> 
> Change that by converting the init functions to return an error conforming
> to the CLOCKSOURCE_OF_RET prototype.
> 
> Proper error handling (rollback, errno value) will be changed later case
> by case, thus this change just return back an error or success in the init
> function.
> 
> Signed-off-by: Daniel Lezcano 
> ---

[...]

>  
> @@ -172,27 +172,27 @@ static struct clocksource arc_counter_rtc = {
>   .flags  = CLOCK_SOURCE_IS_CONTINUOUS,
>  };
>  
> -static void __init arc_cs_setup_rtc(struct device_node *node)
> +static int __init arc_cs_setup_rtc(struct device_node *node)
>  {
>   int exists = cpuinfo_arc700[smp_processor_id()].extn.rtc;
>   int ret;
>  
>   if (WARN(!exists, "Local-64-bit-Ctr clocksource not detected"))
> - return;
> + return -ENXIO;
>  
>   /* Local to CPU hence not usable in SMP */
>   if (WARN(IS_ENABLED(CONFIG_SMP), "Local-64-bit-Ctr not usable in SMP"))
> - return;
> + return -EINVAL;
>  
>   ret = arc_get_timer_clk(node);
>   if (ret)
> - return;
> + return ret;
>  
>   write_aux_reg(AUX_RTC_CTRL, 1);
>  
> - clocksource_register_hz(&arc_counter_rtc, arc_timer_freq);
> + return clocksource_register_hz(&arc_counter_rtc, arc_timer_freq);
>  }
> -CLOCKSOURCE_OF_DECLARE(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc);
> +CLOCKSOURCE_OF_DECLARE_RET(arc_rtc, "snps,archs-timer-rtc", 
> arc_cs_setup_rtc);
>  
>  #endif
>  
> @@ -213,23 +213,23 @@ static struct clocksource arc_counter_timer1 = {
>   .flags  = CLOCK_SOURCE_IS_CONTINUOUS,
>  };
>  
> -static void __init arc_cs_setup_timer1(struct device_node *node)
> +static int __init arc_cs_setup_timer1(struct device_node *node)
>  {
>   int ret;
>  
>   /* Local to CPU hence not usable in SMP */
>   if (IS_ENABLED(CONFIG_SMP))
> - return;
> + return 0;

-EINVAL to keep it similar as rtc above


___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


[PATCH V3] clocksource/drivers/arc: Convert init function to return error

2016-06-17 Thread Daniel Lezcano
The init functions do not return any error. They behave as the following:

  - panic, thus leading to a kernel crash while another timer may work and
   make the system boot up correctly

  or

  - print an error and let the caller unaware if the state of the system

Change that by converting the init functions to return an error conforming
to the CLOCKSOURCE_OF_RET prototype.

Proper error handling (rollback, errno value) will be changed later case
by case, thus this change just return back an error or success in the init
function.

Signed-off-by: Daniel Lezcano 
---
 arch/arc/kernel/time.c | 69 ++
 1 file changed, 42 insertions(+), 27 deletions(-)

diff --git a/arch/arc/kernel/time.c b/arch/arc/kernel/time.c
index 4549ab2..b211f80 100644
--- a/arch/arc/kernel/time.c
+++ b/arch/arc/kernel/time.c
@@ -116,21 +116,21 @@ static struct clocksource arc_counter_gfrc = {
.flags  = CLOCK_SOURCE_IS_CONTINUOUS,
 };
 
-static void __init arc_cs_setup_gfrc(struct device_node *node)
+static int __init arc_cs_setup_gfrc(struct device_node *node)
 {
int exists = cpuinfo_arc700[0].extn.gfrc;
int ret;
 
if (WARN(!exists, "Global-64-bit-Ctr clocksource not detected"))
-   return;
+   return -ENXIO;
 
ret = arc_get_timer_clk(node);
if (ret)
-   return;
+   return ret;
 
-   clocksource_register_hz(&arc_counter_gfrc, arc_timer_freq);
+   return clocksource_register_hz(&arc_counter_gfrc, arc_timer_freq);
 }
-CLOCKSOURCE_OF_DECLARE(arc_gfrc, "snps,archs-timer-gfrc", arc_cs_setup_gfrc);
+CLOCKSOURCE_OF_DECLARE_RET(arc_gfrc, "snps,archs-timer-gfrc", 
arc_cs_setup_gfrc);
 
 #endif
 
@@ -172,27 +172,27 @@ static struct clocksource arc_counter_rtc = {
.flags  = CLOCK_SOURCE_IS_CONTINUOUS,
 };
 
-static void __init arc_cs_setup_rtc(struct device_node *node)
+static int __init arc_cs_setup_rtc(struct device_node *node)
 {
int exists = cpuinfo_arc700[smp_processor_id()].extn.rtc;
int ret;
 
if (WARN(!exists, "Local-64-bit-Ctr clocksource not detected"))
-   return;
+   return -ENXIO;
 
/* Local to CPU hence not usable in SMP */
if (WARN(IS_ENABLED(CONFIG_SMP), "Local-64-bit-Ctr not usable in SMP"))
-   return;
+   return -EINVAL;
 
ret = arc_get_timer_clk(node);
if (ret)
-   return;
+   return ret;
 
write_aux_reg(AUX_RTC_CTRL, 1);
 
-   clocksource_register_hz(&arc_counter_rtc, arc_timer_freq);
+   return clocksource_register_hz(&arc_counter_rtc, arc_timer_freq);
 }
-CLOCKSOURCE_OF_DECLARE(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc);
+CLOCKSOURCE_OF_DECLARE_RET(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc);
 
 #endif
 
@@ -213,23 +213,23 @@ static struct clocksource arc_counter_timer1 = {
.flags  = CLOCK_SOURCE_IS_CONTINUOUS,
 };
 
-static void __init arc_cs_setup_timer1(struct device_node *node)
+static int __init arc_cs_setup_timer1(struct device_node *node)
 {
int ret;
 
/* Local to CPU hence not usable in SMP */
if (IS_ENABLED(CONFIG_SMP))
-   return;
+   return -EINVAL;
 
ret = arc_get_timer_clk(node);
if (ret)
-   return;
+   return ret;
 
write_aux_reg(ARC_REG_TIMER1_LIMIT, ARC_TIMER_MAX);
write_aux_reg(ARC_REG_TIMER1_CNT, 0);
write_aux_reg(ARC_REG_TIMER1_CTRL, TIMER_CTRL_NH);
 
-   clocksource_register_hz(&arc_counter_timer1, arc_timer_freq);
+   return clocksource_register_hz(&arc_counter_timer1, arc_timer_freq);
 }
 
 /** Clock Event Device */
@@ -324,20 +324,28 @@ static struct notifier_block arc_timer_cpu_nb = {
 /*
  * clockevent setup for boot CPU
  */
-static void __init arc_clockevent_setup(struct device_node *node)
+static int __init arc_clockevent_setup(struct device_node *node)
 {
struct clock_event_device *evt = this_cpu_ptr(&arc_clockevent_device);
int ret;
 
-   register_cpu_notifier(&arc_timer_cpu_nb);
+   ret = register_cpu_notifier(&arc_timer_cpu_nb);
+   if (ret) {
+   pr_err("Failed to register cpu notifier");
+   return ret;
+   }
 
arc_timer_irq = irq_of_parse_and_map(node, 0);
-   if (arc_timer_irq <= 0)
-   panic("clockevent: missing irq");
+   if (arc_timer_irq <= 0) {
+   pr_err("clockevent: missing irq");
+   return -EINVAL;
+   }
 
ret = arc_get_timer_clk(node);
-   if (ret)
-   panic("clockevent: missing clk");
+   if (ret) {
+   pr_err("clockevent: missing clk");
+   return ret;
+   }
 
evt->irq = arc_timer_irq;
evt->cpumask = cpumask_of(smp_processor_id());
@@ -347,24 +355,31 @@ static void __init arc_clockevent_setup(struct 
device_node *node)
/* Needs 

Re: [PATCH V3] clocksource/drivers/arc: Convert init function to return error

2016-06-17 Thread Vineet Gupta
On Friday 17 June 2016 12:09 PM, Daniel Lezcano wrote:
> The init functions do not return any error. They behave as the following:
> 
>   - panic, thus leading to a kernel crash while another timer may work and
>make the system boot up correctly
> 
>   or
> 
>   - print an error and let the caller unaware if the state of the system
> 
> Change that by converting the init functions to return an error conforming
> to the CLOCKSOURCE_OF_RET prototype.
> 
> Proper error handling (rollback, errno value) will be changed later case
> by case, thus this change just return back an error or success in the init
> function.
> 
> Signed-off-by: Daniel Lezcano 

Acked-by: Vineet Gupta 

P.S. It would be nice to get cover letter for a series in addition to relevant
patches for full context, although per prev discussion on ARC timers, I kind of
knew what the idea was !

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Guenter Roeck

Hi Peter,

I am seeing build failures in -next when trying to build arc / arcv2 targets.

arch/arc/include/asm/atomic.h:74:2: error: ‘SCOND_FAIL_RETRY_VAR_DEF’ undeclared
arch/arc/include/asm/atomic.h:87:2: error: expected ‘:’ or ‘)’ before 
‘SCOND_FAIL_RETRY_ASM’

Problems seem to be caused by 'locking/atomic, arch/arc: Implement
atomic_fetch_{add,sub,and,andnot,or,xor}()'. Both SCOND_FAIL_RETRY_VAR_DEF and
SCOND_FAIL_RETRY_ASM are undefined.

Guenter

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Peter Zijlstra
On Fri, Jun 17, 2016 at 04:39:42PM +0200, Peter Zijlstra wrote:
> On Fri, Jun 17, 2016 at 07:36:56AM -0700, Guenter Roeck wrote:
> > Hi Peter,
> > 
> > I am seeing build failures in -next when trying to build arc / arcv2 
> > targets.
> > 
> > arch/arc/include/asm/atomic.h:74:2: error: ‘SCOND_FAIL_RETRY_VAR_DEF’ 
> > undeclared
> > arch/arc/include/asm/atomic.h:87:2: error: expected ‘:’ or ‘)’ before 
> > ‘SCOND_FAIL_RETRY_ASM’
> > 
> > Problems seem to be caused by 'locking/atomic, arch/arc: Implement
> > atomic_fetch_{add,sub,and,andnot,or,xor}()'. Both SCOND_FAIL_RETRY_VAR_DEF 
> > and
> > SCOND_FAIL_RETRY_ASM are undefined.
> 
> Crud, I messed up the rebase against the backoff reverts. Lemme go do
> fixups.

I've misplaced my arc compiler, but does this make it go again?


---
 arch/arc/include/asm/atomic.h | 8 
 1 file changed, 8 deletions(-)

diff --git a/arch/arc/include/asm/atomic.h b/arch/arc/include/asm/atomic.h
index bd9c51cb2bfd..4e3c1b6b0806 100644
--- a/arch/arc/include/asm/atomic.h
+++ b/arch/arc/include/asm/atomic.h
@@ -71,7 +71,6 @@ static inline int atomic_##op##_return(int i, atomic_t *v)
\
 static inline int atomic_fetch_##op(int i, atomic_t *v)
\
 {  \
unsigned int val, orig; \
-   SCOND_FAIL_RETRY_VAR_DEF\
\
/*  \
 * Explicit full memory barrier needed before/after as  \
@@ -84,11 +83,8 @@ static inline int atomic_fetch_##op(int i, atomic_t *v)  
\
"   " #asm_op " %[val], %[orig], %[i]   \n" \
"   scond   %[val], [%[ctr]]\n" \
"   \n" \
-   SCOND_FAIL_RETRY_ASM\
-   \
: [val] "=&r"   (val),  \
  [orig] "=&r" (orig)   \
- SCOND_FAIL_RETRY_VARS \
: [ctr] "r" (&v->counter),  \
  [i]   "ir"(i) \
: "cc");\
@@ -199,10 +195,6 @@ ATOMIC_OPS(andnot, &= ~, bic)
 ATOMIC_OPS(or, |=, or)
 ATOMIC_OPS(xor, ^=, xor)
 
-#undef SCOND_FAIL_RETRY_VAR_DEF
-#undef SCOND_FAIL_RETRY_ASM
-#undef SCOND_FAIL_RETRY_VARS
-
 #else /* CONFIG_ARC_PLAT_EZNPS */
 
 static inline int atomic_read(const atomic_t *v)

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Peter Zijlstra
On Fri, Jun 17, 2016 at 07:36:56AM -0700, Guenter Roeck wrote:
> Hi Peter,
> 
> I am seeing build failures in -next when trying to build arc / arcv2 targets.
> 
> arch/arc/include/asm/atomic.h:74:2: error: ‘SCOND_FAIL_RETRY_VAR_DEF’ 
> undeclared
> arch/arc/include/asm/atomic.h:87:2: error: expected ‘:’ or ‘)’ before 
> ‘SCOND_FAIL_RETRY_ASM’
> 
> Problems seem to be caused by 'locking/atomic, arch/arc: Implement
> atomic_fetch_{add,sub,and,andnot,or,xor}()'. Both SCOND_FAIL_RETRY_VAR_DEF and
> SCOND_FAIL_RETRY_ASM are undefined.

Crud, I messed up the rebase against the backoff reverts. Lemme go do
fixups.

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Guenter Roeck

On 06/17/2016 07:41 AM, Peter Zijlstra wrote:

On Fri, Jun 17, 2016 at 04:39:42PM +0200, Peter Zijlstra wrote:

On Fri, Jun 17, 2016 at 07:36:56AM -0700, Guenter Roeck wrote:

Hi Peter,

I am seeing build failures in -next when trying to build arc / arcv2 targets.

arch/arc/include/asm/atomic.h:74:2: error: ‘SCOND_FAIL_RETRY_VAR_DEF’ undeclared
arch/arc/include/asm/atomic.h:87:2: error: expected ‘:’ or ‘)’ before 
‘SCOND_FAIL_RETRY_ASM’

Problems seem to be caused by 'locking/atomic, arch/arc: Implement
atomic_fetch_{add,sub,and,andnot,or,xor}()'. Both SCOND_FAIL_RETRY_VAR_DEF and
SCOND_FAIL_RETRY_ASM are undefined.


Crud, I messed up the rebase against the backoff reverts. Lemme go do
fixups.


I've misplaced my arc compiler, but does this make it go again?


Looks like it, yes. Build still fails for another reason, but this problem is 
gone.
I can not do any runtime tests, though, only build tests.

Guenter



---
  arch/arc/include/asm/atomic.h | 8 
  1 file changed, 8 deletions(-)

diff --git a/arch/arc/include/asm/atomic.h b/arch/arc/include/asm/atomic.h
index bd9c51cb2bfd..4e3c1b6b0806 100644
--- a/arch/arc/include/asm/atomic.h
+++ b/arch/arc/include/asm/atomic.h
@@ -71,7 +71,6 @@ static inline int atomic_##op##_return(int i, atomic_t *v)
\
  static inline int atomic_fetch_##op(int i, atomic_t *v)   
\
  { \
unsigned int val, orig; \
-   SCOND_FAIL_RETRY_VAR_DEF\
\
/*  \
 * Explicit full memory barrier needed before/after as  \
@@ -84,11 +83,8 @@ static inline int atomic_fetch_##op(int i, atomic_t *v)  
\
"  " #asm_op " %[val], %[orig], %[i] \n"\
"  scond   %[val], [%[ctr]]\n"\
"  \n"\
-   SCOND_FAIL_RETRY_ASM\
-   \
: [val] "=&r" (val),  \
  [orig] "=&r" (orig) \
- SCOND_FAIL_RETRY_VARS \
: [ctr] "r"   (&v->counter),   \
  [i]   "ir"  (i) \
: "cc");  \
@@ -199,10 +195,6 @@ ATOMIC_OPS(andnot, &= ~, bic)
  ATOMIC_OPS(or, |=, or)
  ATOMIC_OPS(xor, ^=, xor)

-#undef SCOND_FAIL_RETRY_VAR_DEF
-#undef SCOND_FAIL_RETRY_ASM
-#undef SCOND_FAIL_RETRY_VARS
-
  #else /* CONFIG_ARC_PLAT_EZNPS */

  static inline int atomic_read(const atomic_t *v)




___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Vineet Gupta
On Friday 17 June 2016 04:52 PM, Guenter Roeck wrote:
>>> Crud, I messed up the rebase against the backoff reverts. Lemme go do
>>> fixups.
>>
>> I've misplaced my arc compiler, but does this make it go again?
>>
> Looks like it, yes. Build still fails for another reason, but this problem is 
> gone.
> I can not do any runtime tests, though, only build tests.
> 
> Guenter

We can do that once Peter adjusts his patch !

-Vineet

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Peter Zijlstra


Question; why does atomic_read() have a full memory clobber on arc?

Will thinks its because you don't use a memory constraint for *v.

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Vineet Gupta
On Friday 17 June 2016 05:22 PM, Peter Zijlstra wrote:
> Question; why does atomic_read() have a full memory clobber on arc?
> 
> Will thinks its because you don't use a memory constraint for *v.

So that is only for CONFIG_ARC_PLAT_EZNPS and very liekly not needed. Although 
NPS
has some design constraints which Noam knows of better !

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Ingo Molnar

* Peter Zijlstra  wrote:

> On Fri, Jun 17, 2016 at 04:39:42PM +0200, Peter Zijlstra wrote:
> > On Fri, Jun 17, 2016 at 07:36:56AM -0700, Guenter Roeck wrote:
> > > Hi Peter,
> > > 
> > > I am seeing build failures in -next when trying to build arc / arcv2 
> > > targets.
> > > 
> > > arch/arc/include/asm/atomic.h:74:2: error: ‘SCOND_FAIL_RETRY_VAR_DEF’ 
> > > undeclared
> > > arch/arc/include/asm/atomic.h:87:2: error: expected ‘:’ or ‘)’ before 
> > > ‘SCOND_FAIL_RETRY_ASM’
> > > 
> > > Problems seem to be caused by 'locking/atomic, arch/arc: Implement
> > > atomic_fetch_{add,sub,and,andnot,or,xor}()'. Both 
> > > SCOND_FAIL_RETRY_VAR_DEF and
> > > SCOND_FAIL_RETRY_ASM are undefined.
> > 
> > Crud, I messed up the rebase against the backoff reverts. Lemme go do
> > fixups.
> 
> I've misplaced my arc compiler, but does this make it go again?

There's no arc compiler on korg's cross-building directory.

Thanks,

Ingo

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Peter Zijlstra
On Fri, Jun 17, 2016 at 06:04:38PM +0200, Ingo Molnar wrote:

> There's no arc compiler on korg's cross-building directory.

I always build my own cross compiler set, but it looks like the last
time I build a set ARC didn't build.

This frequently happens (that a number of archs fail to build that is).

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH V2 63/63] clocksources: Switch back to the clksrc table

2016-06-17 Thread Matthias Brugger



On 16/06/16 23:27, Daniel Lezcano wrote:

All the clocksource drivers's init function are now converted to return
an error code. CLOCKSOURCE_OF_DECLARE is no longer used as well as the
clksrc-of table.

Let's convert back the names:
  - CLOCKSOURCE_OF_DECLARE_RET => CLOCKSOURCE_OF_DECLARE
  - clksrc-of-ret  => clksrc-of

Signed-off-by: Daniel Lezcano 
---
  arch/arc/kernel/time.c|  6 +++---


[...]


  drivers/clocksource/mtk_timer.c   |  2 +-


For mediatek driver:
Acked-by: Matthias Brugger 

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH V2 63/63] clocksources: Switch back to the clksrc table

2016-06-17 Thread Krzysztof Kozlowski
On 06/16/2016 11:27 PM, Daniel Lezcano wrote:
> All the clocksource drivers's init function are now converted to return
> an error code. CLOCKSOURCE_OF_DECLARE is no longer used as well as the
> clksrc-of table.
> 
> Let's convert back the names:
>  - CLOCKSOURCE_OF_DECLARE_RET => CLOCKSOURCE_OF_DECLARE
>  - clksrc-of-ret  => clksrc-of
> 
> Signed-off-by: Daniel Lezcano 
> ---
>  arch/arc/kernel/time.c|  6 +++---
>  arch/arm/kernel/smp_twd.c |  6 +++---
>  arch/microblaze/kernel/timer.c|  2 +-
>  arch/mips/ralink/cevt-rt3352.c|  2 +-
>  arch/nios2/kernel/time.c  |  2 +-
>  drivers/clocksource/arm_arch_timer.c  |  6 +++---
>  drivers/clocksource/arm_global_timer.c|  2 +-
>  drivers/clocksource/armv7m_systick.c  |  2 +-
>  drivers/clocksource/asm9260_timer.c   |  2 +-
>  drivers/clocksource/bcm2835_timer.c   |  2 +-
>  drivers/clocksource/bcm_kona_timer.c  |  4 ++--
>  drivers/clocksource/cadence_ttc_timer.c   |  2 +-
>  drivers/clocksource/clksrc-dbx500-prcmu.c |  2 +-
>  drivers/clocksource/clksrc-probe.c| 14 --
>  drivers/clocksource/clksrc_st_lpc.c   |  2 +-
>  drivers/clocksource/clps711x-timer.c  |  2 +-
>  drivers/clocksource/dw_apb_timer_of.c |  8 
>  drivers/clocksource/exynos_mct.c  |  4 ++--
>  drivers/clocksource/fsl_ftm_timer.c   |  2 +-
>  drivers/clocksource/h8300_timer16.c   |  2 +-
>  drivers/clocksource/h8300_timer8.c|  2 +-
>  drivers/clocksource/h8300_tpu.c   |  2 +-
>  drivers/clocksource/meson6_timer.c|  2 +-
>  drivers/clocksource/mips-gic-timer.c  |  2 +-
>  drivers/clocksource/moxart_timer.c|  2 +-
>  drivers/clocksource/mps2-timer.c  |  2 +-
>  drivers/clocksource/mtk_timer.c   |  2 +-
>  drivers/clocksource/mxs_timer.c   |  2 +-
>  drivers/clocksource/nomadik-mtu.c |  2 +-
>  drivers/clocksource/pxa_timer.c   |  2 +-
>  drivers/clocksource/qcom-timer.c  |  4 ++--
>  drivers/clocksource/rockchip_timer.c  |  8 
>  drivers/clocksource/samsung_pwm_timer.c   |  8 

For exynos_mct and samsung_pwm_timer:
Acked-by: Krzysztof Kozlowski 

Best regards,
Krzysztof


___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH V2 63/63] clocksources: Switch back to the clksrc table

2016-06-17 Thread Santosh Shilimkar

On 6/16/2016 2:27 PM, Daniel Lezcano wrote:

All the clocksource drivers's init function are now converted to return
an error code. CLOCKSOURCE_OF_DECLARE is no longer used as well as the
clksrc-of table.

Let's convert back the names:
 - CLOCKSOURCE_OF_DECLARE_RET => CLOCKSOURCE_OF_DECLARE
 - clksrc-of-ret  => clksrc-of

Signed-off-by: Daniel Lezcano 
---



 drivers/clocksource/timer-keystone.c  |  2 +-


Acked-by: Santosh Shilimkar 

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


[PATCH V2 63/63] clocksources: Switch back to the clksrc table

2016-06-17 Thread Daniel Lezcano
All the clocksource drivers's init function are now converted to return
an error code. CLOCKSOURCE_OF_DECLARE is no longer used as well as the
clksrc-of table.

Let's convert back the names:
 - CLOCKSOURCE_OF_DECLARE_RET => CLOCKSOURCE_OF_DECLARE
 - clksrc-of-ret  => clksrc-of

Signed-off-by: Daniel Lezcano 
---
 arch/arc/kernel/time.c|  6 +++---
 arch/arm/kernel/smp_twd.c |  6 +++---
 arch/microblaze/kernel/timer.c|  2 +-
 arch/mips/ralink/cevt-rt3352.c|  2 +-
 arch/nios2/kernel/time.c  |  2 +-
 drivers/clocksource/arm_arch_timer.c  |  6 +++---
 drivers/clocksource/arm_global_timer.c|  2 +-
 drivers/clocksource/armv7m_systick.c  |  2 +-
 drivers/clocksource/asm9260_timer.c   |  2 +-
 drivers/clocksource/bcm2835_timer.c   |  2 +-
 drivers/clocksource/bcm_kona_timer.c  |  4 ++--
 drivers/clocksource/cadence_ttc_timer.c   |  2 +-
 drivers/clocksource/clksrc-dbx500-prcmu.c |  2 +-
 drivers/clocksource/clksrc-probe.c| 14 --
 drivers/clocksource/clksrc_st_lpc.c   |  2 +-
 drivers/clocksource/clps711x-timer.c  |  2 +-
 drivers/clocksource/dw_apb_timer_of.c |  8 
 drivers/clocksource/exynos_mct.c  |  4 ++--
 drivers/clocksource/fsl_ftm_timer.c   |  2 +-
 drivers/clocksource/h8300_timer16.c   |  2 +-
 drivers/clocksource/h8300_timer8.c|  2 +-
 drivers/clocksource/h8300_tpu.c   |  2 +-
 drivers/clocksource/meson6_timer.c|  2 +-
 drivers/clocksource/mips-gic-timer.c  |  2 +-
 drivers/clocksource/moxart_timer.c|  2 +-
 drivers/clocksource/mps2-timer.c  |  2 +-
 drivers/clocksource/mtk_timer.c   |  2 +-
 drivers/clocksource/mxs_timer.c   |  2 +-
 drivers/clocksource/nomadik-mtu.c |  2 +-
 drivers/clocksource/pxa_timer.c   |  2 +-
 drivers/clocksource/qcom-timer.c  |  4 ++--
 drivers/clocksource/rockchip_timer.c  |  8 
 drivers/clocksource/samsung_pwm_timer.c   |  8 
 drivers/clocksource/sun4i_timer.c |  2 +-
 drivers/clocksource/tango_xtal.c  |  2 +-
 drivers/clocksource/tegra20_timer.c   |  4 ++--
 drivers/clocksource/time-armada-370-xp.c  |  6 +++---
 drivers/clocksource/time-efm32.c  |  4 ++--
 drivers/clocksource/time-lpc32xx.c|  2 +-
 drivers/clocksource/time-orion.c  |  2 +-
 drivers/clocksource/time-pistachio.c  |  2 +-
 drivers/clocksource/timer-atlas7.c|  2 +-
 drivers/clocksource/timer-atmel-pit.c |  2 +-
 drivers/clocksource/timer-atmel-st.c  |  2 +-
 drivers/clocksource/timer-digicolor.c |  2 +-
 drivers/clocksource/timer-imx-gpt.c   | 24 
 drivers/clocksource/timer-integrator-ap.c |  2 +-
 drivers/clocksource/timer-keystone.c  |  2 +-
 drivers/clocksource/timer-nps.c   |  4 ++--
 drivers/clocksource/timer-oxnas-rps.c |  4 ++--
 drivers/clocksource/timer-prima2.c|  2 +-
 drivers/clocksource/timer-sp804.c |  4 ++--
 drivers/clocksource/timer-stm32.c |  2 +-
 drivers/clocksource/timer-sun5i.c |  4 ++--
 drivers/clocksource/timer-ti-32k.c|  2 +-
 drivers/clocksource/timer-u300.c  |  2 +-
 drivers/clocksource/versatile.c   |  4 ++--
 drivers/clocksource/vf_pit_timer.c|  2 +-
 drivers/clocksource/vt8500_timer.c|  2 +-
 drivers/clocksource/zevio-timer.c |  2 +-
 include/asm-generic/vmlinux.lds.h |  2 --
 include/linux/clocksource.h   |  5 +
 62 files changed, 98 insertions(+), 117 deletions(-)

diff --git a/arch/arc/kernel/time.c b/arch/arc/kernel/time.c
index 36110cd..ee00f2f 100644
--- a/arch/arc/kernel/time.c
+++ b/arch/arc/kernel/time.c
@@ -130,7 +130,7 @@ static int __init arc_cs_setup_gfrc(struct device_node 
*node)
 
return clocksource_register_hz(&arc_counter_gfrc, arc_timer_freq);
 }
-CLOCKSOURCE_OF_DECLARE_RET(arc_gfrc, "snps,archs-timer-gfrc", 
arc_cs_setup_gfrc);
+CLOCKSOURCE_OF_DECLARE(arc_gfrc, "snps,archs-timer-gfrc", arc_cs_setup_gfrc);
 
 #endif
 
@@ -192,7 +192,7 @@ static int __init arc_cs_setup_rtc(struct device_node *node)
 
return clocksource_register_hz(&arc_counter_rtc, arc_timer_freq);
 }
-CLOCKSOURCE_OF_DECLARE_RET(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc);
+CLOCKSOURCE_OF_DECLARE(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc);
 
 #endif
 
@@ -379,7 +379,7 @@ static int __init arc_of_timer_init(struct device_node *np)
 
return ret;
 }
-CLOCKSOURCE_OF_DECLARE_RET(arc_clkevt, "snps,arc-timer", arc_of_timer_init);
+CLOCKSOURCE_OF_DECLARE(arc_clkevt, "snps,arc-timer", arc_of_timer_init);
 
 /*
  * Called from start_kernel() - boot CPU only
diff --git a/arch/arm/kernel/smp_twd.c b/arch/arm/kernel/smp_twd.c
index 2b24be4..b6ec65e 100644
--- a/arch/arm/kernel/smp_twd.c
+++ b/arch/arm/kernel/smp_twd.c
@@ -412,7 +412,7 @@ out:
WARN(err, "twd_local_timer_of_register failed 

Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Vineet Gupta
On Friday 17 June 2016 06:04 PM, Ingo Molnar wrote:
>> I've misplaced my arc compiler, but does this make it go again?
> There's no arc compiler on korg's cross-building directory.

Yeah, I'd requested that a few times...

However we do have ARC kernels building at atleast 2 places
1. Guenther's build service which sent this error report
2. kisskb build by Michale Ellerman

Although I don't know if it is possible to download cross tools from either of 
above.

@Peter, upstream buildroot allows you to build toolchain for ARC ! Trust me it
does build :-)



___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: Build failures in -next due to 'locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()'

2016-06-17 Thread Guenter Roeck
On Fri, Jun 17, 2016 at 10:22:46PM +0200, Vineet Gupta wrote:
> On Friday 17 June 2016 06:04 PM, Ingo Molnar wrote:
> >> I've misplaced my arc compiler, but does this make it go again?
> > There's no arc compiler on korg's cross-building directory.
> 
> Yeah, I'd requested that a few times...
> 
> However we do have ARC kernels building at atleast 2 places
> 1. Guenther's build service which sent this error report
> 2. kisskb build by Michale Ellerman
> 
> Although I don't know if it is possible to download cross tools from either 
> of above.
> 
Unfortunately no for mine. I tried to put the toolchains I use on github,
but the images are too large, and I hit the github repository size limit.

Guenter

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc