[U-Boot] [PATCH 1/2] OMAP4: clocks-common: prevent USB DPLL from being stuck in running state
R, Sricharan
r.sricharan at ti.com
Thu Jun 21 12:51:27 CEST 2012
Hi Roger,
>>> If board config does not select CONFIG_USB_EHCI_OMAP (e.g. omap4_sdp4430_config)
>>> then the USB DPLL is stuck in running state and it prevents the system from
>>> entering OFF mode (i.e. l3init domain is kept ON).
>>>
>>> With this patch we unconditionally configure the USB DPLL so it functions
>>> properly even on boards not using CONFIG_USB_EHCI_OMAP
>>>
>>> Signed-off-by: Roger Quadros <rogerq at ti.com>
>>> ---
>>> arch/arm/cpu/armv7/omap-common/clocks-common.c | 4 ----
>>> 1 files changed, 0 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/arch/arm/cpu/armv7/omap-common/clocks-common.c b/arch/arm/cpu/armv7/omap-common/clocks-common.c
>>> index 10d286a..206f0ab 100644
>>> --- a/arch/arm/cpu/armv7/omap-common/clocks-common.c
>>> +++ b/arch/arm/cpu/armv7/omap-common/clocks-common.c
>>> @@ -256,7 +256,6 @@ void configure_mpu_dpll(void)
>>> debug("MPU DPLL locked\n");
>>> }
>>>
>>> -#ifdef CONFIG_USB_EHCI_OMAP
>>> static void setup_usb_dpll(void)
>>> {
>>> const struct dpll_params *params;
>>> @@ -283,7 +282,6 @@ static void setup_usb_dpll(void)
>>> /* Now setup the dpll with the regular function */
>>> do_setup_dpll(&prcm->cm_clkmode_dpll_usb, params, DPLL_LOCK, "usb");
>>> }
>>> -#endif
>>>
>>> static void setup_dplls(void)
>>> {
>>> @@ -317,9 +315,7 @@ static void setup_dplls(void)
>>> /* MPU dpll */
>>> configure_mpu_dpll();
>>>
>>> -#ifdef CONFIG_USB_EHCI_OMAP
>>> setup_usb_dpll();
>>> -#endif
>>> }
>> I remember that this change was introduced recently to configure the USB dpll
>> only when host functionality is used at u-boot level.
>> Now in our case why is kernel dependent upon the boot loader settings ?.
>>
>
> I'm not sure.
>
> How was it earlier? Was the USB DPLL always configured or never configured?
Previously all dplls, clocks, mux was configured by u-boot, but that
should not be the
case any more.
The point is u-boot should configure only things required for its
functionality
and to start the kernel boot, but nothing more than that.
Now we are removing things which are not required for u-boot.
So this change is going to re-introduce some thing at u-boot which may
not be required on all boards.
Thanks,
Sricharan
More information about the U-Boot
mailing list