diff options
Diffstat (limited to 'drivers/ide/pci')
-rw-r--r-- | drivers/ide/pci/cmd64x.c | 4 | ||||
-rw-r--r-- | drivers/ide/pci/cs5535.c | 2 | ||||
-rw-r--r-- | drivers/ide/pci/trm290.c | 29 |
3 files changed, 23 insertions, 12 deletions
diff --git a/drivers/ide/pci/cmd64x.c b/drivers/ide/pci/cmd64x.c index 51fca441c294..bc553337b1be 100644 --- a/drivers/ide/pci/cmd64x.c +++ b/drivers/ide/pci/cmd64x.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * linux/drivers/ide/pci/cmd64x.c Version 1.51 Nov 8, 2007 | 2 | * linux/drivers/ide/pci/cmd64x.c Version 1.52 Dec 24, 2007 |
3 | * | 3 | * |
4 | * cmd64x.c: Enable interrupts at initialization time on Ultra/PCI machines. | 4 | * cmd64x.c: Enable interrupts at initialization time on Ultra/PCI machines. |
5 | * Due to massive hardware bugs, UltraDMA is only supported | 5 | * Due to massive hardware bugs, UltraDMA is only supported |
@@ -564,6 +564,7 @@ static const struct ide_port_info cmd64x_chipsets[] __devinitdata = { | |||
564 | .init_chipset = init_chipset_cmd64x, | 564 | .init_chipset = init_chipset_cmd64x, |
565 | .init_hwif = init_hwif_cmd64x, | 565 | .init_hwif = init_hwif_cmd64x, |
566 | .enablebits = {{0x51,0x04,0x04}, {0x51,0x08,0x08}}, | 566 | .enablebits = {{0x51,0x04,0x04}, {0x51,0x08,0x08}}, |
567 | .chipset = ide_cmd646, | ||
567 | .host_flags = IDE_HFLAG_ABUSE_PREFETCH | IDE_HFLAG_BOOTABLE, | 568 | .host_flags = IDE_HFLAG_ABUSE_PREFETCH | IDE_HFLAG_BOOTABLE, |
568 | .pio_mask = ATA_PIO5, | 569 | .pio_mask = ATA_PIO5, |
569 | .mwdma_mask = ATA_MWDMA2, | 570 | .mwdma_mask = ATA_MWDMA2, |
@@ -573,7 +574,6 @@ static const struct ide_port_info cmd64x_chipsets[] __devinitdata = { | |||
573 | .init_chipset = init_chipset_cmd64x, | 574 | .init_chipset = init_chipset_cmd64x, |
574 | .init_hwif = init_hwif_cmd64x, | 575 | .init_hwif = init_hwif_cmd64x, |
575 | .enablebits = {{0x51,0x04,0x04}, {0x51,0x08,0x08}}, | 576 | .enablebits = {{0x51,0x04,0x04}, {0x51,0x08,0x08}}, |
576 | .chipset = ide_cmd646, | ||
577 | .host_flags = IDE_HFLAG_ABUSE_PREFETCH | IDE_HFLAG_BOOTABLE, | 577 | .host_flags = IDE_HFLAG_ABUSE_PREFETCH | IDE_HFLAG_BOOTABLE, |
578 | .pio_mask = ATA_PIO5, | 578 | .pio_mask = ATA_PIO5, |
579 | .mwdma_mask = ATA_MWDMA2, | 579 | .mwdma_mask = ATA_MWDMA2, |
diff --git a/drivers/ide/pci/cs5535.c b/drivers/ide/pci/cs5535.c index 9094916e3780..ddcbeba671e1 100644 --- a/drivers/ide/pci/cs5535.c +++ b/drivers/ide/pci/cs5535.c | |||
@@ -49,7 +49,7 @@ | |||
49 | #define ATAC_BM0_PRD 0x04 | 49 | #define ATAC_BM0_PRD 0x04 |
50 | #define CS5535_CABLE_DETECT 0x48 | 50 | #define CS5535_CABLE_DETECT 0x48 |
51 | 51 | ||
52 | /* Format I PIO settings. We seperate out cmd and data for safer timings */ | 52 | /* Format I PIO settings. We separate out cmd and data for safer timings */ |
53 | 53 | ||
54 | static unsigned int cs5535_pio_cmd_timings[5] = | 54 | static unsigned int cs5535_pio_cmd_timings[5] = |
55 | { 0xF7F4, 0x53F3, 0x13F1, 0x5131, 0x1131 }; | 55 | { 0xF7F4, 0x53F3, 0x13F1, 0x5131, 0x1131 }; |
diff --git a/drivers/ide/pci/trm290.c b/drivers/ide/pci/trm290.c index 0895e753a35d..0151d7fdfb8a 100644 --- a/drivers/ide/pci/trm290.c +++ b/drivers/ide/pci/trm290.c | |||
@@ -1,7 +1,8 @@ | |||
1 | /* | 1 | /* |
2 | * linux/drivers/ide/pci/trm290.c Version 1.02 Mar. 18, 2000 | 2 | * linux/drivers/ide/pci/trm290.c Version 1.05 Dec. 26, 2007 |
3 | * | 3 | * |
4 | * Copyright (c) 1997-1998 Mark Lord | 4 | * Copyright (c) 1997-1998 Mark Lord |
5 | * Copyright (c) 2007 MontaVista Software, Inc. <source@mvista.com> | ||
5 | * May be copied or modified under the terms of the GNU General Public License | 6 | * May be copied or modified under the terms of the GNU General Public License |
6 | * | 7 | * |
7 | * June 22, 2004 - get rid of check_region | 8 | * June 22, 2004 - get rid of check_region |
@@ -177,7 +178,7 @@ static void trm290_selectproc (ide_drive_t *drive) | |||
177 | trm290_prepare_drive(drive, drive->using_dma); | 178 | trm290_prepare_drive(drive, drive->using_dma); |
178 | } | 179 | } |
179 | 180 | ||
180 | static void trm290_ide_dma_exec_cmd(ide_drive_t *drive, u8 command) | 181 | static void trm290_dma_exec_cmd(ide_drive_t *drive, u8 command) |
181 | { | 182 | { |
182 | BUG_ON(HWGROUP(drive)->handler != NULL); /* paranoia check */ | 183 | BUG_ON(HWGROUP(drive)->handler != NULL); /* paranoia check */ |
183 | ide_set_handler(drive, &ide_dma_intr, WAIT_CMD, NULL); | 184 | ide_set_handler(drive, &ide_dma_intr, WAIT_CMD, NULL); |
@@ -185,7 +186,7 @@ static void trm290_ide_dma_exec_cmd(ide_drive_t *drive, u8 command) | |||
185 | outb(command, IDE_COMMAND_REG); | 186 | outb(command, IDE_COMMAND_REG); |
186 | } | 187 | } |
187 | 188 | ||
188 | static int trm290_ide_dma_setup(ide_drive_t *drive) | 189 | static int trm290_dma_setup(ide_drive_t *drive) |
189 | { | 190 | { |
190 | ide_hwif_t *hwif = drive->hwif; | 191 | ide_hwif_t *hwif = drive->hwif; |
191 | struct request *rq = hwif->hwgroup->rq; | 192 | struct request *rq = hwif->hwgroup->rq; |
@@ -215,7 +216,7 @@ static int trm290_ide_dma_setup(ide_drive_t *drive) | |||
215 | return 0; | 216 | return 0; |
216 | } | 217 | } |
217 | 218 | ||
218 | static void trm290_ide_dma_start(ide_drive_t *drive) | 219 | static void trm290_dma_start(ide_drive_t *drive) |
219 | { | 220 | { |
220 | } | 221 | } |
221 | 222 | ||
@@ -240,6 +241,14 @@ static int trm290_ide_dma_test_irq (ide_drive_t *drive) | |||
240 | return (status == 0x00ff); | 241 | return (status == 0x00ff); |
241 | } | 242 | } |
242 | 243 | ||
244 | static void trm290_dma_host_on(ide_drive_t *drive) | ||
245 | { | ||
246 | } | ||
247 | |||
248 | static void trm290_dma_host_off(ide_drive_t *drive) | ||
249 | { | ||
250 | } | ||
251 | |||
243 | static void __devinit init_hwif_trm290(ide_hwif_t *hwif) | 252 | static void __devinit init_hwif_trm290(ide_hwif_t *hwif) |
244 | { | 253 | { |
245 | unsigned int cfgbase = 0; | 254 | unsigned int cfgbase = 0; |
@@ -280,11 +289,13 @@ static void __devinit init_hwif_trm290(ide_hwif_t *hwif) | |||
280 | 289 | ||
281 | ide_setup_dma(hwif, (hwif->config_data + 4) ^ (hwif->channel ? 0x0080 : 0x0000), 3); | 290 | ide_setup_dma(hwif, (hwif->config_data + 4) ^ (hwif->channel ? 0x0080 : 0x0000), 3); |
282 | 291 | ||
283 | hwif->dma_setup = &trm290_ide_dma_setup; | 292 | hwif->dma_host_off = &trm290_dma_host_off; |
284 | hwif->dma_exec_cmd = &trm290_ide_dma_exec_cmd; | 293 | hwif->dma_host_on = &trm290_dma_host_on; |
285 | hwif->dma_start = &trm290_ide_dma_start; | 294 | hwif->dma_setup = &trm290_dma_setup; |
286 | hwif->ide_dma_end = &trm290_ide_dma_end; | 295 | hwif->dma_exec_cmd = &trm290_dma_exec_cmd; |
287 | hwif->ide_dma_test_irq = &trm290_ide_dma_test_irq; | 296 | hwif->dma_start = &trm290_dma_start; |
297 | hwif->ide_dma_end = &trm290_ide_dma_end; | ||
298 | hwif->ide_dma_test_irq = &trm290_ide_dma_test_irq; | ||
288 | 299 | ||
289 | hwif->selectproc = &trm290_selectproc; | 300 | hwif->selectproc = &trm290_selectproc; |
290 | #if 1 | 301 | #if 1 |