Re: [PATCH] pata_jmicron: fix disabled port handling in jmicron_pre_reset()

2007-11-23 Thread Jeff Garzik

Tejun Heo wrote:

There are two bugs in disabled port handling.

* test in PORT_PATA0 is reversed
* -prereset should return -ENOENT for disabled ports not 0

The first bug makes the PATA channel considered disabled but the
second bug saves the day by returning 0.  The net result is that cable
is always left at ATA_CBL_UNKNOWN.  This results in false 80c
configuration and thus transfer errors.

This patch fixes both bugs.

Signed-off-by: Tejun Heo [EMAIL PROTECTED]
---
applied to #tj-upstream-fixes.

 drivers/ata/pata_jmicron.c |9 -
 1 files changed, 4 insertions(+), 5 deletions(-)


applied


-
To unsubscribe from this list: send the line unsubscribe linux-ide in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] pata_jmicron: fix disabled port handling in jmicron_pre_reset()

2007-11-21 Thread Tejun Heo
Tejun Heo wrote:
 There are two bugs in disabled port handling.
 
 * test in PORT_PATA0 is reversed
 * -prereset should return -ENOENT for disabled ports not 0
 
 The first bug makes the PATA channel considered disabled but the
 second bug saves the day by returning 0.  The net result is that cable
 is always left at ATA_CBL_UNKNOWN.  This results in false 80c
 configuration and thus transfer errors.
 
 This patch fixes both bugs.
 
 Signed-off-by: Tejun Heo [EMAIL PROTECTED]

Jeff, this wasn't pushed to Linus.  Can you please put this into
#upstream-fixes?

Thanks.

-- 
tejun
-
To unsubscribe from this list: send the line unsubscribe linux-ide in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] pata_jmicron: fix disabled port handling in jmicron_pre_reset()

2007-11-19 Thread Tejun Heo
There are two bugs in disabled port handling.

* test in PORT_PATA0 is reversed
* -prereset should return -ENOENT for disabled ports not 0

The first bug makes the PATA channel considered disabled but the
second bug saves the day by returning 0.  The net result is that cable
is always left at ATA_CBL_UNKNOWN.  This results in false 80c
configuration and thus transfer errors.

This patch fixes both bugs.

Signed-off-by: Tejun Heo [EMAIL PROTECTED]
---
applied to #tj-upstream-fixes.

 drivers/ata/pata_jmicron.c |9 -
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/ata/pata_jmicron.c b/drivers/ata/pata_jmicron.c
index 225a722..5b8174d 100644
--- a/drivers/ata/pata_jmicron.c
+++ b/drivers/ata/pata_jmicron.c
@@ -80,11 +80,10 @@ static int jmicron_pre_reset(struct ata_link *link, 
unsigned long deadline)
 *  actually do our cable checking etc. Thankfully we don't need
 *  to do the plumbing for other cases.
 */
-   switch (port_map[port])
-   {
+   switch (port_map[port]) {
case PORT_PATA0:
-   if (control  (1  5))
-   return 0;
+   if ((control  (1  5)) == 0)
+   return -ENOENT;
if (control  (1  3)) /* 40/80 pin primary */
ap-cbl = ATA_CBL_PATA40;
else
@@ -93,7 +92,7 @@ static int jmicron_pre_reset(struct ata_link *link, unsigned 
long deadline)
case PORT_PATA1:
/* Bit 21 is set if the port is enabled */
if ((control5  (1  21)) == 0)
-   return 0;
+   return -ENOENT;
if (control5  (1  19))   /* 40/80 pin secondary */
ap-cbl = ATA_CBL_PATA40;
else
-- 
1.5.2.4

-
To unsubscribe from this list: send the line unsubscribe linux-ide in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html