Skip to contentSkip to conversation

pata_scc: add proper cable detection method

PATCH In review Bartlomiej Zolnierkiewicz 3 participants 4 messages Oct 11, 2011 – Oct 13, 2011 libata

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 pata_scc: add proper cable detection method

From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pata_scc: add proper cable detection method

Use standard ata_cable_80wire() method for the cable detection, as a bonus this allows us to use the default ->prereset method.

---
earlier references:
https://lkml.org/lkml/2009/11/25/373

 drivers/ata/pata_scc.c |   14 +-------------
 1 file changed, 1 insertion(+), 13 deletions(-)
drivers/ata/pata_scc.c +1 -13
Index: b/drivers/ata/pata_scc.c
===================================================================
@@ -827,18 +827,6 @@ static unsigned int scc_data_xfer (struc
 }
 
 /**
- *	scc_pata_prereset - prepare for reset
- *	@ap: ATA port to be reset
- *	@deadline: deadline jiffies for the operation
- */
-
-static int scc_pata_prereset(struct ata_link *link, unsigned long deadline)
-{
-	link->ap->cbl = ATA_CBL_PATA80;
-	return ata_sff_prereset(link, deadline);
-}
-
-/**
  *	scc_postreset - standard postreset callback
  *	@ap: the target ata_port
  *	@classes: classes of attached devices
@@ -947,7 +935,7 @@ static struct ata_port_operations scc_pa
 	.bmdma_status		= scc_bmdma_status,
 	.sff_data_xfer		= scc_data_xfer,
 
-	.prereset		= scc_pata_prereset,
+	.cable_detect		= ata_cable_80wire,
 	.softreset		= scc_softreset,
 	.postreset		= scc_postreset,
 
#1 lore raw
Quoted 5 lines · On Tue, 11 Oct 2011 20:07:24 +0200 Bartlomiej Zolnierkiewicz…

From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pata_scc: add proper cable detection method

Use standard ata_cable_80wire() method for the cable detection, as a bonus this allows us to use the default ->prereset method.

What documentation have you got that confirms that the hardcoding is not needed. It goes back to the original code and I see nothing saying that the device has standard PC style cable detect.

You should also I think cc the Toshiba maintainers

#2 lore raw
Quoted 6 lines · Alan Cox
Quoted 3 lines · On Tue, 11 Oct 2011 20:07:24 +0200 Bartlomiej Zolnierkiewicz…

From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pata_scc: add proper cable detection method

Quoted 6 lines
Quoted 2 lines

Use standard ata_cable_80wire() method for the cable detection, as a bonus this allows us to use the default ->prereset method.

What documentation have you got that confirms that the hardcoding is not needed. It goes back to the original code and I see nothing saying that the device has standard PC style cable detect.

The driver predates standard cable detect routines and open-codes its own one. There should be no functionality changes caused by this patch.

Commit a619f981b ("libata: PATA driver for Celleb") is from Jan 2007 while ata_cable_80wire() was added by commit be0d18d ("libata: cable detection fixes") in Mar 2007.

Quoted 1 line

You should also I think cc the Toshiba maintainers

added to cc:.

From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pata_scc: add proper cable detection method

Use standard ata_cable_80wire() method for the cable detection, as a bonus this allows us to use the default ->prereset method.

---
earlier references:
https://lkml.org/lkml/2009/11/25/373

 drivers/ata/pata_scc.c |   14 +-------------
 1 file changed, 1 insertion(+), 13 deletions(-)
drivers/ata/pata_scc.c +1 -13
Index: b/drivers/ata/pata_scc.c
===================================================================
@@ -827,18 +827,6 @@ static unsigned int scc_data_xfer (struc
 }
 
 /**
- *	scc_pata_prereset - prepare for reset
- *	@ap: ATA port to be reset
- *	@deadline: deadline jiffies for the operation
- */
-
-static int scc_pata_prereset(struct ata_link *link, unsigned long deadline)
-{
-	link->ap->cbl = ATA_CBL_PATA80;
-	return ata_sff_prereset(link, deadline);
-}
-
-/**
  *	scc_postreset - standard postreset callback
  *	@ap: the target ata_port
  *	@classes: classes of attached devices
@@ -947,7 +935,7 @@ static struct ata_port_operations scc_pa
 	.bmdma_status		= scc_bmdma_status,
 	.sff_data_xfer		= scc_data_xfer,
 
-	.prereset		= scc_pata_prereset,
+	.cable_detect		= ata_cable_80wire,
 	.softreset		= scc_softreset,
 	.postreset		= scc_postreset,
 
Acked-by Kou Ishizaki Acked-by
#3 lore raw

Thank you for maintaining our code.
This patch makes no difference in functionality.

Quoted 82 lines

-----Original Message-----
From: Bartlomiej Zolnierkiewicz [mailto:[email protected]]
Sent: Thursday, October 13, 2011 12:17 AM
To: Alan Cox
Cc: Jeff Garzik; [email protected]; [email protected]; ishizaki ko(石崎 浩 ○府□放Nブ○放送 機); iguchi akira(井口 晃 ○Lジ□LS開○LS二)
Subject: Re: [PATCH] pata_scc: add proper cable detection method

Quoted 6 lines · Alan Cox
Quoted 3 lines · On Tue, 11 Oct 2011 20:07:24 +0200 Bartlomiej Zolnierkiewicz…

From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pata_scc: add proper cable detection method

Quoted 6 lines
Quoted 2 lines

Use standard ata_cable_80wire() method for the cable detection, as a bonus this allows us to use the default ->prereset method.

What documentation have you got that confirms that the hardcoding is not needed. It goes back to the original code and I see nothing saying that the device has standard PC style cable detect.

The driver predates standard cable detect routines and open-codes its own one. There should be no functionality changes caused by this patch.

Commit a619f981b ("libata: PATA driver for Celleb") is from Jan 2007 while ata_cable_80wire() was added by commit be0d18d ("libata: cable detection fixes") in Mar 2007.

Quoted 1 line

You should also I think cc the Toshiba maintainers

added to cc:.

From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pata_scc: add proper cable detection method

Use standard ata_cable_80wire() method for the cable detection, as a bonus this allows us to use the default ->prereset method.

---
earlier references:
https://lkml.org/lkml/2009/11/25/373

 drivers/ata/pata_scc.c |   14 +-------------
 1 file changed, 1 insertion(+), 13 deletions(-)

Index: b/drivers/ata/pata_scc.c
===================================================================

drivers/ata/pata_scc.c +1 -12
@@ -827,18 +827,6 @@ static unsigned int scc_data_xfer (struc  }
 
 /**
- *	scc_pata_prereset - prepare for reset
- *	@ap: ATA port to be reset
- *	@deadline: deadline jiffies for the operation
- */
-
-static int scc_pata_prereset(struct ata_link *link, unsigned long
 deadline) -{
-	link->ap->cbl = ATA_CBL_PATA80;
-	return ata_sff_prereset(link, deadline);
-}
-
-/**
  *	scc_postreset - standard postreset callback
  *	@ap: the target ata_port
  *	@classes: classes of attached devices
@@ -947,7 +935,7 @@ static struct ata_port_operations scc_pa
 	.bmdma_status		= scc_bmdma_status,
 	.sff_data_xfer		= scc_data_xfer,
 
-	.prereset		= scc_pata_prereset,
+	.cable_detect		= ata_cable_80wire,
 	.softreset		= scc_softreset,
 	.postreset		= scc_postreset,