linux-stable-rt/include/asm-x86_64
Venkatesh Pallipadi 991528d734 ACPI: Processor native C-states using MWAIT
Intel processors starting with the Core Duo support
support processor native C-state using the MWAIT instruction.
Refer: Intel Architecture Software Developer's Manual
http://www.intel.com/design/Pentium4/manuals/253668.htm

Platform firmware exports the support for Native C-state to OS using
ACPI _PDC and _CST methods.
Refer: Intel Processor Vendor-Specific ACPI: Interface Specification
http://www.intel.com/technology/iapc/acpi/downloads/302223.htm

With Processor Native C-state, we use 'MWAIT' instruction on the processor
to enter different C-states (C1, C2, C3).  We won't use the special IO
ports to enter C-state and no SMM mode etc required to enter C-state.
Overall this will mean better C-state support.

One major advantage of using MWAIT for all C-states is, with this and
"treat interrupt as break event" feature of MWAIT, we can now get accurate
timing for the time spent in C1, C2, ..  states.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
2006-10-14 00:35:39 -04:00
..
8253pit.h
Kbuild [PATCH] Split i386 and x86_64 ptrace.h 2006-09-26 08:49:10 -07:00
a.out.h
acpi.h [PATCH] Remove some cruft in apic id checking during processor setup 2006-09-26 10:52:37 +02:00
agp.h
alternative-asm.i Remove all inclusions of <linux/config.h> 2006-10-04 03:38:54 -04:00
alternative.h
apic.h IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
apicdef.h
atomic.h
auxvec.h
bitops.h [PATCH] optimize hweight64 for x86_64 2006-09-26 10:52:38 +02:00
boot.h
bootsetup.h
bug.h
bugs.h
byteorder.h
cache.h fix file specification in comments 2006-10-03 23:01:26 +02:00
cacheflush.h
calgary.h
calling.h
checksum.h
compat.h
cpu.h
cpufeature.h
cputime.h
current.h
debugreg.h
delay.h
desc.h
div64.h
dma-mapping.h [PATCH] Move valid_dma_direction() from x86_64 to generic code 2006-09-29 09:18:10 -07:00
dma.h
dmi.h
dwarf2.h [PATCH] i386/x86-64: Work around gcc bug with noreturn functions in unwinder 2006-09-26 10:52:41 +02:00
e820.h [PATCH] Have x86_64 use add_active_range() and free_area_init_nodes 2006-09-27 08:26:11 -07:00
edac.h
elf.h
emergency-restart.h
errno.h
fcntl.h
fixmap.h
floppy.h IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
fpu32.h
futex.h
genapic.h [PATCH] x86_64 irq: Allocate a vector across all cpus for genapic_flat. 2006-10-08 12:24:02 -07:00
hardirq.h [PATCH] genirq: irq: generalize the check for HARDIRQ_BITS 2006-10-04 07:55:28 -07:00
hpet.h
hw_irq.h [PATCH] i386/x86_64: Remove global IO_APIC_VECTOR 2006-10-08 12:24:02 -07:00
hypertransport.h [PATCH] Initial generic hypertransport interrupt support 2006-10-04 07:55:29 -07:00
i387.h [PATCH] Add __must_check to copy_*_user 2006-09-26 10:52:39 +02:00
ia32.h
ia32_unistd.h
ide.h
idle.h
intel_arch_perfmon.h
io.h [PATCH] Consolidate check_signature 2006-10-11 11:14:23 -07:00
io_apic.h [PATCH] genirq: x86_64 irq: Kill irq compression 2006-10-04 07:55:29 -07:00
ioctl.h
ioctls.h
ipcbuf.h
ipi.h
irq.h [PATCH] genirq: x86_64 irq: make vector_irq per cpu 2006-10-04 07:55:29 -07:00
irq_regs.h IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
irqflags.h
k8.h
kdebug.h
kexec.h [PATCH] Avoid overwriting the current pgd (V4, x86_64) 2006-09-26 10:52:38 +02:00
kmap_types.h
kprobes.h
ldt.h
linkage.h
local.h
mach_apic.h [PATCH] x86_64 irq: Allocate a vector across all cpus for genapic_flat. 2006-10-08 12:24:02 -07:00
mc146818rtc.h
mce.h [PATCH] x86: Refactor thermal throttle processing 2006-09-26 10:52:42 +02:00
mman.h
mmsegment.h
mmu.h
mmu_context.h
mmzone.h
module.h
mpspec.h
msgbuf.h
msidef.h [PATCH] genirq: x86_64 irq: Move msi message composition into io_apic.c 2006-10-04 07:55:28 -07:00
msr.h
mtrr.h
mutex.h
namei.h
nmi.h [PATCH] x86: Clean up x86 NMI sysctls 2006-09-30 01:47:55 +02:00
node.h
numa.h
page.h
param.h
parport.h
pci-direct.h [PATCH] x86: Allow disabling early pci scans with pci=noearly or disallowing conf1 2006-09-26 10:52:41 +02:00
pci.h
pda.h [PATCH] Fix idle notifiers 2006-09-26 10:52:40 +02:00
percpu.h [PATCH] Fix typo in "syntax error if percpu macros are incorrectly used" patch 2006-10-06 08:53:41 -07:00
pgalloc.h
pgtable.h Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
poll.h
posix_types.h
prctl.h
processor.h ACPI: Processor native C-states using MWAIT 2006-10-14 00:35:39 -04:00
proto.h IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
ptrace-abi.h [PATCH] Split i386 and x86_64 ptrace.h 2006-09-26 08:49:10 -07:00
ptrace.h [PATCH] Add regs_return_value() helper 2006-10-02 07:57:16 -07:00
resource.h
rtc.h
rwlock.h
scatterlist.h
seccomp.h
sections.h
segment.h
semaphore.h [PATCH] Use early clobber in semaphores 2006-09-30 01:47:55 +02:00
sembuf.h
serial.h
setup.h
shmbuf.h
shmparam.h
sigcontext.h
sigcontext32.h
siginfo.h
signal.h
smp.h Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
socket.h
sockios.h
sparsemem.h
spinlock.h [PATCH] Directed yield: cpu_relax variants for spinlocks and rw-locks 2006-10-01 00:39:21 -07:00
spinlock_types.h
stacktrace.h
stat.h
statfs.h
string.h
suspend.h
swiotlb.h
system.h [PATCH] Don't leak NT bit into next task 2006-09-26 10:52:41 +02:00
tce.h
termbits.h
termios.h
therm_throt.h [PATCH] x86: Refactor thermal throttle processing 2006-09-26 10:52:42 +02:00
thread_info.h
timex.h
tlb.h
tlbflush.h
topology.h [PATCH] sched: introduce child field in sched_domain 2006-10-03 08:04:06 -07:00
types.h
uaccess.h [PATCH] Add proper sparse __user casts to __copy_to_user_inatomic 2006-09-30 01:47:55 +02:00
ucontext.h
unaligned.h
unistd.h [PATCH] rename the provided execve functions to kernel_execve 2006-10-02 07:57:23 -07:00
unwind.h [PATCH] Fix unwinder warning in traps.c 2006-09-26 10:52:42 +02:00
user.h
user32.h
vga.h
vsyscall.h [PATCH] kill wall_jiffies 2006-10-01 00:39:27 -07:00
vsyscall32.h
xor.h