i386: prepare sharing the PIT code

PIT clock events work already and the PIT handling is the same for
i386 and x86_64. x86_64 does not support PIT as a clock source, so
disable the PIT clocksource for x86_64.

Use the i386 i8253.h include file for x86_64 as well to share the
exports and the PIT constants.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
This commit is contained in:
Thomas Gleixner 2007-10-12 23:04:06 +02:00 committed by Thomas Gleixner
parent f5e0e93faf
commit 0190dae54d
4 changed files with 22 additions and 33 deletions

View File

@ -32,7 +32,6 @@
#include <acpi/achware.h> /* for PM timer frequency */
#include <acpi/acpi_bus.h>
#endif
#include <asm/8253pit.h>
#include <asm/i8253.h>
#include <asm/pgtable.h>
#include <asm/vsyscall.h>
@ -292,9 +291,6 @@ static unsigned int __init tsc_calibrate_cpu_khz(void)
return pmc_now * tsc_khz / (tsc_now - tsc_start);
}
#define PIT_MODE 0x43
#define PIT_CH0 0x40
static void __pit_init(int val, u8 mode)
{
unsigned long flags;

View File

@ -1,5 +1,23 @@
#ifdef CONFIG_X86_32
# include "i8253_32.h"
#else
# include "i8253_64.h"
#ifndef __ASM_I8253_H__
#define __ASM_I8253_H__
#ifdef CONFIG_X86_64
# include <asm/8253pit.h>
#endif
/* i8253A PIT registers */
#define PIT_MODE 0x43
#define PIT_CH0 0x40
#define PIT_CH2 0x42
extern spinlock_t i8253_lock;
#ifdef CONFIG_GENERIC_CLOCKEVENTS
extern struct clock_event_device *global_clock_event;
extern void setup_pit_timer(void);
#endif
#endif /* __ASM_I8253_H__ */

View File

@ -1,19 +0,0 @@
#ifndef __ASM_I8253_H__
#define __ASM_I8253_H__
/* i8253A PIT registers */
#define PIT_MODE 0x43
#define PIT_CH0 0x40
#define PIT_CH2 0x42
extern spinlock_t i8253_lock;
#ifdef CONFIG_GENERIC_CLOCKEVENTS
extern struct clock_event_device *global_clock_event;
extern void setup_pit_timer(void);
#endif
#endif /* __ASM_I8253_H__ */

View File

@ -1,6 +0,0 @@
#ifndef __ASM_I8253_H__
#define __ASM_I8253_H__
extern spinlock_t i8253_lock;
#endif /* __ASM_I8253_H__ */