parent
1b90498e69
commit
e654a28575
@ -0,0 +1,32 @@ |
|||||||
|
Index: linux-2.6.25.1/drivers/ata/pata_rb153_cf.c
|
||||||
|
===================================================================
|
||||||
|
--- linux-2.6.25.1.orig/drivers/ata/pata_rb153_cf.c
|
||||||
|
+++ linux-2.6.25.1/drivers/ata/pata_rb153_cf.c
|
||||||
|
@@ -68,20 +68,23 @@ static void rb153_pata_exec_command(stru
|
||||||
|
rb153_pata_finish_io(ap);
|
||||||
|
}
|
||||||
|
|
||||||
|
-static void rb153_pata_data_xfer(struct ata_device *adev, unsigned char *buf,
|
||||||
|
+static unsigned int rb153_pata_data_xfer(struct ata_device *adev, unsigned char *buf,
|
||||||
|
unsigned int buflen, int write_data)
|
||||||
|
{
|
||||||
|
void __iomem *ioaddr = adev->link->ap->ioaddr.data_addr;
|
||||||
|
-
|
||||||
|
+ unsigned int t;
|
||||||
|
+
|
||||||
|
+ t = buflen;
|
||||||
|
if (write_data) {
|
||||||
|
- for (; buflen > 0; buflen--, buf++)
|
||||||
|
+ for (; t > 0; t--, buf++)
|
||||||
|
writeb(*buf, ioaddr);
|
||||||
|
} else {
|
||||||
|
- for (; buflen > 0; buflen--, buf++)
|
||||||
|
+ for (; t > 0; t--, buf++)
|
||||||
|
*buf = readb(ioaddr);
|
||||||
|
}
|
||||||
|
|
||||||
|
rb153_pata_finish_io(adev->link->ap);
|
||||||
|
+ return buflen;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void rb153_pata_freeze(struct ata_port *ap)
|
Loading…
Reference in new issue