aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/pci/sl82c105.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/pci/sl82c105.c')
-rw-r--r--drivers/ide/pci/sl82c105.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/ide/pci/sl82c105.c b/drivers/ide/pci/sl82c105.c
index c7a125b66c29..da13a1298ada 100644
--- a/drivers/ide/pci/sl82c105.c
+++ b/drivers/ide/pci/sl82c105.c
@@ -1,6 +1,4 @@
1/* 1/*
2 * linux/drivers/ide/pci/sl82c105.c
3 *
4 * SL82C105/Winbond 553 IDE driver 2 * SL82C105/Winbond 553 IDE driver
5 * 3 *
6 * Maintainer unknown. 4 * Maintainer unknown.
@@ -78,7 +76,7 @@ static unsigned int get_pio_timings(ide_drive_t *drive, u8 pio)
78 */ 76 */
79static void sl82c105_set_pio_mode(ide_drive_t *drive, const u8 pio) 77static void sl82c105_set_pio_mode(ide_drive_t *drive, const u8 pio)
80{ 78{
81 struct pci_dev *dev = HWIF(drive)->pci_dev; 79 struct pci_dev *dev = to_pci_dev(drive->hwif->dev);
82 int reg = 0x44 + drive->dn * 4; 80 int reg = 0x44 + drive->dn * 4;
83 u16 drv_ctrl; 81 u16 drv_ctrl;
84 82
@@ -147,7 +145,7 @@ static inline void sl82c105_reset_host(struct pci_dev *dev)
147static void sl82c105_dma_lost_irq(ide_drive_t *drive) 145static void sl82c105_dma_lost_irq(ide_drive_t *drive)
148{ 146{
149 ide_hwif_t *hwif = HWIF(drive); 147 ide_hwif_t *hwif = HWIF(drive);
150 struct pci_dev *dev = hwif->pci_dev; 148 struct pci_dev *dev = to_pci_dev(hwif->dev);
151 u32 val, mask = hwif->channel ? CTRL_IDE_IRQB : CTRL_IDE_IRQA; 149 u32 val, mask = hwif->channel ? CTRL_IDE_IRQB : CTRL_IDE_IRQA;
152 u8 dma_cmd; 150 u8 dma_cmd;
153 151
@@ -184,7 +182,7 @@ static void sl82c105_dma_lost_irq(ide_drive_t *drive)
184static void sl82c105_dma_start(ide_drive_t *drive) 182static void sl82c105_dma_start(ide_drive_t *drive)
185{ 183{
186 ide_hwif_t *hwif = HWIF(drive); 184 ide_hwif_t *hwif = HWIF(drive);
187 struct pci_dev *dev = hwif->pci_dev; 185 struct pci_dev *dev = to_pci_dev(hwif->dev);
188 int reg = 0x44 + drive->dn * 4; 186 int reg = 0x44 + drive->dn * 4;
189 187
190 DBG(("%s(drive:%s)\n", __FUNCTION__, drive->name)); 188 DBG(("%s(drive:%s)\n", __FUNCTION__, drive->name));
@@ -197,15 +195,17 @@ static void sl82c105_dma_start(ide_drive_t *drive)
197 195
198static void sl82c105_dma_timeout(ide_drive_t *drive) 196static void sl82c105_dma_timeout(ide_drive_t *drive)
199{ 197{
198 struct pci_dev *dev = to_pci_dev(drive->hwif->dev);
199
200 DBG(("sl82c105_dma_timeout(drive:%s)\n", drive->name)); 200 DBG(("sl82c105_dma_timeout(drive:%s)\n", drive->name));
201 201
202 sl82c105_reset_host(HWIF(drive)->pci_dev); 202 sl82c105_reset_host(dev);
203 ide_dma_timeout(drive); 203 ide_dma_timeout(drive);
204} 204}
205 205
206static int sl82c105_dma_end(ide_drive_t *drive) 206static int sl82c105_dma_end(ide_drive_t *drive)
207{ 207{
208 struct pci_dev *dev = HWIF(drive)->pci_dev; 208 struct pci_dev *dev = to_pci_dev(drive->hwif->dev);
209 int reg = 0x44 + drive->dn * 4; 209 int reg = 0x44 + drive->dn * 4;
210 int ret; 210 int ret;
211 211
@@ -224,7 +224,7 @@ static int sl82c105_dma_end(ide_drive_t *drive)
224 */ 224 */
225static void sl82c105_resetproc(ide_drive_t *drive) 225static void sl82c105_resetproc(ide_drive_t *drive)
226{ 226{
227 struct pci_dev *dev = HWIF(drive)->pci_dev; 227 struct pci_dev *dev = to_pci_dev(drive->hwif->dev);
228 u32 val; 228 u32 val;
229 229
230 DBG(("sl82c105_resetproc(drive:%s)\n", drive->name)); 230 DBG(("sl82c105_resetproc(drive:%s)\n", drive->name));
@@ -293,6 +293,7 @@ static unsigned int __devinit init_chipset_sl82c105(struct pci_dev *dev, const c
293 */ 293 */
294static void __devinit init_hwif_sl82c105(ide_hwif_t *hwif) 294static void __devinit init_hwif_sl82c105(ide_hwif_t *hwif)
295{ 295{
296 struct pci_dev *dev = to_pci_dev(hwif->dev);
296 unsigned int rev; 297 unsigned int rev;
297 298
298 DBG(("init_hwif_sl82c105(hwif: ide%d)\n", hwif->index)); 299 DBG(("init_hwif_sl82c105(hwif: ide%d)\n", hwif->index));
@@ -304,7 +305,7 @@ static void __devinit init_hwif_sl82c105(ide_hwif_t *hwif)
304 if (!hwif->dma_base) 305 if (!hwif->dma_base)
305 return; 306 return;
306 307
307 rev = sl82c105_bridge_revision(hwif->pci_dev); 308 rev = sl82c105_bridge_revision(dev);
308 if (rev <= 5) { 309 if (rev <= 5) {
309 /* 310 /*
310 * Never ever EVER under any circumstances enable 311 * Never ever EVER under any circumstances enable