[libata] pata_rb532_cf: fix signature of the xfer function

Per definition, this function should return the number of bytes
consumed. As the original parameter "buflen" is being decremented inside
the read/write loop, save it in "retlen" at the beginning.

Signed-off-by: Phil Sutter <[email protected]>
Acked-by: Sergei Shtyltov <[email protected]>
Acked-by: Bartlomiej Zolnierkiewicz <[email protected]>
Acked-by: Florian Fainelli <[email protected]>
Signed-off-by: Jeff Garzik <[email protected]>
This commit is contained in:
Phil Sutter 2008-11-28 20:48:35 +01:00 • committed by Jeff Garzik
commit 03f60840fa

View file

@ -74,11 +74,12 @@ static void rb532_pata_exec_command(struct ata_port *ap,
rb532_pata_finish_io(ap);
}
static void rb532_pata_data_xfer(struct ata_device *adev, unsigned char *buf,
static unsigned int rb532_pata_data_xfer(struct ata_device *adev, unsigned char *buf,
unsigned int buflen, int write_data)
{
struct ata_port *ap = adev->link->ap;
void __iomem *ioaddr = ap->ioaddr.data_addr;
int retlen = buflen;
if (write_data) {
for (; buflen > 0; buflen--, buf++)
@ -89,6 +90,7 @@ static void rb532_pata_data_xfer(struct ata_device *adev, unsigned char *buf,
}
rb532_pata_finish_io(adev->link->ap);
return retlen;
}
static void rb532_pata_freeze(struct ata_port *ap)