aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ide.h
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-27 07:46:22 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-27 07:46:22 -0400
commite354c1d8033d97a97a38a1b2cffa1bc285b92ad4 (patch)
treecd520f7cd4a417c1f78d81e3a3b62936697b35f6 /include/linux/ide.h
parentd15a613ba01ff2b209ecad7a38ccbb23b3b06c92 (diff)
ide: remove IDE_ARCH_LOCK (v2)
* Add ->{get,release}_lock methods to struct ide_port_info and struct ide_host. * Convert core IDE code, m68k IDE code and falconide support to use ->{get,release}_lock methods instead of ide_{get,release}_lock(). * Remove IDE_ARCH_LOCK. v2: * Build fix from Geert updating ide_{get,release}_lock() callers in falconide.c. Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Michael Schmitz <schmitz@debian.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'include/linux/ide.h')
-rw-r--r--include/linux/ide.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h
index cda80b5779a4..b7d95f09cc2e 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -202,12 +202,6 @@ static inline void ide_std_init_ports(hw_regs_t *hw,
202 202
203#define MAX_HWIFS 10 203#define MAX_HWIFS 10
204 204
205/* Currently only Atari needs it */
206#ifndef IDE_ARCH_LOCK
207# define ide_release_lock() do {} while (0)
208# define ide_get_lock(hdlr, data) do {} while (0)
209#endif /* IDE_ARCH_LOCK */
210
211/* 205/*
212 * Now for the data we need to maintain per-drive: ide_drive_t 206 * Now for the data we need to maintain per-drive: ide_drive_t
213 */ 207 */
@@ -845,8 +839,14 @@ struct ide_host {
845 ide_hwif_t *ports[MAX_HOST_PORTS + 1]; 839 ide_hwif_t *ports[MAX_HOST_PORTS + 1];
846 unsigned int n_ports; 840 unsigned int n_ports;
847 struct device *dev[2]; 841 struct device *dev[2];
842
848 int (*init_chipset)(struct pci_dev *); 843 int (*init_chipset)(struct pci_dev *);
844
845 void (*get_lock)(irq_handler_t, void *);
846 void (*release_lock)(void);
847
849 irq_handler_t irq_handler; 848 irq_handler_t irq_handler;
849
850 unsigned long host_flags; 850 unsigned long host_flags;
851 void *host_priv; 851 void *host_priv;
852 ide_hwif_t *cur_port; /* for hosts requiring serialization */ 852 ide_hwif_t *cur_port; /* for hosts requiring serialization */
@@ -1358,7 +1358,12 @@ enum {
1358 1358
1359struct ide_port_info { 1359struct ide_port_info {
1360 char *name; 1360 char *name;
1361
1361 int (*init_chipset)(struct pci_dev *); 1362 int (*init_chipset)(struct pci_dev *);
1363
1364 void (*get_lock)(irq_handler_t, void *);
1365 void (*release_lock)(void);
1366
1362 void (*init_iops)(ide_hwif_t *); 1367 void (*init_iops)(ide_hwif_t *);
1363 void (*init_hwif)(ide_hwif_t *); 1368 void (*init_hwif)(ide_hwif_t *);
1364 int (*init_dma)(ide_hwif_t *, 1369 int (*init_dma)(ide_hwif_t *,