diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-26 16:25:14 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-04-26 16:25:14 -0400 |
commit | ac95beedf8bc97b24f9540d4da9952f07221c023 (patch) | |
tree | c29837142c8083b6fcaf1767abcb0a4533676cd1 /drivers/ide/ide.c | |
parent | 4a27214d7be31e122db4102166f49ec15958e8e9 (diff) |
ide: add struct ide_port_ops (take 2)
* Move hooks for port/host specific methods from ide_hwif_t to
'struct ide_port_ops'.
* Add 'const struct ide_port_ops *port_ops' to 'struct ide_port_info'
and ide_hwif_t.
* Update host drivers and core code accordingly.
While at it:
* Rename ata66_*() cable detect functions to *_cable_detect() to match
the standard naming. (Suggested by Sergei Shtylyov)
v2:
* Fix build for bast-ide. (Noticed by Andrew Morton)
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide.c')
-rw-r--r-- | drivers/ide/ide.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c index d868ca44d033..91a3c8aff1e2 100644 --- a/drivers/ide/ide.c +++ b/drivers/ide/ide.c | |||
@@ -585,11 +585,12 @@ int set_pio_mode(ide_drive_t *drive, int arg) | |||
585 | { | 585 | { |
586 | struct request rq; | 586 | struct request rq; |
587 | ide_hwif_t *hwif = drive->hwif; | 587 | ide_hwif_t *hwif = drive->hwif; |
588 | const struct ide_port_ops *port_ops = hwif->port_ops; | ||
588 | 589 | ||
589 | if (arg < 0 || arg > 255) | 590 | if (arg < 0 || arg > 255) |
590 | return -EINVAL; | 591 | return -EINVAL; |
591 | 592 | ||
592 | if (hwif->set_pio_mode == NULL || | 593 | if (port_ops == NULL || port_ops->set_pio_mode == NULL || |
593 | (hwif->host_flags & IDE_HFLAG_NO_SET_MODE)) | 594 | (hwif->host_flags & IDE_HFLAG_NO_SET_MODE)) |
594 | return -ENOSYS; | 595 | return -ENOSYS; |
595 | 596 | ||