[PATCH v2 0/5] net: macb updates
Nicolas Ferre
nicolas.ferre at atmel.com
Thu Dec 12 09:28:43 EST 2013
On 12/12/2013 08:00, Olof Johansson :
> Hi Soren,
>
> On Tue, Dec 10, 2013 at 4:07 PM, Soren Brinkmann
> <soren.brinkmann at xilinx.com> wrote:
>
>> Soren Brinkmann (5):
>> net: macb: Adjust tx_clk when link speed changes
>
> This patch causes build issues on some at91 platforms, namely
> at91sam9263 that lacks programmable clocks. So it doesn't implement
> clk_set_rate() and clk_round_rate().
>
> I don't know if there's any reasonable config option to check for
> (that wouldn't add at91-specific stuff to the driver which we don't
> want). So I suspect the best way would be to implement dummy versions
> for at91 when CONFIG_AT91_PROGRAMMABLE_CLOCKS isn't set.
>
> Nicolas, you OK with that? It'd be something like the below
> (copy-paste, whitespace damage, just RFC):
Well, in fact I am thinking about simply removing this
AT91_PROGRAMMABLE_CLOCKS option out of the AT91 Kconfig.
After all, when not specified, it only removes a few lines of code...
and that's it! For a so little benefit, I suspect it is sensible to
remove this option.
I continue to discuss with AT91 active developers and write a patch soon.
Thanks for the heads-up on this issue Olof.
Bye,
> diff --git a/arch/arm/mach-at91/clock.c b/arch/arm/mach-at91/clock.c
> index 6b2630a..17c52a7 100644
> --- a/arch/arm/mach-at91/clock.c
> +++ b/arch/arm/mach-at91/clock.c
> @@ -459,6 +459,22 @@ static void __init init_programmable_clock(struct clk *clk)
> clk->rate_hz = parent->rate_hz / pmc_prescaler_divider(pckr);
> }
>
> +#else /* CONFIG_AT91_PROGRAMMABLE_CLOCKS */
> +
> +int clk_set_rate(struct clk *clk, unsigned long rate)
> +{
> + if (rate == clk_get_rate(clk))
> + return 0;
> +
> + return -EINVAL;
> +}
> +
> +long clk_round_rate(struct clk *clk, unsigned long rate)
> +{
> + /* There's really nothing sane to return here. */
> + return clk_get_rate(clk);
> +}
> +
> #endif /* CONFIG_AT91_PROGRAMMABLE_CLOCKS */
>
--
Nicolas Ferre
More information about the linux-arm-kernel
mailing list