Re: [PATCH V2 61/63] clocksource/drivers/arc: Convert init function to return error
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
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
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}()'
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}()'
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}()'
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}()'
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}()'
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}()'
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}()'
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}()'
* 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}()'
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
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
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
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
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}()'
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}()'
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