wait_ticks() is only used by the ppc-specific __udelay()
function. Having the powerpc version of __udelay implicitly call
WATCHDOG_RESET() is inconsistent with other architectures' (and the
generic __udelay() in lib/time.c) implementations. It also means a
driver cannot use __udelay() as the raw primitive it is supposed to be
- e.g. a watchdog driver that needs to do a short delay between two
operations needed to perform a ping sequence.

There are not that many __udelay() calls, so I doubt this causes a
regression for anyone. Callers of udelay() are not affected, since
udelay() itself does one WATCHDOG_RESET() per __udelay() call.

Signed-off-by: Rasmus Villemoes <rasmus.villem...@prevas.dk>
---
 arch/powerpc/lib/ticks.S | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/powerpc/lib/ticks.S b/arch/powerpc/lib/ticks.S
index c487f938fa..f4410bbc3a 100644
--- a/arch/powerpc/lib/ticks.S
+++ b/arch/powerpc/lib/ticks.S
@@ -42,7 +42,6 @@ wait_ticks:
        addc    r14, r4, r14    /* Compute end time lower */
        addze   r15, r3         /*     and end time upper */
 
-       WATCHDOG_RESET          /* Trigger watchdog, if needed */
 1:     bl      get_ticks       /* Get current time */
        subfc   r4, r4, r14     /* Subtract current time from end time */
        subfe.  r3, r3, r15
-- 
2.23.0

Reply via email to