Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 745e1976 authored by Guenter Roeck's avatar Guenter Roeck Committed by Sebastian Reichel
Browse files

power/reset: xgene: Use mdelay instead of jiffies based timeout



jiffies are not running at this stage of system shutdown, meaning an
error in the reset function would never be reported. Replace with mdelay().

Cc: Loc Ho <lho@apm.com>
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 43160718
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@
 * For system shutdown, this is board specify. If a board designer
 * implements GPIO shutdown, use the gpio-poweroff.c driver.
 */
#include <linux/delay.h>
#include <linux/io.h>
#include <linux/of_device.h>
#include <linux/of_address.h>
@@ -43,15 +44,12 @@ static struct xgene_reboot_context *xgene_restart_ctx;
static void xgene_restart(enum reboot_mode mode, const char *cmd)
{
	struct xgene_reboot_context *ctx = xgene_restart_ctx;
	unsigned long timeout;

	/* Issue the reboot */
	if (ctx)
		writel(ctx->mask, ctx->csr);

	timeout = jiffies + HZ;
	while (time_before(jiffies, timeout))
		cpu_relax();
	mdelay(1000);

	dev_emerg(ctx->dev, "Unable to restart system\n");
}