[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d176da18-b608-9738-317c-6ca01cb937e9@ti.com>
Date: Thu, 10 Aug 2017 11:24:50 -0500
From: Grygorii Strashko <grygorii.strashko@...com>
To: Max Uvarov <muvarov@...il.com>, <netdev@...r.kernel.org>
CC: <linux-omap@...r.kernel.org>
Subject: Re: [PATCHv2 1/2] drivers: net: davinci_mdio: remove busy loop on
wait user access
On 08/10/2017 02:47 AM, Max Uvarov wrote:
> Polling 14 mdio devices on single mdio bus eats 30% of 1Ghz cpu time
> due to busy loop in wait(). Add small delay to relax cpu.
>
> Signed-off-by: Max Uvarov <muvarov@...il.com>
yep. cover letter is good to have.
Reviewed-by: Grygorii Strashko <grygorii.strashko@...com>
> ---
> v2: fix spelling in commit description.
>
> drivers/net/ethernet/ti/davinci_mdio.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/ti/davinci_mdio.c b/drivers/net/ethernet/ti/davinci_mdio.c
> index 33df340..611e7cc 100644
> --- a/drivers/net/ethernet/ti/davinci_mdio.c
> +++ b/drivers/net/ethernet/ti/davinci_mdio.c
> @@ -198,8 +198,10 @@ static inline int wait_for_user_access(struct davinci_mdio_data *data)
> return 0;
>
> reg = __raw_readl(®s->control);
> - if ((reg & CONTROL_IDLE) == 0)
> + if ((reg & CONTROL_IDLE) == 0) {
> + usleep_range(100, 200);
> continue;
> + }
>
> /*
> * An emac soft_reset may have clobbered the mdio controller's
>
--
regards,
-grygorii
Powered by blists - more mailing lists