diff options
Diffstat (limited to 'drivers/ata/ata_piix.c')
-rw-r--r-- | drivers/ata/ata_piix.c | 27 |
1 files changed, 1 insertions, 26 deletions
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c index f59a55bfade4..b7c38eeb498f 100644 --- a/drivers/ata/ata_piix.c +++ b/drivers/ata/ata_piix.c | |||
@@ -165,8 +165,6 @@ static void piix_set_dmamode(struct ata_port *ap, struct ata_device *adev); | |||
165 | static void ich_set_dmamode(struct ata_port *ap, struct ata_device *adev); | 165 | static void ich_set_dmamode(struct ata_port *ap, struct ata_device *adev); |
166 | static int ich_pata_cable_detect(struct ata_port *ap); | 166 | static int ich_pata_cable_detect(struct ata_port *ap); |
167 | static u8 piix_vmw_bmdma_status(struct ata_port *ap); | 167 | static u8 piix_vmw_bmdma_status(struct ata_port *ap); |
168 | static int piix_sidpr_hardreset(struct ata_link *link, unsigned int *class, | ||
169 | unsigned long deadline); | ||
170 | static int piix_sidpr_scr_read(struct ata_port *ap, unsigned int reg, u32 *val); | 168 | static int piix_sidpr_scr_read(struct ata_port *ap, unsigned int reg, u32 *val); |
171 | static int piix_sidpr_scr_write(struct ata_port *ap, unsigned int reg, u32 val); | 169 | static int piix_sidpr_scr_write(struct ata_port *ap, unsigned int reg, u32 val); |
172 | #ifdef CONFIG_PM | 170 | #ifdef CONFIG_PM |
@@ -319,7 +317,7 @@ static struct ata_port_operations piix_sata_ops = { | |||
319 | 317 | ||
320 | static struct ata_port_operations piix_sidpr_sata_ops = { | 318 | static struct ata_port_operations piix_sidpr_sata_ops = { |
321 | .inherits = &piix_sata_ops, | 319 | .inherits = &piix_sata_ops, |
322 | .hardreset = piix_sidpr_hardreset, | 320 | .hardreset = sata_std_hardreset, |
323 | .scr_read = piix_sidpr_scr_read, | 321 | .scr_read = piix_sidpr_scr_read, |
324 | .scr_write = piix_sidpr_scr_write, | 322 | .scr_write = piix_sidpr_scr_write, |
325 | }; | 323 | }; |
@@ -1015,29 +1013,6 @@ static int piix_sidpr_scr_write(struct ata_port *ap, unsigned int reg, u32 val) | |||
1015 | return 0; | 1013 | return 0; |
1016 | } | 1014 | } |
1017 | 1015 | ||
1018 | static int piix_sidpr_hardreset(struct ata_link *link, unsigned int *class, | ||
1019 | unsigned long deadline) | ||
1020 | { | ||
1021 | const unsigned long *timing = sata_ehc_deb_timing(&link->eh_context); | ||
1022 | int rc; | ||
1023 | |||
1024 | /* do hardreset */ | ||
1025 | rc = sata_link_hardreset(link, timing, deadline, NULL, NULL); | ||
1026 | if (rc) { | ||
1027 | ata_link_printk(link, KERN_ERR, | ||
1028 | "COMRESET failed (errno=%d)\n", rc); | ||
1029 | return rc; | ||
1030 | } | ||
1031 | |||
1032 | /* TODO: phy layer with polling, timeouts, etc. */ | ||
1033 | if (ata_link_offline(link)) { | ||
1034 | *class = ATA_DEV_NONE; | ||
1035 | return 0; | ||
1036 | } | ||
1037 | |||
1038 | return -EAGAIN; | ||
1039 | } | ||
1040 | |||
1041 | #ifdef CONFIG_PM | 1016 | #ifdef CONFIG_PM |
1042 | static int piix_broken_suspend(void) | 1017 | static int piix_broken_suspend(void) |
1043 | { | 1018 | { |