[linux-oxnas] Re: [PATCH 2/7] clocksource: Rename CLOCKSOURCE_OF_DECLARE |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/linux-oxnas Archives
]
- To: Arnd Bergmann <arnd@xxxxxxxx>
- Subject: [linux-oxnas] Re: [PATCH 2/7] clocksource: Rename CLOCKSOURCE_OF_DECLARE
- From: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
- Date: Mon, 29 May 2017 12:55:09 +0200
- Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Linux ARM <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, Russell King <linux@xxxxxxxxxxxxxxx>, Michal Simek <monstr@xxxxxxxxx>, John Crispin <john@xxxxxxxxxxx>, Ralf Baechle <ralf@xxxxxxxxxxxxxx>, Ley Foon Tan <lftan@xxxxxxxxxx>, Vineet Gupta <vgupta@xxxxxxxxxxxx>, Mark Rutland <mark.rutland@xxxxxxx>, Marc Zyngier <marc.zyngier@xxxxxxx>, Patrice Chotard <patrice.chotard@xxxxxx>, Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx>, Alexandre Torgue <alexandre.torgue@xxxxxx>, Florian Fainelli <f.fainelli@xxxxxxxxx>, Ray Jui <rjui@xxxxxxxxxxxx>, Scott Branden <sbranden@xxxxxxxxxxxx>, "maintainer:BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITE..." <bcm-kernel-feedback-list@xxxxxxxxxxxx>, Stephen Warren <swarren@xxxxxxxxxxxxx>, Lee Jones <lee@xxxxxxxxxx>, Eric Anholt <eric@xxxxxxxxxx>, Sören Brinkmann <soren.brinkmann@xxxxxxxxxx>, Linus Walleij <linus.walleij@xxxxxxxxxx>, Alexander Shiyan <shc_work@xxxxxxx>, Kukjin Kim <kgene@xxxxxxxxxx>, Krzysztof Kozlowski <krzk@xxxxxxxxxx>, Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>, Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>, Carlo Caione <carlo@xxxxxxxxxx>, Kevin Hilman <khilman@xxxxxxxxxxxx>, Liviu Dudau <liviu.dudau@xxxxxxx>, Sudeep Holla <sudeep.holla@xxxxxxx>, Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>, Matthias Brugger <matthias.bgg@xxxxxxxxx>, Heiko Stuebner <heiko@xxxxxxxxx>, Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>, Chen-Yu Tsai <wens@xxxxxxxx>, Marc Gonzalez <marc_gonzalez@xxxxxxxxxxxxxxxx>, Thierry Reding <thierry.reding@xxxxxxxxx>, Alexandre Courbot <gnurou@xxxxxxxxx>, Uwe Kleine-König <kernel@xxxxxxxxxxxxxx>, Joachim Eastwood <manabian@xxxxxxxxx>, Vladimir Zapolskiy <vz@xxxxxxxxx>, Sylvain Lemieux <slemieux.tyco@xxxxxxxxx>, Barry Song <baohua@xxxxxxxxxx>, Baruch Siach <baruch@xxxxxxxxxx>, Santosh Shilimkar <ssantosh@xxxxxxxxxx>, Neil Armstrong <narmstrong@xxxxxxxxxxxx>, Tony Prisk <linux@xxxxxxxxxxxxxxx>, John Stultz <john.stultz@xxxxxxxxxx>, Stephen Boyd <sboyd@xxxxxxxxxxxxxx>, Anna-Maria Gleixner <anna-maria@xxxxxxxxxxxxx>, Richard Cochran <rcochran@xxxxxxxxxxxxx>, Ingo Molnar <mingo@xxxxxxxxxx>, Noam Camus <noamca@xxxxxxxxxxxx>, "open list:RALINK MIPS ARCHITECTURE" <linux-mips@xxxxxxxxxxxxxx>, "moderated list:NIOS2 ARCHITECTURE" <nios2-dev@xxxxxxxxxxxxxxxxxxxxxx>, "open list:SYNOPSYS ARC ARCHITECTURE" <linux-snps-arc@xxxxxxxxxxxxxxxxxxx>, "open list:ARM/STI ARCHITECTURE" <kernel@xxxxxxxxxxx>, "moderated list:BROADCOM BCM2835 ARM ARCHITECTURE" <linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx>, "moderated list:ARM/SAMSUNG EXYNOS ARM ARCHITECTURES" <linux-samsung-soc@xxxxxxxxxxxxxxx>, "moderated list:H8/300 ARCHITECTURE" <uclinux-h8-devel@xxxxxxxxxxxxxxxxxxxx>, "open list:ARM/Amlogic Meson SoC support" <linux-amlogic@xxxxxxxxxxxxxxxxxxx>, "moderated list:ARM/Mediatek SoC support" <linux-mediatek@xxxxxxxxxxxxxxxxxxx>, "open list:ARM/Rockchip SoC support" <linux-rockchip@xxxxxxxxxxxxxxxxxxx>, "open list:TEGRA ARCHITECTURE SUPPORT" <linux-tegra@xxxxxxxxxxxxxxx>, "moderated list:ARM/OXNAS platform support" <linux-oxnas@xxxxxxxxxxxxxxxxxxx>
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=m9XVm+COXROdP9Ihxwg8bv8eA2bFTUaT8sLKK0Xq8go=; b=D2QjEgPrrNpSECAYbCxBP78UjoLM9WdHReKNQj+KiDmekZtZmEvoVLStPTlNeBHFP7 rzsXs7gSyU24FSRzpXzrCCf4XNpn7KI4RMcrlbrhsECWF5MXAerfd+1Z09qBz4OXnBWa 55mwYUlAbCYXLEOAvxvhiMuHwlW5FxwDTwVxY=
On Mon, May 29, 2017 at 11:57:25AM +0200, Arnd Bergmann wrote:
> On Mon, May 29, 2017 at 10:48 AM, Daniel Lezcano
> <daniel.lezcano@xxxxxxxxxx> wrote:
> > On Mon, May 29, 2017 at 10:41:52AM +0200, Arnd Bergmann wrote:
> >> On Sat, May 27, 2017 at 11:58 AM, Daniel Lezcano
> >> <daniel.lezcano@xxxxxxxxxx> wrote:
> >> > The CLOCKSOUCE_OF_DECLARE macro is used widely for the timers to declare the
> >> > clocksource at early stage. However, this macro is also used to initialize
> >> > the clockevent if any, or the clockevent only.
> >> >
> >> > It was originally suggested to declare another macro to initialize a
> >> > clockevent, so in order to separate the two entities even they belong to the
> >> > same IP. This was not accepted because of the impact on the DT where splitting
> >> > a clocksource/clockevent definition does not make sense as it is a Linux
> >> > concept not a hardware description.
> >> >
> >> > On the other side, the clocksource has not interrupt declared while the
> >> > clockevent has, so it is easy from the driver to know if the description is
> >> > for a clockevent or a clocksource, IOW it could be implemented at the driver
> >> > level.
> >> >
> >> > So instead of dealing with a named clocksource macro, let's use a more generic
> >> > one: TIMER_OF_DECLARE.
> >> >
> >> > The patch has not functional changes.
> >> >
> >> > Signed-off-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> >>
> >> Could you either leave the old name as an alias for one release, or introduce
> >> the new name as an alias now for 4.13?
> >>
> >> I think that that would make it easier to merge new drivers. Otherwise this
> >> looks good to me,
> >
> >
> > New drivers should go through my tree, so I can catch them with the old macro
> > name and do the change.
>
> Sure, they should, and it's quite likely that you won't even need the fallback,
> I've just seen too many cases where a similar assumption turned out wrong,
> that I'd just pick the safer option just in case whenever I do an API change.
>
> Things that could go wrong include:
>
> - A platform maintainer wants to add a new platform and has a for-next
> branch that gets merged into linux-next, with parts of it going through
> different maintainers, and now they have to choose between a branch
> that doesn't build without the timer branch, or one that break for-next
> unless Stephen applies a fixup
>
> - Some architecture maintainer didn't get the memo and adds an instance of
> CLOCKSOUCE_OF_DECLARE in architecture specific code without asking
> having the patch reviewed first
>
> - A platform has a branch with complex cross-tree dependencies and
> it need to get merged in an unconventional way.
>
> - You make a mistake and accidentally merge one driver for an unusual
> architecture that escapes your test matrix.
>
> While those all are unlikely to happen in a particular merge window, they do
> happen occasionally and tend to cause a lot of pain.
Hmm, that sounds scary :)
There is no guarantee, when removing the alias, none of the above happens,
right?
If the timer branch is in linux-next, that could be caugth before any of the
above happens, no?
I'm not against adding an alias, just checking out if it is worth to.
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog