linux/drivers/watchdog/ftwdt010_wdt.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Watchdog driver for Faraday Technology FTWDT010
 *
 * Copyright (C) 2017 Linus Walleij <[email protected]>
 *
 * Inspired by the out-of-tree drivers from OpenWRT:
 * Copyright (C) 2009 Paulius Zaleckas <[email protected]>
 */

#include <linux/bitops.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/mod_devicetable.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/watchdog.h>

#define FTWDT010_WDCOUNTER
#define FTWDT010_WDLOAD
#define FTWDT010_WDRESTART
#define FTWDT010_WDCR

#define WDRESTART_MAGIC

#define WDCR_CLOCK_5MHZ
#define WDCR_WDEXT
#define WDCR_WDINTR
#define WDCR_SYS_RST
#define WDCR_ENABLE

#define WDT_CLOCK

struct ftwdt010_wdt {};

static inline
struct ftwdt010_wdt *to_ftwdt010_wdt(struct watchdog_device *wdd)
{}

static void ftwdt010_enable(struct ftwdt010_wdt *gwdt,
			    unsigned int timeout,
			    bool need_irq)
{}

static int ftwdt010_wdt_start(struct watchdog_device *wdd)
{}

static int ftwdt010_wdt_stop(struct watchdog_device *wdd)
{}

static int ftwdt010_wdt_ping(struct watchdog_device *wdd)
{}

static int ftwdt010_wdt_set_timeout(struct watchdog_device *wdd,
				  unsigned int timeout)
{}

static int ftwdt010_wdt_restart(struct watchdog_device *wdd,
				unsigned long action, void *data)
{}

static irqreturn_t ftwdt010_wdt_interrupt(int irq, void *data)
{}

static const struct watchdog_ops ftwdt010_wdt_ops =;

static const struct watchdog_info ftwdt010_wdt_info =;


static int ftwdt010_wdt_probe(struct platform_device *pdev)
{}

static int __maybe_unused ftwdt010_wdt_suspend(struct device *dev)
{}

static int __maybe_unused ftwdt010_wdt_resume(struct device *dev)
{}

static const struct dev_pm_ops ftwdt010_wdt_dev_pm_ops =;

static const struct of_device_id ftwdt010_wdt_match[] =;
MODULE_DEVICE_TABLE(of, ftwdt010_wdt_match);

static struct platform_driver ftwdt010_wdt_driver =;
module_platform_driver();
MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();