From: Daniel Lezcano <daniel.lezcano@linaro.org> To: Noam Camus <noamca@mellanox.com> Cc: robh+dt@kernel.org, mark.rutland@arm.com, tglx@linutronix.de, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, John Stultz <john.stultz@linaro.org> Subject: Re: [PATCH 3/3] clocksource: Add clockevent support to NPS400 driver Date: Fri, 21 Oct 2016 17:08:59 +0200 [thread overview] Message-ID: <20161021150859.GB5553@mai> (raw) In-Reply-To: <1476370350-3853-4-git-send-email-noamca@mellanox.com> On Thu, Oct 13, 2016 at 05:52:30PM +0300, Noam Camus wrote: > From: Noam Camus <noamca@mellanox.com> > > Till now we used clockevent from generic ARC driver. > This was enough as long as we worked with simple multicore SoC. > When we are working with multithread SoC each HW thread can be > scheduled to receive timer interrupt using timer mask register > (TSI1). > > This patch will provide a way to control clock events per > HW thread. The description is not very clear. Can you elaborate ? > Driver can be used from device tree by: > compatible = "ezchip,nps400-timer0" <-- for clocksource > compatible = "ezchip,nps400-timer1" <-- for clockevent > > Cc: Daniel Lezcano <daniel.lezcano@linaro.org> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: John Stultz <john.stultz@linaro.org> > Signed-off-by: Noam Camus <noamca@mellanox.com> > --- [ ... ] > -static int __init nps_setup_clocksource(struct device_node *node, > - struct clk *clk) > +static void __init nps_setup_clocksource(struct device_node *node) CLOCKSOURCE_OF_DECLARE is expecting an int __init (*func)(struct device_node *) This function returns void at the beginning then it is not changed and returns an error value. linux/drivers/clocksource/timer-nps.c: In function ‘nps_setup_clocksource’: linux/drivers/clocksource/timer-nps.c:77:10: warning: ‘return’ with a value, in function returning void return ret; ^ linux/drivers/clocksource/timer-nps.c:89:9: warning: ‘return’ with a value, in function returning void return ret; ^ linux/drivers/clocksource/timer-nps.c: At top level: linux/drivers/clocksource/timer-nps.c:92:216: warning: comparison of distinct pointer types lacks a cast Don't submit changes which are not correctly compiled / tested, except you want to live dangerously and watch your karma collapse. I will let you fix this before reviewing the patches in details. BTW, have a look at the hotplug callbacks, they changed to a finite state machine [1] and their usage changed [2]. -- Daniel [1] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=710d60cbf1b312a8075a2158cbfbbd9c66132dcc [2] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=eb0a9d8c672dc01db41352afa646405d035ee7a4
WARNING: multiple messages have this Message-ID (diff)
From: Daniel Lezcano <daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> To: Noam Camus <noamca-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, mark.rutland-5wv7dgnIgG8@public.gmane.org, tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, John Stultz <john.stultz-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Subject: Re: [PATCH 3/3] clocksource: Add clockevent support to NPS400 driver Date: Fri, 21 Oct 2016 17:08:59 +0200 [thread overview] Message-ID: <20161021150859.GB5553@mai> (raw) In-Reply-To: <1476370350-3853-4-git-send-email-noamca-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> On Thu, Oct 13, 2016 at 05:52:30PM +0300, Noam Camus wrote: > From: Noam Camus <noamca-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> > > Till now we used clockevent from generic ARC driver. > This was enough as long as we worked with simple multicore SoC. > When we are working with multithread SoC each HW thread can be > scheduled to receive timer interrupt using timer mask register > (TSI1). > > This patch will provide a way to control clock events per > HW thread. The description is not very clear. Can you elaborate ? > Driver can be used from device tree by: > compatible = "ezchip,nps400-timer0" <-- for clocksource > compatible = "ezchip,nps400-timer1" <-- for clockevent > > Cc: Daniel Lezcano <daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> > Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> > Cc: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> > Cc: John Stultz <john.stultz-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> > Signed-off-by: Noam Camus <noamca-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> > --- [ ... ] > -static int __init nps_setup_clocksource(struct device_node *node, > - struct clk *clk) > +static void __init nps_setup_clocksource(struct device_node *node) CLOCKSOURCE_OF_DECLARE is expecting an int __init (*func)(struct device_node *) This function returns void at the beginning then it is not changed and returns an error value. linux/drivers/clocksource/timer-nps.c: In function ‘nps_setup_clocksource’: linux/drivers/clocksource/timer-nps.c:77:10: warning: ‘return’ with a value, in function returning void return ret; ^ linux/drivers/clocksource/timer-nps.c:89:9: warning: ‘return’ with a value, in function returning void return ret; ^ linux/drivers/clocksource/timer-nps.c: At top level: linux/drivers/clocksource/timer-nps.c:92:216: warning: comparison of distinct pointer types lacks a cast Don't submit changes which are not correctly compiled / tested, except you want to live dangerously and watch your karma collapse. I will let you fix this before reviewing the patches in details. BTW, have a look at the hotplug callbacks, they changed to a finite state machine [1] and their usage changed [2]. -- Daniel [1] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=710d60cbf1b312a8075a2158cbfbbd9c66132dcc [2] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=eb0a9d8c672dc01db41352afa646405d035ee7a4 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2016-10-21 15:09 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-10-13 14:52 [PATCH 0/3] Add clockevet for timer-nps driver to NPS400 SoC Noam Camus 2016-10-13 14:52 ` Noam Camus 2016-10-13 14:52 ` [PATCH 1/3] soc: Support for NPS HW scheduling Noam Camus 2016-10-13 14:52 ` Noam Camus 2016-10-21 13:52 ` Daniel Lezcano 2016-10-13 14:52 ` [PATCH 2/3] ARC: [plat-eznps] remove macros for timer0 TSI Noam Camus 2016-10-13 14:52 ` Noam Camus 2016-10-21 14:12 ` Daniel Lezcano 2016-10-21 14:12 ` Daniel Lezcano 2016-10-13 14:52 ` [PATCH 3/3] clocksource: Add clockevent support to NPS400 driver Noam Camus 2016-10-13 14:52 ` Noam Camus 2016-10-18 13:57 ` Rob Herring 2016-10-18 14:32 ` Noam Camus 2016-10-18 14:32 ` Noam Camus 2016-10-18 14:51 ` Noam Camus 2016-10-18 14:51 ` Noam Camus 2016-10-21 15:08 ` Daniel Lezcano [this message] 2016-10-21 15:08 ` Daniel Lezcano
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20161021150859.GB5553@mai \ --to=daniel.lezcano@linaro.org \ --cc=devicetree@vger.kernel.org \ --cc=john.stultz@linaro.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=noamca@mellanox.com \ --cc=robh+dt@kernel.org \ --cc=tglx@linutronix.de \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.