Michael Kelley
35b69a420b
clockevents/drivers/i8253: Add support for PIT shutdown quirk
...
Add support for platforms where pit_shutdown() doesn't work because of a
quirk in the PIT emulation. On these platforms setting the counter register
to zero causes the PIT to start running again, negating the shutdown.
Provide a global variable that controls whether the counter register is
zero'ed, which platform specific code can override.
Signed-off-by: Michael Kelley <mikelley@microsoft.com >
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Cc: "gregkh@linuxfoundation.org " <gregkh@linuxfoundation.org >
Cc: "devel@linuxdriverproject.org " <devel@linuxdriverproject.org >
Cc: "daniel.lezcano@linaro.org " <daniel.lezcano@linaro.org >
Cc: "virtualization@lists.linux-foundation.org " <virtualization@lists.linux-foundation.org >
Cc: "jgross@suse.com " <jgross@suse.com >
Cc: "akataria@vmware.com " <akataria@vmware.com >
Cc: "olaf@aepfle.de " <olaf@aepfle.de >
Cc: "apw@canonical.com " <apw@canonical.com >
Cc: vkuznets <vkuznets@redhat.com >
Cc: "jasowang@redhat.com " <jasowang@redhat.com >
Cc: "marcelo.cerri@canonical.com " <marcelo.cerri@canonical.com >
Cc: KY Srinivasan <kys@microsoft.com >
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/1541303219-11142-2-git-send-email-mikelley@microsoft.com
2018-11-04 11:04:46 +01:00
Thomas Gleixner
01898e3e29
i8253: Cleanup outb/inb magic
...
Remove the hysterical outb/inb_pit defines and use outb_p/inb_p in the
code.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Cc: Russell King <linux@arm.linux.org.uk >
Cc: Ralf Baechle <ralf@linux-mips.org >
Cc: John Stultz <john.stultz@linaro.org >
Link: http://lkml.kernel.org/r/20110609130622.348437125@linutronix.de
2011-07-01 10:37:15 +02:00
Thomas Gleixner
e6220bdc94
i8253: Create common clockevent implementation
...
arm, mips and x86 implement i8253 based clockevents. All the same code
copied. Create a common implementation in drivers/clocksource/i8253.c.
About time to rename drivers/clocksource/ to something else.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Cc: Russell King <linux@arm.linux.org.uk >
Cc: Ralf Baechle <ralf@linux-mips.org >
Cc: John Stultz <john.stultz@linaro.org >
Link: http://lkml.kernel.org/r/20110609130621.921710458@linutronix.de
2011-07-01 10:37:14 +02:00
Ralf Baechle
850492760c
i8253: Move remaining content and delete asm/i8253.h
...
Move setup_pit_timer() declaration to the common header file and
remove the arch specific ones.
[ tglx: Move it to linux/i8253.h instead of asm/mips and asm/x86 ]
Signed-off-by: Ralf Baechle <ralf@linux-mips.org >
Cc: linux-arm-kernel@lists.infradead.org
Cc: Russell King <linux@arm.linux.org.uk >
Cc: linux-mips@linux-mips.org
Cc: Sergei Shtylyov <sshtylyov@mvista.com
Link: http://lkml.kernel.org/r/20110601180610.913463093@duck.linux-mips.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2011-06-09 15:01:40 +02:00
Ralf Baechle
49cf3f29a1
i8253: Consolidate definitions of PIT_LATCH
...
x86 defines PIT_LATCH as LATCH which in <linux/timex.h> is defined as
((CLOCK_TICK_RATE + HZ/2) / HZ) and <asm/timex.h> again defines
CLOCK_TICK_RATE as PIT_TICK_RATE.
MIPS defines PIT_LATCH as LATCH which in <linux/timex.h> is defined as
((CLOCK_TICK_RATE + HZ/2) / HZ) and <asm/timex.h> again defines
CLOCK_TICK_RATE as 1193182.
ARM defines PITCH_LATCH as ((PIT_TICK_RATE + HZ / 2) / HZ) - and that's
the sanest thing and equivalent to above definitions so use that as the
new definition in <linux/i8253.h>.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org >
Cc: Russell King <linux@arm.linux.org.uk >
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mips@linux-mips.org
Link: http://lkml.kernel.org/r/20110601180610.832810002@duck.linux-mips.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2011-06-09 15:01:40 +02:00
Ralf Baechle
cb2455aa27
i8253: Unify all kernel declarations of i8253_lock
...
Signed-off-by: Ralf Baechle <ralf@linux-mips.org >
Cc: Russell King <linux@arm.linux.org.uk >
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mips@linux-mips.org
Link: http://lkml.kernel.org/r/20110601180610.134151920@duck.linux-mips.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2011-06-09 15:01:38 +02:00
Ralf Baechle
334955ef96
i8253: Create linux/i8253.h and use it in all 8253 related files
...
Signed-off-by: Ralf Baechle <ralf@linux-mips.org >
Cc: linux-mips@linux-mips.org
Link: http://lkml.kernel.org/r/20110601180610.054254048@duck.linux-mips.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
arch/arm/mach-footbridge/isa-timer.c | 2 +-
arch/mips/cobalt/time.c | 2 +-
arch/mips/jazz/irq.c | 2 +-
arch/mips/kernel/i8253.c | 2 +-
arch/mips/mti-malta/malta-time.c | 2 +-
arch/mips/sgi-ip22/ip22-time.c | 2 +-
arch/mips/sni/time.c | 2 +-
arch/x86/kernel/apic/apic.c | 2 +-
arch/x86/kernel/apm_32.c | 2 +-
arch/x86/kernel/hpet.c | 2 +-
arch/x86/kernel/i8253.c | 2 +-
arch/x86/kernel/time.c | 2 +-
drivers/block/hd.c | 2 +-
drivers/clocksource/i8253.c | 2 +-
drivers/input/gameport/gameport.c | 2 +-
drivers/input/joystick/analog.c | 2 +-
drivers/input/misc/pcspkr.c | 2 +-
include/linux/i8253.h | 11 +++++++++++
sound/drivers/pcsp/pcsp.h | 2 +-
19 files changed, 29 insertions(+), 18 deletions(-)
2011-06-09 15:01:37 +02:00