• Julien Panis's avatar
    bus: ti-sysc: Use fsleep() instead of usleep_range() in sysc_reset() · d929b2b7
    Julien Panis authored
    The am335x-evm started producing boot errors because of subtle timing
    changes:
    
    Unhandled fault: external abort on non-linefetch (0x1008) at 0xf03c1010
    ...
    sysc_reset from sysc_probe+0xf60/0x1514
    sysc_probe from platform_probe+0x5c/0xbc
    ...
    
    The fix consists in using the appropriate sleep function in sysc reset.
    For flexible sleeping, fsleep is recommended. Here, sysc delay parameter
    can take any value in [0 - 255] us range. As a result, fsleep() should
    be used, calling udelay() for a sysc delay lower than 10 us.
    Signed-off-by: default avatarJulien Panis <jpanis@baylibre.com>
    Fixes: e709ed70 ("bus: ti-sysc: Fix missing reset delay handling")
    Message-ID: <20230821-fix-ti-sysc-reset-v1-1-5a0a5d8fae55@baylibre.com>
    Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
    d929b2b7
ti-sysc.c 86.2 KB