diff options
Diffstat (limited to 'drivers/ide/legacy/dtc2278.c')
-rw-r--r-- | drivers/ide/legacy/dtc2278.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/ide/legacy/dtc2278.c b/drivers/ide/legacy/dtc2278.c index 253a20fc8061..acd728368771 100644 --- a/drivers/ide/legacy/dtc2278.c +++ b/drivers/ide/legacy/dtc2278.c | |||
@@ -67,18 +67,20 @@ static void sub22 (char b, char c) | |||
67 | } | 67 | } |
68 | } | 68 | } |
69 | 69 | ||
70 | static DEFINE_SPINLOCK(dtc2278_lock); | ||
71 | |||
70 | static void dtc2278_set_pio_mode(ide_drive_t *drive, const u8 pio) | 72 | static void dtc2278_set_pio_mode(ide_drive_t *drive, const u8 pio) |
71 | { | 73 | { |
72 | unsigned long flags; | 74 | unsigned long flags; |
73 | 75 | ||
74 | if (pio >= 3) { | 76 | if (pio >= 3) { |
75 | spin_lock_irqsave(&ide_lock, flags); | 77 | spin_lock_irqsave(&dtc2278_lock, flags); |
76 | /* | 78 | /* |
77 | * This enables PIO mode4 (3?) on the first interface | 79 | * This enables PIO mode4 (3?) on the first interface |
78 | */ | 80 | */ |
79 | sub22(1,0xc3); | 81 | sub22(1,0xc3); |
80 | sub22(0,0xa0); | 82 | sub22(0,0xa0); |
81 | spin_unlock_irqrestore(&ide_lock, flags); | 83 | spin_unlock_irqrestore(&dtc2278_lock, flags); |
82 | } else { | 84 | } else { |
83 | /* we don't know how to set it back again.. */ | 85 | /* we don't know how to set it back again.. */ |
84 | } | 86 | } |