diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-06-07 09:37:09 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-06-07 09:37:09 -0400 |
commit | 8bc1e5aa06a2a9a425c4a6795fc564cba1521487 (patch) | |
tree | 16f9e58bf832d1caaf1b7962f670c10a951cc056 /drivers/ide/pdc202xx_old.c | |
parent | 0fcef027f60318cfa64ae4cdf5aa33905607d650 (diff) |
ide: respect quirk_drives[] list on all controllers
* Add ide_check_nien_quirk_list() helper to the core code
and then use it in ide_port_tune_devices().
* Remove no longer needed ->quirkproc methods from hpt366.c
and pdc202xx_{new,old}.c.
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pdc202xx_old.c')
-rw-r--r-- | drivers/ide/pdc202xx_old.c | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/drivers/ide/pdc202xx_old.c b/drivers/ide/pdc202xx_old.c index 4980dd7b2e28..fe01db679a39 100644 --- a/drivers/ide/pdc202xx_old.c +++ b/drivers/ide/pdc202xx_old.c | |||
@@ -23,18 +23,6 @@ | |||
23 | 23 | ||
24 | #define PDC202XX_DEBUG_DRIVE_INFO 0 | 24 | #define PDC202XX_DEBUG_DRIVE_INFO 0 |
25 | 25 | ||
26 | static const char *pdc_quirk_drives[] = { | ||
27 | "QUANTUM FIREBALLlct08 08", | ||
28 | "QUANTUM FIREBALLP KA6.4", | ||
29 | "QUANTUM FIREBALLP KA9.1", | ||
30 | "QUANTUM FIREBALLP LM20.4", | ||
31 | "QUANTUM FIREBALLP KX13.6", | ||
32 | "QUANTUM FIREBALLP KX20.5", | ||
33 | "QUANTUM FIREBALLP KX27.3", | ||
34 | "QUANTUM FIREBALLP LM20.5", | ||
35 | NULL | ||
36 | }; | ||
37 | |||
38 | static void pdc_old_disable_66MHz_clock(ide_hwif_t *); | 26 | static void pdc_old_disable_66MHz_clock(ide_hwif_t *); |
39 | 27 | ||
40 | static void pdc202xx_set_mode(ide_drive_t *drive, const u8 speed) | 28 | static void pdc202xx_set_mode(ide_drive_t *drive, const u8 speed) |
@@ -151,19 +139,6 @@ static void pdc_old_disable_66MHz_clock(ide_hwif_t *hwif) | |||
151 | outb(clock & ~(hwif->channel ? 0x08 : 0x02), clock_reg); | 139 | outb(clock & ~(hwif->channel ? 0x08 : 0x02), clock_reg); |
152 | } | 140 | } |
153 | 141 | ||
154 | static void pdc202xx_quirkproc(ide_drive_t *drive) | ||
155 | { | ||
156 | const char **list, *m = (char *)&drive->id[ATA_ID_PROD]; | ||
157 | |||
158 | for (list = pdc_quirk_drives; *list != NULL; list++) | ||
159 | if (strstr(m, *list) != NULL) { | ||
160 | drive->quirk_list = 2; | ||
161 | return; | ||
162 | } | ||
163 | |||
164 | drive->quirk_list = 0; | ||
165 | } | ||
166 | |||
167 | static void pdc202xx_dma_start(ide_drive_t *drive) | 142 | static void pdc202xx_dma_start(ide_drive_t *drive) |
168 | { | 143 | { |
169 | if (drive->current_speed > XFER_UDMA_2) | 144 | if (drive->current_speed > XFER_UDMA_2) |
@@ -256,13 +231,11 @@ static void __devinit pdc202ata4_fixup_irq(struct pci_dev *dev, | |||
256 | static const struct ide_port_ops pdc20246_port_ops = { | 231 | static const struct ide_port_ops pdc20246_port_ops = { |
257 | .set_pio_mode = pdc202xx_set_pio_mode, | 232 | .set_pio_mode = pdc202xx_set_pio_mode, |
258 | .set_dma_mode = pdc202xx_set_mode, | 233 | .set_dma_mode = pdc202xx_set_mode, |
259 | .quirkproc = pdc202xx_quirkproc, | ||
260 | }; | 234 | }; |
261 | 235 | ||
262 | static const struct ide_port_ops pdc2026x_port_ops = { | 236 | static const struct ide_port_ops pdc2026x_port_ops = { |
263 | .set_pio_mode = pdc202xx_set_pio_mode, | 237 | .set_pio_mode = pdc202xx_set_pio_mode, |
264 | .set_dma_mode = pdc202xx_set_mode, | 238 | .set_dma_mode = pdc202xx_set_mode, |
265 | .quirkproc = pdc202xx_quirkproc, | ||
266 | .cable_detect = pdc2026x_cable_detect, | 239 | .cable_detect = pdc2026x_cable_detect, |
267 | }; | 240 | }; |
268 | 241 | ||