linux/drivers/watchdog/lenovo_se10_wdt.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * WDT driver for Lenovo SE10.
 */

#include <linux/delay.h>
#include <linux/dmi.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/platform_device.h>
#include <linux/string.h>
#include <linux/types.h>
#include <linux/watchdog.h>

#define STATUS_PORT
#define CMD_PORT
#define DATA_PORT
#define OUTBUF_FULL
#define INBUF_EMPTY
#define CFG_LDN
#define CFG_BRAM_LDN
#define CFG_PORT
#define CFG_SIZE
#define CMD_SIZE
#define BRAM_SIZE

#define UNLOCK_KEY
#define LOCK_KEY

#define CUS_WDT_SWI
#define CUS_WDT_CFG
#define CUS_WDT_FEED
#define CUS_WDT_CNT

#define DRVNAME

/*The timeout range is 1-255 seconds*/
#define MIN_TIMEOUT
#define MAX_TIMEOUT
#define MAX_WAIT

#define WATCHDOG_TIMEOUT
static unsigned short bram_base;
static struct platform_device *se10_pdev;

static int timeout; /* in seconds */
module_param(timeout, int, 0);
MODULE_PARM_DESC();

static bool nowayout = WATCHDOG_NOWAYOUT;
module_param(nowayout, bool, 0);
MODULE_PARM_DESC();

struct se10_wdt {};

static int set_bram(unsigned char offset, unsigned char val)
{}

static void wait_for_buffer(int condition)
{}

static void send_cmd(unsigned char cmd)
{}

static void lpc_write(unsigned char index, unsigned char data)
{}

static unsigned char lpc_read(unsigned char index)
{}

static int wdt_start(struct watchdog_device *wdog)
{}

static int wdt_set_timeout(struct watchdog_device *wdog, unsigned int timeout)
{}

static int wdt_stop(struct watchdog_device *wdog)
{}

static unsigned int wdt_get_time(struct watchdog_device *wdog)
{}

static int wdt_ping(struct watchdog_device *wdog)
{}

static const struct watchdog_info wdt_info =;

static const struct watchdog_ops se10_wdt_ops =;

static unsigned int get_chipID(void)
{}

static int se10_wdt_probe(struct platform_device *pdev)
{}

static struct platform_driver se10_wdt_driver =;

static int se10_create_platform_device(const struct dmi_system_id *id)
{}

static const struct dmi_system_id se10_dmi_table[] __initconst =;
MODULE_DEVICE_TABLE(dmi, se10_dmi_table);

static int __init se10_wdt_init(void)
{}

static void __exit se10_wdt_exit(void)
{}

module_init();
module_exit(se10_wdt_exit);

MODULE_LICENSE();
MODULE_AUTHOR();
MODULE_AUTHOR();
MODULE_DESCRIPTION();