Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 27471fdb authored by Andy Henroid's avatar Andy Henroid Committed by Len Brown
Browse files

i7300_idle driver v1.55



The Intel 7300 Memory Controller supports dynamic throttling of memory which can
be used to save power when system is idle. This driver does the memory
throttling when all CPUs are idle on such a system.

Refer to "Intel 7300 Memory Controller Hub (MCH)" datasheet
for the config space description.

Signed-off-by: default avatarAndy Henroid <andrew.d.henroid@intel.com>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
Signed-off-by: default avatarVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
parent c7d87d79
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -2078,6 +2078,12 @@ L: linux-ide@vger.kernel.org
L:	linux-scsi@vger.kernel.org
S:	Orphan

IDLE-I7300
P:	Andy Henroid
M:	andrew.d.henroid@intel.com
L:	linux-pm@lists.linux-foundation.org
S:	Supported

IEEE 1394 SUBSYSTEM (drivers/ieee1394)
P:	Ben Collins
M:	ben.collins@ubuntu.com
+2 −0
Original line number Diff line number Diff line
@@ -1536,6 +1536,8 @@ source "arch/x86/kernel/cpu/cpufreq/Kconfig"

source "drivers/cpuidle/Kconfig"

source "drivers/idle/Kconfig"

endmenu


+1 −0
Original line number Diff line number Diff line
@@ -82,6 +82,7 @@ obj-$(CONFIG_EISA) += eisa/
obj-y				+= lguest/
obj-$(CONFIG_CPU_FREQ)		+= cpufreq/
obj-$(CONFIG_CPU_IDLE)		+= cpuidle/
obj-y				+= idle/
obj-$(CONFIG_MMC)		+= mmc/
obj-$(CONFIG_MEMSTICK)		+= memstick/
obj-$(CONFIG_NEW_LEDS)		+= leds/
+3 −0
Original line number Diff line number Diff line
@@ -171,6 +171,9 @@ static int ioat_dma_enumerate_channels(struct ioatdma_device *device)
	xfercap_scale = readb(device->reg_base + IOAT_XFERCAP_OFFSET);
	xfercap = (xfercap_scale == 0 ? -1 : (1UL << xfercap_scale));

#if CONFIG_I7300_IDLE_IOAT_CHANNEL
	device->common.chancnt--;
#endif
	for (i = 0; i < device->common.chancnt; i++) {
		ioat_chan = kzalloc(sizeof(*ioat_chan), GFP_KERNEL);
		if (!ioat_chan) {

drivers/idle/Kconfig

0 → 100644
+16 −0
Original line number Diff line number Diff line

menu "Memory power savings"

config I7300_IDLE_IOAT_CHANNEL
	bool

config I7300_IDLE
	tristate "Intel chipset idle power saving driver"
	select I7300_IDLE_IOAT_CHANNEL
	depends on X86_64
	help
	  Enable idle power savings with certain Intel server chipsets.
	  The chipset must have I/O AT support, such as the Intel 7300.
	  The power savings depends on the type and quantity of DRAM devices.

endmenu
Loading