lkml.org 
[lkml]   [2018]   [Jul]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 5/7] net: phy: Add support to configure clock in Broadcom iProc mdio mux
From
Date
Hi Andrew

On 18-07-26 12:26 PM, Andrew Lunn wrote:
>> +static void mdio_mux_iproc_config_clk(struct iproc_mdiomux_desc *md)
>> +{
>> + u32 val;
>> + u32 divisor;
>> +
>> + if (md->core_clk) {
>> + divisor = clk_get_rate(md->core_clk) / MDIO_OPERATING_FREQUENCY;
>
> /**
> * clk_get_rate - obtain the current clock rate (in Hz) for a clock source.
> * This is only valid once the clock source has been enabled.
> * @clk: clock source
> */
> unsigned long clk_get_rate(struct clk *clk);
>
> It is generally good practice to call clk_prepare_enable() sometime
> before clk_get_rate() to ensure the clock is ticking, and to show this
> driver is making use of the clock, so it does not get turned off.

Will add 'clk_prepare_enable()' to the probe.

Thanks
Arun

>
>> + divisor = divisor / (MDIO_RATE_ADJ_DIVIDENT + 1);
>> + val = divisor;
>> + val |= MDIO_RATE_ADJ_DIVIDENT << MDIO_RATE_ADJ_DIVIDENT_SHIFT;
>> + writel(val, md->base + MDIO_RATE_ADJ_EXT_OFFSET);
>> + writel(val, md->base + MDIO_RATE_ADJ_INT_OFFSET);
>> + }
>> +}

\
 
 \ /
  Last update: 2018-07-26 22:00    [W:1.570 / U:1.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site