[PATCH] x86: i8253/i8259A lock cleanup
Introduce proper declarations for i8253_lock and i8259A_lock. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
bcbda35ca7
commit
306e440daf
|
@ -35,6 +35,7 @@
|
|||
#include <asm/desc.h>
|
||||
#include <asm/arch_hooks.h>
|
||||
#include <asm/hpet.h>
|
||||
#include <asm/i8253.h>
|
||||
|
||||
#include <mach_apic.h>
|
||||
|
||||
|
@ -879,7 +880,6 @@ fake_ioapic_page:
|
|||
*/
|
||||
static unsigned int __devinit get_8254_timer_count(void)
|
||||
{
|
||||
extern spinlock_t i8253_lock;
|
||||
unsigned long flags;
|
||||
|
||||
unsigned int count;
|
||||
|
|
|
@ -228,10 +228,10 @@
|
|||
#include <asm/system.h>
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/desc.h>
|
||||
#include <asm/i8253.h>
|
||||
|
||||
#include "io_ports.h"
|
||||
|
||||
extern spinlock_t i8253_lock;
|
||||
extern unsigned long get_cmos_time(void);
|
||||
extern void machine_real_restart(unsigned char *, int);
|
||||
|
||||
|
@ -1168,8 +1168,7 @@ static void get_time_diff(void)
|
|||
static void reinit_timer(void)
|
||||
{
|
||||
#ifdef INIT_TIMER_AFTER_SUSPEND
|
||||
unsigned long flags;
|
||||
extern spinlock_t i8253_lock;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&i8253_lock, flags);
|
||||
/* set the clock to 100 Hz */
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include <asm/smp.h>
|
||||
#include <asm/desc.h>
|
||||
#include <asm/timer.h>
|
||||
#include <asm/i8259.h>
|
||||
|
||||
#include <mach_apic.h>
|
||||
|
||||
|
@ -1566,7 +1567,6 @@ void print_all_local_APICs (void)
|
|||
|
||||
void /*__init*/ print_PIC(void)
|
||||
{
|
||||
extern spinlock_t i8259A_lock;
|
||||
unsigned int v;
|
||||
unsigned long flags;
|
||||
|
||||
|
|
|
@ -68,7 +68,8 @@
|
|||
|
||||
#include "io_ports.h"
|
||||
|
||||
extern spinlock_t i8259A_lock;
|
||||
#include <asm/i8259.h>
|
||||
|
||||
int pit_latch_buggy; /* extern */
|
||||
|
||||
#include "do_timer.h"
|
||||
|
@ -85,6 +86,8 @@ extern unsigned long wall_jiffies;
|
|||
DEFINE_SPINLOCK(rtc_lock);
|
||||
EXPORT_SYMBOL(rtc_lock);
|
||||
|
||||
#include <asm/i8253.h>
|
||||
|
||||
DEFINE_SPINLOCK(i8253_lock);
|
||||
EXPORT_SYMBOL(i8253_lock);
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
#include <asm/io.h>
|
||||
#include <asm/pgtable.h>
|
||||
#include <asm/fixmap.h>
|
||||
#include "io_ports.h"
|
||||
#include <asm/i8253.h>
|
||||
|
||||
extern spinlock_t i8253_lock;
|
||||
#include "io_ports.h"
|
||||
|
||||
/* Number of usecs that the last interrupt was delayed */
|
||||
static int delay_at_last_interrupt;
|
||||
|
|
|
@ -15,9 +15,8 @@
|
|||
#include <asm/smp.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch_hooks.h>
|
||||
#include <asm/i8253.h>
|
||||
|
||||
extern spinlock_t i8259A_lock;
|
||||
extern spinlock_t i8253_lock;
|
||||
#include "do_timer.h"
|
||||
#include "io_ports.h"
|
||||
|
||||
|
@ -166,7 +165,6 @@ struct init_timer_opts __initdata timer_pit_init = {
|
|||
|
||||
void setup_pit_timer(void)
|
||||
{
|
||||
extern spinlock_t i8253_lock;
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&i8253_lock, flags);
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include "mach_timer.h"
|
||||
|
||||
#include <asm/hpet.h>
|
||||
#include <asm/i8253.h>
|
||||
|
||||
#ifdef CONFIG_HPET_TIMER
|
||||
static unsigned long hpet_usec_quotient;
|
||||
|
@ -35,8 +36,6 @@ static inline void cpufreq_delayed_get(void);
|
|||
|
||||
int tsc_disable __devinitdata = 0;
|
||||
|
||||
extern spinlock_t i8253_lock;
|
||||
|
||||
static int use_tsc;
|
||||
/* Number of usecs that the last interrupt was delayed */
|
||||
static int delay_at_last_interrupt;
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include <linux/irq.h>
|
||||
#include <asm/tlbflush.h>
|
||||
#include <asm/arch_hooks.h>
|
||||
#include <asm/i8253.h>
|
||||
|
||||
/*
|
||||
* Power off function, if any
|
||||
|
@ -182,7 +183,6 @@ voyager_timer_interrupt(struct pt_regs *regs)
|
|||
* and swiftly introduce it to something sharp and
|
||||
* pointy. */
|
||||
__u16 val;
|
||||
extern spinlock_t i8253_lock;
|
||||
|
||||
spin_lock(&i8253_lock);
|
||||
|
||||
|
|
|
@ -1064,7 +1064,6 @@ void print_all_local_APICs (void)
|
|||
|
||||
void __apicdebuginit print_PIC(void)
|
||||
{
|
||||
extern spinlock_t i8259A_lock;
|
||||
unsigned int v;
|
||||
unsigned long flags;
|
||||
|
||||
|
|
|
@ -156,11 +156,13 @@ else \
|
|||
|
||||
|
||||
#if (HD_DELAY > 0)
|
||||
|
||||
#include <asm/i8253.h>
|
||||
|
||||
unsigned long last_req;
|
||||
|
||||
unsigned long read_timer(void)
|
||||
{
|
||||
extern spinlock_t i8253_lock;
|
||||
unsigned long t, flags;
|
||||
int i;
|
||||
|
||||
|
|
|
@ -60,12 +60,13 @@ static void gameport_disconnect_port(struct gameport *gameport);
|
|||
|
||||
#if defined(__i386__)
|
||||
|
||||
#include <asm/i8253.h>
|
||||
|
||||
#define DELTA(x,y) ((y)-(x)+((y)<(x)?1193182/HZ:0))
|
||||
#define GET_TIME(x) do { x = get_time_pit(); } while (0)
|
||||
|
||||
static unsigned int get_time_pit(void)
|
||||
{
|
||||
extern spinlock_t i8253_lock;
|
||||
unsigned long flags;
|
||||
unsigned int count;
|
||||
|
||||
|
|
|
@ -140,12 +140,14 @@ struct analog_port {
|
|||
*/
|
||||
|
||||
#ifdef __i386__
|
||||
|
||||
#include <asm/i8253.h>
|
||||
|
||||
#define GET_TIME(x) do { if (cpu_has_tsc) rdtscl(x); else x = get_time_pit(); } while (0)
|
||||
#define DELTA(x,y) (cpu_has_tsc ? ((y) - (x)) : ((x) - (y) + ((x) < (y) ? CLOCK_TICK_RATE / HZ : 0)))
|
||||
#define TIME_NAME (cpu_has_tsc?"TSC":"PIT")
|
||||
static unsigned int get_time_pit(void)
|
||||
{
|
||||
extern spinlock_t i8253_lock;
|
||||
unsigned long flags;
|
||||
unsigned int count;
|
||||
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
#ifndef __ASM_I8253_H__
|
||||
#define __ASM_I8253_H__
|
||||
|
||||
extern spinlock_t i8253_lock;
|
||||
|
||||
#endif /* __ASM_I8253_H__ */
|
|
@ -1,6 +1,7 @@
|
|||
/* defines for inline arch setup functions */
|
||||
|
||||
#include <asm/apic.h>
|
||||
#include <asm/i8259.h>
|
||||
|
||||
/**
|
||||
* do_timer_interrupt_hook - hook into timer tick
|
||||
|
|
|
@ -217,4 +217,6 @@ extern int assign_irq_vector(int irq);
|
|||
|
||||
void enable_NMI_through_LVT0 (void * dummy);
|
||||
|
||||
extern spinlock_t i8259A_lock;
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue