Skip to content

Commit

Permalink
Use i8253.c lock for PC speaker on MIPS, too.
Browse files Browse the repository at this point in the history
The Jazz machines have to use the PIT timer for dyntick and highresolution
kernels.  This may break because currently just like i386 used to do MIPS
uses two separate spinlocks in the actual PIT code and the PC speaker
code.  So switch to do it the same that x86 currently does PIT locking.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Ralf Baechle authored and Linus Torvalds committed Nov 3, 2007
1 parent a89b771 commit 74521c2
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 2 deletions.
2 changes: 1 addition & 1 deletion arch/mips/kernel/i8253.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#include <asm/io.h>
#include <asm/time.h>

static DEFINE_SPINLOCK(i8253_lock);
DEFINE_SPINLOCK(i8253_lock);

/*
* Initialize the PIT timer.
Expand Down
2 changes: 1 addition & 1 deletion drivers/input/misc/pcspkr.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ MODULE_DESCRIPTION("PC Speaker beeper driver");
MODULE_LICENSE("GPL");
MODULE_ALIAS("platform:pcspkr");

#ifdef CONFIG_X86
#if defined(CONFIG_MIPS) || defined(CONFIG_X86)
/* Use the global PIT lock ! */
#include <asm/i8253.h>
#else
Expand Down
4 changes: 4 additions & 0 deletions include/asm-mips/i8253.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,15 @@
#ifndef __ASM_I8253_H
#define __ASM_I8253_H

#include <linux/spinlock.h>

/* i8253A PIT registers */
#define PIT_MODE 0x43
#define PIT_CH0 0x40
#define PIT_CH2 0x42

extern spinlock_t i8253_lock;

extern void setup_pit_timer(void);

#endif /* __ASM_I8253_H */

0 comments on commit 74521c2

Please sign in to comment.