[PATCH 1/5] USB: ehci-atmel: rework clk handling
Alan Stern
stern at rowland.harvard.edu
Tue Mar 17 12:01:07 PDT 2015
On Tue, 17 Mar 2015, Boris Brezillon wrote:
> The EHCI IP only needs the UTMI/UPLL (uclk) and the peripheral (iclk)
> clocks to work properly. Remove the useless system clock (fclk).
>
> Avoid calling set_rate on the fixed rate UTMI/IPLL clock and remove
> useless IS_ENABLED(CONFIG_COMMON_CLK) tests (all at91 platforms have been
> moved to the CCF).
>
> This patch also fixes a bug introduced by 3440ef1 (ARM: at91/dt: fix USB
> high-speed clock to select UTMI), which was leaving the usb clock
> uninitialized and preventing the OHCI driver from setting the usb clock
> rate to 48MHz.
> This bug was caused by several things:
> 1/ usb clock drivers set the CLK_SET_RATE_GATE flag, which means the rate
> cannot be changed once the clock is prepared
> 2/ The EHCI driver was retrieving and preparing/enabling the uhpck
> clock which was in turn preparing its parent clock (the usb clock),
> thus preventing any rate change because of 1/
>
> Signed-off-by: Boris Brezillon <boris.brezillon at free-electrons.com>
Acked-by: Alan Stern <stern at rowland.harvard.edu>
More information about the linux-arm-kernel
mailing list