From 95b1cb39fc1da012b5b552af7b1b601a8963d363 Mon Sep 17 00:00:00 2001 From: Sven Peter Date: Sat, 6 Mar 2021 10:57:21 +0100 Subject: [PATCH] utils.h: add poll32 Signed-off-by: Sven Peter --- src/utils.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/utils.h b/src/utils.h index 60bd28ff..0eb34b6e 100644 --- a/src/utils.h +++ b/src/utils.h @@ -313,4 +313,16 @@ void reboot(void) __attribute__((noreturn)); reboot(); \ } while (0) +static inline int poll32(u64 addr, u32 mask, u32 target, u32 timeout) +{ + while (--timeout > 0) { + u32 value = read32(addr) & mask; + if (value == target) + return 0; + udelay(1); + } + + return -1; +} + #endif