Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 03f60840 authored by Phil Sutter's avatar Phil Sutter Committed by Jeff Garzik
Browse files

[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: default avatarPhil Sutter <n0-1@freewrt.org>
Acked-by: default avatarSergei Shtyltov <sshtylyov@ru.mvista.com>
Acked-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Acked-by: default avatarFlorian Fainelli <florian@openwrt.org>
Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
parent 9f14786e
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -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)