Subject: [PATCH] Revert "ARM: AM33xx: fix module_wait_ready without clkctrl register"

From: [email-masked] (Dave Gerlach)
Date: Mon, 11 Jul 2016 16:50:12 -0500

On 07/11/2016 04:43 PM, Dave Gerlach wrote:
> Hi,
> On 07/11/2016 04:39 PM, Dave Gerlach wrote:
>> This reverts commit 183e2077d007aa4b697efba095ecfea7244a6107.
>>
>
> This is a fix for an external abort seen on am335x platforms during boot
> on next-20160711. The offending patch was merged to next on
> next-20160705 and I haven't seen any ill effects from reverting it with
> this patch, and the external abort goes away entirely with it reverted.
>

Failure can be seen here [1].

Regards,
Dave

[1] 
https://storage.kernelci.org/next/next-20160711/arm-omap2plus_defconfig/lab-baylibre-seattle/boot-am335x-boneblack.html

> Regards,
> Dave
>
>> The original patch added a check to am33xx_cm_wait_module_ready for a
>> clkctrl offset of 0 as an invalid case, however, clkctrl offset of 0 is
>> perfectly valid for hwmods, in particular the rtc.
>>
>> Without reverting this patch sometimes external aborts are seen on
>> am335x during boot. This is due to the am33xx_cm_wait_module_ready
>> function immediately returning 0 rather than waiting for the RTC_CLKCTRL
>> register to indicate it is actually ready before rtc register accesses
>> happen.
>>
>> Signed-off-by: Dave Gerlach <[email-masked]>
>> ---
>>   arch/arm/mach-omap2/cm33xx.c | 3 ---
>>   1 file changed, 3 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/cm33xx.c b/arch/arm/mach-omap2/cm33xx.c
>> index c073fb57dd13..7b181f929525 100644
>> --- a/arch/arm/mach-omap2/cm33xx.c
>> +++ b/arch/arm/mach-omap2/cm33xx.c
>> @@ -220,9 +220,6 @@ static int am33xx_cm_wait_module_ready(u8 part,
>> s16 inst, u16 clkctrl_offs,
>>   {
>>       int i = 0;
>>
>> -    if (!clkctrl_offs)
>> -        return 0;
>> -
>>       omap_test_timeout(_is_module_ready(inst, clkctrl_offs),
>>                 MAX_MODULE_READY_TIME, i);
>>
>>
>