[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20161221.132551.414712257161308584.davem@davemloft.net>
Date: Wed, 21 Dec 2016 13:25:51 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: heiko@...ech.de
Cc: netdev@...r.kernel.org, peppe.cavallaro@...com,
alexandre.torgue@...com, wxt@...k-chips.com,
briannorris@...omium.org, dianders@...omium.org,
linux-rockchip@...ts.infradead.org
Subject: Re: [PATCH] net: ethernet: stmmac: dwmac-rk: make clk enablement
first in powerup
From: Heiko Stuebner <heiko@...ech.de>
Date: Tue, 20 Dec 2016 17:17:06 +0100
> Right now the dwmac-rk tries to set up the GRF-specific speed and link
> options before enabling clocks, phys etc and on previous socs this works
> because the GRF is supplied on the whole by one clock.
>
> On the rk3399 however the GRF (General Register Files) clock-supply
> has been split into multiple clocks and while there is no specific
> grf-gmac clock like for other sub-blocks, it seems the mac-specific
> portions are actually supplied by the general mac clock.
>
> This results in hangs on rk3399 boards if the driver is build as module.
> When built in te problem of course doesn't surface, as the clocks
> are of course still on at the stage before clock_disable_unused.
>
> To solve this, simply move the clock enablement to the first position
> in the powerup callback. This is also a good idea in general to
> enable clocks before everything else.
>
> Tested on rk3288, rk3368 and rk3399 the dwmac still works on all of them.
>
> Signed-off-by: Heiko Stuebner <heiko@...ech.de>
Applied, thank you.
Powered by blists - more mailing lists