Although there is an existing code comment about flushing the writes,
writes were not actually being flushed.
Actually flush the writes by changing readl_relaxed() to readl().
Fixes: 4ed224aeaf661 ("watchdog: Add Apple SoC watchdog driver")
Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Chan <towinchenmi@gmail.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20241001170018.20139-2-towinchenmi@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
* can take up to ~20-25ms until the SoC is actually reset. Just wait
* 50ms here to be safe.
*/
- (void)readl_relaxed(wdt->regs + APPLE_WDT_WD1_CUR_TIME);
+ (void)readl(wdt->regs + APPLE_WDT_WD1_CUR_TIME);
mdelay(50);
return 0;