diff options
Diffstat (limited to 'drivers/ata/pata_ali.c')
-rw-r--r-- | drivers/ata/pata_ali.c | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/drivers/ata/pata_ali.c b/drivers/ata/pata_ali.c index d40edebb510a..3c55a5ff74c7 100644 --- a/drivers/ata/pata_ali.c +++ b/drivers/ata/pata_ali.c | |||
@@ -291,10 +291,6 @@ static struct scsi_host_template ali_sht = { | |||
291 | .slave_configure = ata_scsi_slave_config, | 291 | .slave_configure = ata_scsi_slave_config, |
292 | .slave_destroy = ata_scsi_slave_destroy, | 292 | .slave_destroy = ata_scsi_slave_destroy, |
293 | .bios_param = ata_std_bios_param, | 293 | .bios_param = ata_std_bios_param, |
294 | #ifdef CONFIG_PM | ||
295 | .resume = ata_scsi_device_resume, | ||
296 | .suspend = ata_scsi_device_suspend, | ||
297 | #endif | ||
298 | }; | 294 | }; |
299 | 295 | ||
300 | /* | 296 | /* |
@@ -522,14 +518,14 @@ static void ali_init_chipset(struct pci_dev *pdev) | |||
522 | 518 | ||
523 | static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | 519 | static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) |
524 | { | 520 | { |
525 | static struct ata_port_info info_early = { | 521 | static const struct ata_port_info info_early = { |
526 | .sht = &ali_sht, | 522 | .sht = &ali_sht, |
527 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST, | 523 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST, |
528 | .pio_mask = 0x1f, | 524 | .pio_mask = 0x1f, |
529 | .port_ops = &ali_early_port_ops | 525 | .port_ops = &ali_early_port_ops |
530 | }; | 526 | }; |
531 | /* Revision 0x20 added DMA */ | 527 | /* Revision 0x20 added DMA */ |
532 | static struct ata_port_info info_20 = { | 528 | static const struct ata_port_info info_20 = { |
533 | .sht = &ali_sht, | 529 | .sht = &ali_sht, |
534 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, | 530 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, |
535 | .pio_mask = 0x1f, | 531 | .pio_mask = 0x1f, |
@@ -537,7 +533,7 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
537 | .port_ops = &ali_20_port_ops | 533 | .port_ops = &ali_20_port_ops |
538 | }; | 534 | }; |
539 | /* Revision 0x20 with support logic added UDMA */ | 535 | /* Revision 0x20 with support logic added UDMA */ |
540 | static struct ata_port_info info_20_udma = { | 536 | static const struct ata_port_info info_20_udma = { |
541 | .sht = &ali_sht, | 537 | .sht = &ali_sht, |
542 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, | 538 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, |
543 | .pio_mask = 0x1f, | 539 | .pio_mask = 0x1f, |
@@ -546,7 +542,7 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
546 | .port_ops = &ali_20_port_ops | 542 | .port_ops = &ali_20_port_ops |
547 | }; | 543 | }; |
548 | /* Revision 0xC2 adds UDMA66 */ | 544 | /* Revision 0xC2 adds UDMA66 */ |
549 | static struct ata_port_info info_c2 = { | 545 | static const struct ata_port_info info_c2 = { |
550 | .sht = &ali_sht, | 546 | .sht = &ali_sht, |
551 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, | 547 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, |
552 | .pio_mask = 0x1f, | 548 | .pio_mask = 0x1f, |
@@ -555,7 +551,7 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
555 | .port_ops = &ali_c2_port_ops | 551 | .port_ops = &ali_c2_port_ops |
556 | }; | 552 | }; |
557 | /* Revision 0xC3 is UDMA100 */ | 553 | /* Revision 0xC3 is UDMA100 */ |
558 | static struct ata_port_info info_c3 = { | 554 | static const struct ata_port_info info_c3 = { |
559 | .sht = &ali_sht, | 555 | .sht = &ali_sht, |
560 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, | 556 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, |
561 | .pio_mask = 0x1f, | 557 | .pio_mask = 0x1f, |
@@ -564,7 +560,7 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
564 | .port_ops = &ali_c2_port_ops | 560 | .port_ops = &ali_c2_port_ops |
565 | }; | 561 | }; |
566 | /* Revision 0xC4 is UDMA133 */ | 562 | /* Revision 0xC4 is UDMA133 */ |
567 | static struct ata_port_info info_c4 = { | 563 | static const struct ata_port_info info_c4 = { |
568 | .sht = &ali_sht, | 564 | .sht = &ali_sht, |
569 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, | 565 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_PIO_LBA48, |
570 | .pio_mask = 0x1f, | 566 | .pio_mask = 0x1f, |
@@ -573,7 +569,7 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
573 | .port_ops = &ali_c2_port_ops | 569 | .port_ops = &ali_c2_port_ops |
574 | }; | 570 | }; |
575 | /* Revision 0xC5 is UDMA133 with LBA48 DMA */ | 571 | /* Revision 0xC5 is UDMA133 with LBA48 DMA */ |
576 | static struct ata_port_info info_c5 = { | 572 | static const struct ata_port_info info_c5 = { |
577 | .sht = &ali_sht, | 573 | .sht = &ali_sht, |
578 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST, | 574 | .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST, |
579 | .pio_mask = 0x1f, | 575 | .pio_mask = 0x1f, |
@@ -582,7 +578,7 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
582 | .port_ops = &ali_c5_port_ops | 578 | .port_ops = &ali_c5_port_ops |
583 | }; | 579 | }; |
584 | 580 | ||
585 | static struct ata_port_info *port_info[2]; | 581 | const struct ata_port_info *ppi[] = { NULL, NULL }; |
586 | u8 rev, tmp; | 582 | u8 rev, tmp; |
587 | struct pci_dev *isa_bridge; | 583 | struct pci_dev *isa_bridge; |
588 | 584 | ||
@@ -594,17 +590,17 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
594 | */ | 590 | */ |
595 | 591 | ||
596 | if (rev < 0x20) { | 592 | if (rev < 0x20) { |
597 | port_info[0] = port_info[1] = &info_early; | 593 | ppi[0] = &info_early; |
598 | } else if (rev < 0xC2) { | 594 | } else if (rev < 0xC2) { |
599 | port_info[0] = port_info[1] = &info_20; | 595 | ppi[0] = &info_20; |
600 | } else if (rev == 0xC2) { | 596 | } else if (rev == 0xC2) { |
601 | port_info[0] = port_info[1] = &info_c2; | 597 | ppi[0] = &info_c2; |
602 | } else if (rev == 0xC3) { | 598 | } else if (rev == 0xC3) { |
603 | port_info[0] = port_info[1] = &info_c3; | 599 | ppi[0] = &info_c3; |
604 | } else if (rev == 0xC4) { | 600 | } else if (rev == 0xC4) { |
605 | port_info[0] = port_info[1] = &info_c4; | 601 | ppi[0] = &info_c4; |
606 | } else | 602 | } else |
607 | port_info[0] = port_info[1] = &info_c5; | 603 | ppi[0] = &info_c5; |
608 | 604 | ||
609 | ali_init_chipset(pdev); | 605 | ali_init_chipset(pdev); |
610 | 606 | ||
@@ -613,10 +609,10 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
613 | /* Are we paired with a UDMA capable chip */ | 609 | /* Are we paired with a UDMA capable chip */ |
614 | pci_read_config_byte(isa_bridge, 0x5E, &tmp); | 610 | pci_read_config_byte(isa_bridge, 0x5E, &tmp); |
615 | if ((tmp & 0x1E) == 0x12) | 611 | if ((tmp & 0x1E) == 0x12) |
616 | port_info[0] = port_info[1] = &info_20_udma; | 612 | ppi[0] = &info_20_udma; |
617 | pci_dev_put(isa_bridge); | 613 | pci_dev_put(isa_bridge); |
618 | } | 614 | } |
619 | return ata_pci_init_one(pdev, port_info, 2); | 615 | return ata_pci_init_one(pdev, ppi); |
620 | } | 616 | } |
621 | 617 | ||
622 | #ifdef CONFIG_PM | 618 | #ifdef CONFIG_PM |