Re: [PATCH] ARM: dts: at91sam9261ek: remove unused chosen nodes

From: Daniel Lezcano
Date: Mon Apr 08 2019 - 12:30:53 EST



Hi Rob,

the following patch has been pushed in 2016 by commit 51f0aeb2d21f1.

Being able to specify which timer should act as a clocksource or a
clockevent is often requested. Doing this from the driver itself forces
to do some assumption in the timer definition ordering in the DT.

That impacts badly the resulting code and its self-encapsulation.

- There is one node and the driver hardcodes the value and initializes
a clocksource and a clockevent

- There are several nodes, one for the clocksource and one for the
clockevent, and the driver assumes the order of the node in the DT

- There are several nodes and multiple channels and those are used for
PWM. It is impossible to know which one are used for PWM or for the
clocksource or for the clockevent

For example with STM32, we should be able to specify which timer to use.
There are 16 timers IIRC, they can be used for PWM, clocksource or
clockevent. Half is 16 bits, other half is 32 bits, depending on the
destination of the platform we can be interested to use one or another
without recompiling a kernel but just the DT.

We need a way to specify which timer to be used from the DT. The patch
below sounded like a good way to characterize the nodes as they belong
to the 'chosen' node and we stay to a 'linux' thing.

What do you think ?


On 08/04/2019 17:11, Alexandre Belloni wrote:
> The chosen clocksource and clockevent bindings have never been accepted and
> parsed, remove them.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
> ---
> arch/arm/boot/dts/at91sam9261ek.dts | 8 --------
> 1 file changed, 8 deletions(-)
>
> diff --git a/arch/arm/boot/dts/at91sam9261ek.dts b/arch/arm/boot/dts/at91sam9261ek.dts
> index a57f2d435dca..11ed55d8a87d 100644
> --- a/arch/arm/boot/dts/at91sam9261ek.dts
> +++ b/arch/arm/boot/dts/at91sam9261ek.dts
> @@ -15,14 +15,6 @@
> chosen {
> bootargs = "rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs rw";
> stdout-path = "serial0:115200n8";
> -
> - clocksource {
> - timer = <&timer0>;
> - };
> -
> - clockevent {
> - timer = <&timer1>;
> - };
> };
>
> memory {
>


--
<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