android_kernel_xiaomi_sm8350/arch
Thomas Gleixner ad62ca2bd8 [PATCH] i386: disable local apic timer via command line or dmi quirk
The local APIC timer stops to work in deeper C-States.  This is handled by
the ACPI code and a broadcast mechanism in the clockevents / tick managment
code.

Some systems do not expose the deeper C-States to the kernel, but switch
into deeper C-States behind the kernels back.  This delays the local apic
timer interrupts for ever and makes the systems unusable.

Add a command line option to disable the local apic timer and a dmi
quirk for known broken systems.

Andi sayeth:

  While not wrong by itself i think it is still better to use some heuristic
  -- like "has battery in ACPI" With the DMI table if the problem is more wide
  spread we will just continue extending it.

  But anyways should be ok now for .21 although I'm not really happy with
  it.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ingo Molnar <mingo@elte.hu>
Cc: john stultz <johnstul@us.ibm.com>
Grudgingly-acked-by: Andi Kleen <ak@suse.de>
Cc: Len Brown <lenb@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-03-22 19:39:05 -07:00
..
alpha
arm Merge master.kernel.org:/home/rmk/linux-2.6-arm 2007-03-19 20:05:16 -07:00
arm26
avr32 [PATCH] gpio_direction_output() needs an initial value 2007-03-16 19:25:04 -07:00
cris
frv
h8300
i386 [PATCH] i386: disable local apic timer via command line or dmi quirk 2007-03-22 19:39:05 -07:00
ia64 [IA64] Fix wrong /proc/iomem on SGI Altix 2007-03-20 13:54:44 -07:00
m32r
m68k
m68knommu [PATCH] m68knommu: remove local_bh_count 2007-03-06 18:08:38 -08:00
mips [MIPS] Export except_vec_vi_{mori,lui,ori} as text symbols. 2007-03-19 20:22:44 +00:00
parisc
powerpc [PATCH] pasemi trivial iomem annotations 2007-03-14 15:27:50 -07:00
ppc mv643xx_eth: Place explicit port number in mv643xx_eth_platform_data 2007-03-06 06:14:54 -05:00
s390 [S390] Wire up sys_utimes. 2007-03-19 13:19:07 +01:00
sh sh: Fix bogus regs pointer in do_IRQ(). 2007-03-14 13:03:35 +09:00
sh64
sparc [PATCH] sparc: nr_free_pages() is unsigned long 2007-03-14 15:27:50 -07:00
sparc64 [SPARC64]: store-init needs trailing membar. 2007-03-19 13:27:33 -07:00
um [PATCH] stacktrace doesn't work on uml 2007-03-14 15:27:49 -07:00
v850
x86_64 [PATCH] Fix atomicity of TIF update in flush_thread() for x86_64 2007-03-18 11:35:08 -07:00
xtensa