Commit ca41247f authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Linus Torvalds

[PATCH] Atari Falcon IDE: clean up ide_intr_lock handling

Here's a fix on top of the patch you commited:

  - Rename ide_intr_lock to falconide_intr_lock
  - Add falconide_intr_lock to the Falcon IDE driver itself
  - Test for CONFIG_BLK_DEV_FALCON_IDE instead of CONFIG_ATARI since
    falconide_intr_lock is Falcon IDE-specific, not Atari-specific
parent d360ab81
......@@ -48,6 +48,14 @@ static int falconide_offsets[IDE_NR_PORTS] __initdata = {
};
/*
* falconide_intr_lock is used to obtain access to the IDE interrupt,
* which is shared between several drivers.
*/
int falconide_intr_lock;
/*
* Probe for a Falcon IDE interface
*/
......
......@@ -144,19 +144,19 @@ static __inline__ void ide_init_default_hwifs(void)
#define ATA_ARCH_ACK_INTR
#ifdef CONFIG_ATARI
#ifdef CONFIG_BLK_DEV_FALCON_IDE
#define ATA_ARCH_LOCK
extern int ide_intr_lock;
extern int falconide_intr_lock;
static __inline__ void ide_release_lock (void)
{
if (MACH_IS_ATARI) {
if (ide_intr_lock == 0) {
if (falconide_intr_lock == 0) {
printk("ide_release_lock: bug\n");
return;
}
ide_intr_lock = 0;
falconide_intr_lock = 0;
stdma_release();
}
}
......@@ -164,14 +164,14 @@ static __inline__ void ide_release_lock (void)
static __inline__ void ide_get_lock(void (*handler)(int, void *, struct pt_regs *), void *data)
{
if (MACH_IS_ATARI) {
if (ide_intr_lock == 0) {
if (falconide_intr_lock == 0) {
if (in_interrupt() > 0)
panic( "Falcon IDE hasn't ST-DMA lock in interrupt" );
stdma_lock(handler, data);
ide_intr_lock = 1;
falconide_intr_lock = 1;
}
}
}
#endif /* CONFIG_ATARI */
#endif /* CONFIG_BLK_DEV_FALCON_IDE */
#endif /* __KERNEL__ */
#endif /* _M68K_IDE_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment