#include <linux/module.h>
#include <linux/pci.h>
#include <linux/gfp.h>
#include <linux/sched.h>
#include <linux/notifier.h>
#include <linux/cpumask.h>
#include <linux/ktime.h>
#include <linux/delay.h>
#include <linux/debugfs.h>
#include <linux/stop_machine.h>
#include <linux/i7300_idle.h>
#include <asm/idle.h>
#include "../dma/ioat/hw.h"
#include "../dma/ioat/registers.h"
Go to the source code of this file.
|
| module_param_named (debug, debug, uint, 0644) |
|
| MODULE_PARM_DESC (debug,"Enable debug printks in this driver") |
|
| module_param_named (forceload, forceload, uint, 0644) |
|
| MODULE_PARM_DESC (debug,"Enable driver testing on unvalidated i5000") |
|
| module_param_named (throttle_low_limit, throttle_low_limit, uint, 0644) |
|
| MODULE_PARM_DESC (throttle_low_limit,"Value for THRTLOWLM activation field ""(0 = disable throttle, 1 = Max throttle, 168 = Min throttle)") |
|
| MODULE_DEVICE_TABLE (pci, pci_tbl) |
|
| module_init (i7300_idle_init) |
|
| module_exit (i7300_idle_exit) |
|
| MODULE_AUTHOR ("Andy Henroid <[email protected]>") |
|
| MODULE_DESCRIPTION ("Intel Chipset DIMM Idle Power Saving Driver v"I7300_IDLE_DRIVER_VERSION) |
|
| MODULE_LICENSE ("GPL") |
|
#define DIMM_GTW_MODE (1UL << 17) |
#define DIMM_THRTCTL 0x67 |
#define DIMM_THRTCTL_THRMHUNT (1UL << 0) |
#define DIMM_THRTLOW 0x64 |
#define DURATION_THRESHOLD_US 100 |
#define DURATION_WEIGHT_PCT 55 |
#define I7300_IDLE_DRIVER_VERSION "1.55" |
#define I7300_PRINT "i7300_idle:" |
#define IOAT_CHANBASE |
( |
|
ioat_ctl, |
|
|
|
chan |
|
) |
| (ioat_ctl + 0x80 + 0x80 * chan) |
#define IOAT_DESC_DADDR_SNP_CTL (1UL << 2) |
#define IOAT_DESC_SADDR_SNP_CTL (1UL << 1) |
#define MAX_STOP_RETRIES 10 |
#define MAX_THROTTLE_LOW_LIMIT 168 |
MODULE_DESCRIPTION |
( |
"Intel Chipset DIMM Idle Power Saving Driver v" |
I7300_IDLE_DRIVER_VERSION | ) |
|
MODULE_DEVICE_TABLE |
( |
pci |
, |
|
|
pci_tbl |
|
|
) |
| |
module_exit |
( |
i7300_idle_exit |
| ) |
|
module_init |
( |
i7300_idle_init |
| ) |
|
module_param_named |
( |
forceload |
, |
|
|
forceload |
, |
|
|
uint |
, |
|
|
0644 |
|
|
) |
| |
module_param_named |
( |
throttle_low_limit |
, |
|
|
throttle_low_limit |
, |
|
|
uint |
, |
|
|
0644 |
|
|
) |
| |
MODULE_PARM_DESC |
( |
debug |
, |
|
|
"Enable driver testing on unvalidated i5000" |
|
|
) |
| |
MODULE_PARM_DESC |
( |
throttle_low_limit |
, |
|
|
"Value for THRTLOWLM activation field ""(0 = disable throttle, 1 = Max throttle, 168 = Min throttle)" |
|
|
) |
| |
Initial value:= {
{&total_starts,
"total_starts",
NULL},
{&total_us,
"total_us",
NULL},
}