#include <linux/module.h>
#include <linux/init.h>
#include <linux/platform_device.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/acpi.h>
#include <linux/delay.h>
#include <linux/fs.h>
#include <linux/watchdog.h>
#include <linux/miscdevice.h>
#include <linux/uaccess.h>
#include <linux/kref.h>
#include <linux/slab.h>
#include "sch56xx-common.h"
Go to the source code of this file.
|
| module_param (nowayout, int, 0) |
|
| MODULE_PARM_DESC (nowayout,"Watchdog cannot be stopped once started (default="__MODULE_STRING(WATCHDOG_NOWAYOUT)")") |
|
int | sch56xx_read_virtual_reg (u16 addr, u16 reg) |
|
| EXPORT_SYMBOL (sch56xx_read_virtual_reg) |
|
int | sch56xx_write_virtual_reg (u16 addr, u16 reg, u8 val) |
|
| EXPORT_SYMBOL (sch56xx_write_virtual_reg) |
|
int | sch56xx_read_virtual_reg16 (u16 addr, u16 reg) |
|
| EXPORT_SYMBOL (sch56xx_read_virtual_reg16) |
|
int | sch56xx_read_virtual_reg12 (u16 addr, u16 msb_reg, u16 lsn_reg, int high_nibble) |
|
| EXPORT_SYMBOL (sch56xx_read_virtual_reg12) |
|
struct sch56xx_watchdog_data * | sch56xx_watchdog_register (struct device *parent, u16 addr, u32 revision, struct mutex *io_lock, int check_enabled) |
|
| EXPORT_SYMBOL (sch56xx_watchdog_register) |
|
void | sch56xx_watchdog_unregister (struct sch56xx_watchdog_data *data) |
|
| EXPORT_SYMBOL (sch56xx_watchdog_unregister) |
|
| MODULE_DESCRIPTION ("SMSC SCH56xx Hardware Monitoring Common Code") |
|
| MODULE_AUTHOR ("Hans de Goede <[email protected]>") |
|
| MODULE_LICENSE ("GPL") |
|
| module_init (sch56xx_init) |
|
| module_exit (sch56xx_exit) |
|
#define pr_fmt |
( |
|
fmt | ) |
KBUILD_MODNAME ": " fmt |
#define SCH56XX_CMD_READ 0x02 |
#define SCH56XX_CMD_WRITE 0x03 |
#define SCH56XX_REG_WDOG_CONTROL 0x58C |
#define SCH56XX_REG_WDOG_OUTPUT_ENABLE 0x58E |
#define SCH56XX_REG_WDOG_PRESET 0x58B |
#define SCH56XX_WDOG_OUTPUT_ENABLE 0x02 |
#define SCH56XX_WDOG_TIME_BASE_SEC 0x01 |
#define SIO_LOCK_KEY 0xAA /* Key to disable Super-I/O */ |
#define SIO_REG_ADDR 0x66 /* Logical device address (2 bytes) */ |
#define SIO_REG_DEVID 0x20 /* Device ID */ |
#define SIO_REG_ENABLE 0x30 /* Logical device enable */ |
#define SIO_REG_LDSEL 0x07 /* Logical device select */ |
#define SIO_SCH5627_ID 0xC6 /* Chipset ID */ |
#define SIO_SCH5636_ID 0xC7 /* Chipset ID */ |
#define SIO_SCH56XX_LD_EM 0x0C /* Embedded uController Logical Dev */ |
#define SIO_UNLOCK_KEY 0x55 /* Key to enable Super-I/O */ |
MODULE_DESCRIPTION |
( |
"SMSC SCH56xx Hardware Monitoring Common Code" |
| ) |
|
module_exit |
( |
sch56xx_exit |
| ) |
|
module_init |
( |
sch56xx_init |
| ) |
|
module_param |
( |
nowayout |
, |
|
|
int |
, |
|
|
0 |
|
|
) |
| |
int sch56xx_read_virtual_reg |
( |
u16 |
addr, |
|
|
u16 |
reg |
|
) |
| |
int sch56xx_read_virtual_reg12 |
( |
u16 |
addr, |
|
|
u16 |
msb_reg, |
|
|
u16 |
lsn_reg, |
|
|
int |
high_nibble |
|
) |
| |
int sch56xx_read_virtual_reg16 |
( |
u16 |
addr, |
|
|
u16 |
reg |
|
) |
| |
int sch56xx_write_virtual_reg |
( |
u16 |
addr, |
|
|
u16 |
reg, |
|
|
u8 |
val |
|
) |
| |