[PATCH 3/7] libata: add freeze/thaw to old EH LLDDs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The polling PIO code path is going to use freeze()/thaw(), regardless of old EH or new EH.
Add freeze()/thaw() to old EH LLDDs for the use of polling PIO.

Signed-off-by: Albert Lee <albertcc@xxxxxxxxxx>
---

diff -Nrup 02_sata_pdc_freeze/drivers/ata/pata_ixp4xx_cf.c 03_add_thaw_freeze/drivers/ata/pata_ixp4xx_cf.c
--- 02_sata_pdc_freeze/drivers/ata/pata_ixp4xx_cf.c	2007-07-07 09:58:55.000000000 +0800
+++ 03_add_thaw_freeze/drivers/ata/pata_ixp4xx_cf.c	2007-07-07 10:39:43.000000000 +0800
@@ -131,6 +131,9 @@ static struct ata_port_operations ixp4xx
 	.data_xfer	= ixp4xx_mmio_data_xfer,
 	.cable_detect	= ata_cable_40wire,
 
+	.freeze		= ata_bmdma_freeze,
+	.thaw		= ata_bmdma_thaw,
+
 	.irq_clear	= ixp4xx_irq_clear,
 	.irq_on		= ata_irq_on,
 	.irq_ack	= ata_irq_ack,
diff -Nrup 02_sata_pdc_freeze/drivers/ata/pata_scc.c 03_add_thaw_freeze/drivers/ata/pata_scc.c
--- 02_sata_pdc_freeze/drivers/ata/pata_scc.c	2007-07-07 10:38:55.000000000 +0800
+++ 03_add_thaw_freeze/drivers/ata/pata_scc.c	2007-07-07 10:39:43.000000000 +0800
@@ -869,6 +869,18 @@ static void scc_bmdma_freeze (struct ata
 }
 
 /**
+ *	scc_bmdma_thaw - Thaw BMDMA controller port
+ *	@ap: port to thaw
+ *
+ *	Note: Original code is ata_bmdma_thaw().
+ */
+
+static void scc_bmdma_thaw (struct ata_port *ap)
+{
+	scc_irq_on(ap);
+}
+
+/**
  *	scc_pata_prereset - prepare for reset
  *	@ap: ATA port to be reset
  *	@deadline: deadline jiffies for the operation
@@ -1015,6 +1027,7 @@ static const struct ata_port_operations 
 	.qc_issue		= ata_qc_issue_prot,
 
 	.freeze			= scc_bmdma_freeze,
+	.thaw			= scc_bmdma_thaw,
 	.error_handler		= scc_error_handler,
 	.post_internal_cmd	= scc_bmdma_stop,
 
diff -Nrup 02_sata_pdc_freeze/drivers/ata/pdc_adma.c 03_add_thaw_freeze/drivers/ata/pdc_adma.c
--- 02_sata_pdc_freeze/drivers/ata/pdc_adma.c	2007-07-07 09:58:55.000000000 +0800
+++ 03_add_thaw_freeze/drivers/ata/pdc_adma.c	2007-07-07 10:39:43.000000000 +0800
@@ -171,6 +171,8 @@ static const struct ata_port_operations 
 	.qc_issue		= adma_qc_issue,
 	.eng_timeout		= adma_eng_timeout,
 	.data_xfer		= ata_data_xfer,
+	.freeze			= ata_bmdma_freeze,
+	.thaw			= ata_bmdma_thaw,
 	.irq_clear		= adma_irq_clear,
 	.irq_on			= ata_irq_on,
 	.irq_ack		= ata_irq_ack,
diff -Nrup 02_sata_pdc_freeze/drivers/ata/sata_mv.c 03_add_thaw_freeze/drivers/ata/sata_mv.c
--- 02_sata_pdc_freeze/drivers/ata/sata_mv.c	2007-07-07 09:58:55.000000000 +0800
+++ 03_add_thaw_freeze/drivers/ata/sata_mv.c	2007-07-07 10:39:43.000000000 +0800
@@ -453,6 +453,9 @@ static const struct ata_port_operations 
 
 	.eng_timeout		= mv_eng_timeout,
 
+	.freeze			= ata_bmdma_freeze,
+	.thaw			= ata_bmdma_thaw,
+
 	.irq_clear		= mv_irq_clear,
 	.irq_on			= ata_irq_on,
 	.irq_ack		= ata_irq_ack,
@@ -482,6 +485,9 @@ static const struct ata_port_operations 
 
 	.eng_timeout		= mv_eng_timeout,
 
+	.freeze			= ata_bmdma_freeze,
+	.thaw			= ata_bmdma_thaw,
+
 	.irq_clear		= mv_irq_clear,
 	.irq_on			= ata_irq_on,
 	.irq_ack		= ata_irq_ack,
@@ -511,6 +517,9 @@ static const struct ata_port_operations 
 
 	.eng_timeout		= mv_eng_timeout,
 
+	.freeze			= ata_bmdma_freeze,
+	.thaw			= ata_bmdma_thaw,
+
 	.irq_clear		= mv_irq_clear,
 	.irq_on			= ata_irq_on,
 	.irq_ack		= ata_irq_ack,
diff -Nrup 02_sata_pdc_freeze/drivers/ata/sata_qstor.c 03_add_thaw_freeze/drivers/ata/sata_qstor.c
--- 02_sata_pdc_freeze/drivers/ata/sata_qstor.c	2007-07-07 09:58:55.000000000 +0800
+++ 03_add_thaw_freeze/drivers/ata/sata_qstor.c	2007-07-07 10:39:43.000000000 +0800
@@ -157,6 +157,8 @@ static const struct ata_port_operations 
 	.qc_issue		= qs_qc_issue,
 	.data_xfer		= ata_data_xfer,
 	.eng_timeout		= qs_eng_timeout,
+	.freeze			= ata_bmdma_freeze,
+	.thaw			= ata_bmdma_thaw,
 	.irq_clear		= qs_irq_clear,
 	.irq_on			= ata_irq_on,
 	.irq_ack		= ata_irq_ack,
diff -Nrup 02_sata_pdc_freeze/drivers/ata/sata_sx4.c 03_add_thaw_freeze/drivers/ata/sata_sx4.c
--- 02_sata_pdc_freeze/drivers/ata/sata_sx4.c	2007-07-07 09:58:55.000000000 +0800
+++ 03_add_thaw_freeze/drivers/ata/sata_sx4.c	2007-07-07 10:39:43.000000000 +0800
@@ -203,6 +203,8 @@ static const struct ata_port_operations 
 	.qc_issue		= pdc20621_qc_issue_prot,
 	.data_xfer		= ata_data_xfer,
 	.eng_timeout		= pdc_eng_timeout,
+	.freeze			= ata_bmdma_freeze,
+	.thaw			= ata_bmdma_thaw,
 	.irq_clear		= pdc20621_irq_clear,
 	.irq_on			= ata_irq_on,
 	.irq_ack		= ata_irq_ack,


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

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux