diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-10-10 16:39:26 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-10-10 16:39:26 -0400 |
commit | 7e59ea21aab1a91ca31bc64c7d3035ebdbd336d1 (patch) | |
tree | 6cdbc937687dbba316f22e2b68cb036511fce951 /drivers/ide/pci/sc1200.c | |
parent | 2a924662b646fa25cb491d50aa1202a94aa4ac55 (diff) |
ide: check drive->present in ide_get_paired_drive()
* Change ide_get_paired_drive() to return NULL if peer device
is not present and update all users accordingly.
While at it:
* ide_get_paired_drive() -> ide_get_pair_dev()
* Use ide_get_pair_dev() in cs5530.c, sc1200.c and via82cxxx.c.
There should be no functional changes caused by this patch.
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/sc1200.c')
-rw-r--r-- | drivers/ide/pci/sc1200.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ide/pci/sc1200.c b/drivers/ide/pci/sc1200.c index 695cc9742048..37326d2205b8 100644 --- a/drivers/ide/pci/sc1200.c +++ b/drivers/ide/pci/sc1200.c | |||
@@ -104,11 +104,11 @@ static void sc1200_tunepio(ide_drive_t *drive, u8 pio) | |||
104 | static u8 sc1200_udma_filter(ide_drive_t *drive) | 104 | static u8 sc1200_udma_filter(ide_drive_t *drive) |
105 | { | 105 | { |
106 | ide_hwif_t *hwif = drive->hwif; | 106 | ide_hwif_t *hwif = drive->hwif; |
107 | ide_drive_t *mate = &hwif->drives[(drive->dn & 1) ^ 1]; | 107 | ide_drive_t *mate = ide_get_pair_dev(drive); |
108 | u16 *mateid = mate->id; | 108 | u16 *mateid = mate->id; |
109 | u8 mask = hwif->ultra_mask; | 109 | u8 mask = hwif->ultra_mask; |
110 | 110 | ||
111 | if (mate->present == 0) | 111 | if (mate == NULL) |
112 | goto out; | 112 | goto out; |
113 | 113 | ||
114 | if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) { | 114 | if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) { |