|
@@ -585,7 +585,7 @@ static int scc_wait_after_reset(struct ata_link *link, unsigned int devmask,
|
|
|
* Note: Original code is ata_bus_softreset().
|
|
|
*/
|
|
|
|
|
|
-static unsigned int scc_bus_softreset(struct ata_port *ap, unsigned int devmask,
|
|
|
+static int scc_bus_softreset(struct ata_port *ap, unsigned int devmask,
|
|
|
unsigned long deadline)
|
|
|
{
|
|
|
struct ata_ioports *ioaddr = &ap->ioaddr;
|
|
@@ -599,9 +599,7 @@ static unsigned int scc_bus_softreset(struct ata_port *ap, unsigned int devmask,
|
|
|
udelay(20);
|
|
|
out_be32(ioaddr->ctl_addr, ap->ctl);
|
|
|
|
|
|
- scc_wait_after_reset(&ap->link, devmask, deadline);
|
|
|
-
|
|
|
- return 0;
|
|
|
+ return scc_wait_after_reset(&ap->link, devmask, deadline);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -618,7 +616,8 @@ static int scc_softreset(struct ata_link *link, unsigned int *classes,
|
|
|
{
|
|
|
struct ata_port *ap = link->ap;
|
|
|
unsigned int slave_possible = ap->flags & ATA_FLAG_SLAVE_POSS;
|
|
|
- unsigned int devmask = 0, err_mask;
|
|
|
+ unsigned int devmask = 0;
|
|
|
+ int rc;
|
|
|
u8 err;
|
|
|
|
|
|
DPRINTK("ENTER\n");
|
|
@@ -634,9 +633,9 @@ static int scc_softreset(struct ata_link *link, unsigned int *classes,
|
|
|
|
|
|
/* issue bus reset */
|
|
|
DPRINTK("about to softreset, devmask=%x\n", devmask);
|
|
|
- err_mask = scc_bus_softreset(ap, devmask, deadline);
|
|
|
- if (err_mask) {
|
|
|
- ata_port_err(ap, "SRST failed (err_mask=0x%x)\n", err_mask);
|
|
|
+ rc = scc_bus_softreset(ap, devmask, deadline);
|
|
|
+ if (rc) {
|
|
|
+ ata_port_err(ap, "SRST failed (err_mask=0x%x)\n", rc);
|
|
|
return -EIO;
|
|
|
}
|
|
|
|