From 6aaff3e11708fce226ea15c8799a123de8585ff6 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Mon, 22 May 2006 16:52:06 +0100 Subject: [PATCH] --- yaml --- r: 29458 b: refs/heads/master c: b6079ca409bf88c248992e96510dd6f610f7ed89 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/scsi/libata-core.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 381ba6d52200..2ea158c59776 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1f3461a72619fcd70a0fcb563306c91f753b4620 +refs/heads/master: b6079ca409bf88c248992e96510dd6f610f7ed89 diff --git a/trunk/drivers/scsi/libata-core.c b/trunk/drivers/scsi/libata-core.c index e891b83be10f..45b6b29bc10f 100644 --- a/trunk/drivers/scsi/libata-core.c +++ b/trunk/drivers/scsi/libata-core.c @@ -1498,6 +1498,12 @@ static int ata_bus_probe(struct ata_port *ap) if (classes[i] == ATA_DEV_UNKNOWN) classes[i] = ATA_DEV_NONE; + /* after the reset the device state is PIO 0 and the controller + state is undefined. Record the mode */ + + for (i = 0; i < ATA_MAX_DEVICES; i++) + ap->device[i].pio_mode = XFER_PIO_0; + /* read IDENTIFY page and configure devices */ for (i = 0; i < ATA_MAX_DEVICES; i++) { dev = &ap->device[i];