u-boot-brain/drivers/watchdog/sandbox_wdt.c
Tom Rini d024236e5a Remove unnecessary instances of DECLARE_GLOBAL_DATA_PTR
We have a large number of places where while we historically referenced
gd in the code we no longer do, as well as cases where the code added
that line "just in case" during development and never dropped it.

Signed-off-by: Tom Rini <trini@konsulko.com>
2018-04-27 14:54:48 -04:00

65 lines
1.2 KiB
C

/*
* Copyright 2017 Google, Inc
*
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
#include <dm.h>
#include <wdt.h>
#include <asm/state.h>
static int sandbox_wdt_start(struct udevice *dev, u64 timeout, ulong flags)
{
struct sandbox_state *state = state_get_current();
state->wdt.counter = timeout;
state->wdt.running = true;
return 0;
}
static int sandbox_wdt_stop(struct udevice *dev)
{
struct sandbox_state *state = state_get_current();
state->wdt.running = false;
return 0;
}
static int sandbox_wdt_reset(struct udevice *dev)
{
struct sandbox_state *state = state_get_current();
state->wdt.reset_count++;
return 0;
}
static int sandbox_wdt_expire_now(struct udevice *dev, ulong flags)
{
sandbox_wdt_start(dev, 1, flags);
return 0;
}
static const struct wdt_ops sandbox_wdt_ops = {
.start = sandbox_wdt_start,
.reset = sandbox_wdt_reset,
.stop = sandbox_wdt_stop,
.expire_now = sandbox_wdt_expire_now,
};
static const struct udevice_id sandbox_wdt_ids[] = {
{ .compatible = "sandbox,wdt" },
{}
};
U_BOOT_DRIVER(wdt_sandbox) = {
.name = "wdt_sandbox",
.id = UCLASS_WDT,
.of_match = sandbox_wdt_ids,
.ops = &sandbox_wdt_ops,
};