aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/hpt366.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-06-07 09:37:09 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-06-07 09:37:09 -0400
commit8bc1e5aa06a2a9a425c4a6795fc564cba1521487 (patch)
tree16f9e58bf832d1caaf1b7962f670c10a951cc056 /drivers/ide/hpt366.c
parent0fcef027f60318cfa64ae4cdf5aa33905607d650 (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/hpt366.c')
-rw-r--r--drivers/ide/hpt366.c27
1 files changed, 0 insertions, 27 deletions
diff --git a/drivers/ide/hpt366.c b/drivers/ide/hpt366.c
index cb04523e31cb..a2e9f6c65a93 100644
--- a/drivers/ide/hpt366.c
+++ b/drivers/ide/hpt366.c
@@ -138,18 +138,6 @@
138#undef HPT_RESET_STATE_ENGINE 138#undef HPT_RESET_STATE_ENGINE
139#undef HPT_DELAY_INTERRUPT 139#undef HPT_DELAY_INTERRUPT
140 140
141static const char *quirk_drives[] = {
142 "QUANTUM FIREBALLlct08 08",
143 "QUANTUM FIREBALLP KA6.4",
144 "QUANTUM FIREBALLP KA9.1",
145 "QUANTUM FIREBALLP KX13.6",
146 "QUANTUM FIREBALLP KX20.5",
147 "QUANTUM FIREBALLP KX27.3",
148 "QUANTUM FIREBALLP LM20.4",
149 "QUANTUM FIREBALLP LM20.5",
150 NULL
151};
152
153static const char *bad_ata100_5[] = { 141static const char *bad_ata100_5[] = {
154 "IBM-DTLA-307075", 142 "IBM-DTLA-307075",
155 "IBM-DTLA-307060", 143 "IBM-DTLA-307060",
@@ -733,20 +721,6 @@ static void hpt3xx_set_pio_mode(ide_drive_t *drive, const u8 pio)
733 hpt3xx_set_mode(drive, XFER_PIO_0 + pio); 721 hpt3xx_set_mode(drive, XFER_PIO_0 + pio);
734} 722}
735 723
736static void hpt3xx_quirkproc(ide_drive_t *drive)
737{
738 char *m = (char *)&drive->id[ATA_ID_PROD];
739 const char **list = quirk_drives;
740
741 while (*list)
742 if (strstr(m, *list++)) {
743 drive->quirk_list = 2;
744 return;
745 }
746
747 drive->quirk_list = 0;
748}
749
750static void hpt3xx_maskproc(ide_drive_t *drive, int mask) 724static void hpt3xx_maskproc(ide_drive_t *drive, int mask)
751{ 725{
752 ide_hwif_t *hwif = drive->hwif; 726 ide_hwif_t *hwif = drive->hwif;
@@ -1408,7 +1382,6 @@ static int __devinit hpt36x_init(struct pci_dev *dev, struct pci_dev *dev2)
1408static const struct ide_port_ops hpt3xx_port_ops = { 1382static const struct ide_port_ops hpt3xx_port_ops = {
1409 .set_pio_mode = hpt3xx_set_pio_mode, 1383 .set_pio_mode = hpt3xx_set_pio_mode,
1410 .set_dma_mode = hpt3xx_set_mode, 1384 .set_dma_mode = hpt3xx_set_mode,
1411 .quirkproc = hpt3xx_quirkproc,
1412 .maskproc = hpt3xx_maskproc, 1385 .maskproc = hpt3xx_maskproc,
1413 .mdma_filter = hpt3xx_mdma_filter, 1386 .mdma_filter = hpt3xx_mdma_filter,
1414 .udma_filter = hpt3xx_udma_filter, 1387 .udma_filter = hpt3xx_udma_filter,