[U-Boot] watchdog: omap_wdt: improve watchdog reset path

Tom Rini
2018-03-16T13:50:53Z

On Thu, Mar 01, 2018 at 03:15:48AM +0200, Ruslan Bilovol wrote:

> Remove busy looping during watchdog reset.
> Each polling of W_PEND_WTGR bit ("finish posted
> write") after watchdog reset takes 120-140us
> on BeagleBone Black board. Current U-Boot code
> has watchdog resets in random places and often
> there is situation when watchdog is reset
> few times in a row in nested functions.
> This adds extra delays and slows the whole system.
>
> Instead of polling W_PEND_WTGR bit, we skip
> watchdog reset if the bit is set. Anyway, watchdog
> is in the middle of reset *right now*, so we can
> just return.
>
> This noticeably increases performance of the
> system. Below are some measurements on BBB:
> - DFU upload over USB 15% faster
> - fastboot image upload 3x times faster
> - USB ep0 transfers with 4k packets 20% faster
>
> Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com>
> Tested-by: Sam Protsenko <semen.protsenko@linaro.org>
> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
> Reviewed-by: Lukasz Majewski <lukma@denx.de>
> Tested-by: Alex Kiernan <alex.kiernan@gmail.com>

Applied to u-boot/master, thanks!

--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180316/c6012d87/attachment.sig>