aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata
diff options
context:
space:
mode:
authorAlan <alan@lxorguk.ukuu.org.uk>2006-11-22 11:57:36 -0500
committerJeff Garzik <jeff@garzik.org>2006-12-01 22:46:49 -0500
commit30ced0f0d211999f316930eff7287aa5a9995bef (patch)
treef00359c2aa4dda61d7d31f58a72fee78ef059a14 /drivers/ata
parent8550c1637ba7dd96a76353eb52d31088f9c2f5fe (diff)
[PATCH] PATA libata: suspend/resume simple cases
This patch adds the suspend/resume callbacks for drivers which don't need any additional help (beyond the pci resume quirk patch I posted earlier anyway). Also bring version numbers back inline with master copies. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata')
-rw-r--r--drivers/ata/ata_generic.c8
-rw-r--r--drivers/ata/pata_atiixp.c8
-rw-r--r--drivers/ata/pata_cs5535.c6
-rw-r--r--drivers/ata/pata_cypress.c8
-rw-r--r--drivers/ata/pata_efar.c6
-rw-r--r--drivers/ata/pata_marvell.c6
-rw-r--r--drivers/ata/pata_mpiix.c8
-rw-r--r--drivers/ata/pata_netcell.c6
-rw-r--r--drivers/ata/pata_ns87410.c8
-rw-r--r--drivers/ata/pata_oldpiix.c4
-rw-r--r--drivers/ata/pata_opti.c33
-rw-r--r--drivers/ata/pata_optidma.c8
-rw-r--r--drivers/ata/pata_radisys.c4
-rw-r--r--drivers/ata/pata_sc1200.c8
-rw-r--r--drivers/ata/pata_triflex.c8
15 files changed, 82 insertions, 47 deletions
diff --git a/drivers/ata/ata_generic.c b/drivers/ata/ata_generic.c
index 1b9ba4dfac65..c7e8f033125d 100644
--- a/drivers/ata/ata_generic.c
+++ b/drivers/ata/ata_generic.c
@@ -26,7 +26,7 @@
26#include <linux/libata.h> 26#include <linux/libata.h>
27 27
28#define DRV_NAME "ata_generic" 28#define DRV_NAME "ata_generic"
29#define DRV_VERSION "0.2.7" 29#define DRV_VERSION "0.2.10"
30 30
31/* 31/*
32 * A generic parallel ATA driver using libata 32 * A generic parallel ATA driver using libata
@@ -118,6 +118,8 @@ static struct scsi_host_template generic_sht = {
118 .slave_configure = ata_scsi_slave_config, 118 .slave_configure = ata_scsi_slave_config,
119 .slave_destroy = ata_scsi_slave_destroy, 119 .slave_destroy = ata_scsi_slave_destroy,
120 .bios_param = ata_std_bios_param, 120 .bios_param = ata_std_bios_param,
121 .resume = ata_scsi_device_resume,
122 .suspend = ata_scsi_device_suspend,
121}; 123};
122 124
123static struct ata_port_operations generic_port_ops = { 125static struct ata_port_operations generic_port_ops = {
@@ -226,7 +228,9 @@ static struct pci_driver ata_generic_pci_driver = {
226 .name = DRV_NAME, 228 .name = DRV_NAME,
227 .id_table = ata_generic, 229 .id_table = ata_generic,
228 .probe = ata_generic_init_one, 230 .probe = ata_generic_init_one,
229 .remove = ata_pci_remove_one 231 .remove = ata_pci_remove_one,
232 .suspend = ata_pci_device_suspend,
233 .resume = ata_pci_device_resume,
230}; 234};
231 235
232static int __init ata_generic_init(void) 236static int __init ata_generic_init(void)
diff --git a/drivers/ata/pata_atiixp.c b/drivers/ata/pata_atiixp.c
index 4e1d3b59adbb..7d9e391b0d18 100644
--- a/drivers/ata/pata_atiixp.c
+++ b/drivers/ata/pata_atiixp.c
@@ -22,7 +22,7 @@
22#include <linux/libata.h> 22#include <linux/libata.h>
23 23
24#define DRV_NAME "pata_atiixp" 24#define DRV_NAME "pata_atiixp"
25#define DRV_VERSION "0.4.3" 25#define DRV_VERSION "0.4.4"
26 26
27enum { 27enum {
28 ATIIXP_IDE_PIO_TIMING = 0x40, 28 ATIIXP_IDE_PIO_TIMING = 0x40,
@@ -218,6 +218,8 @@ static struct scsi_host_template atiixp_sht = {
218 .slave_configure = ata_scsi_slave_config, 218 .slave_configure = ata_scsi_slave_config,
219 .slave_destroy = ata_scsi_slave_destroy, 219 .slave_destroy = ata_scsi_slave_destroy,
220 .bios_param = ata_std_bios_param, 220 .bios_param = ata_std_bios_param,
221 .resume = ata_scsi_device_resume,
222 .suspend = ata_scsi_device_suspend,
221}; 223};
222 224
223static struct ata_port_operations atiixp_port_ops = { 225static struct ata_port_operations atiixp_port_ops = {
@@ -281,7 +283,9 @@ static struct pci_driver atiixp_pci_driver = {
281 .name = DRV_NAME, 283 .name = DRV_NAME,
282 .id_table = atiixp, 284 .id_table = atiixp,
283 .probe = atiixp_init_one, 285 .probe = atiixp_init_one,
284 .remove = ata_pci_remove_one 286 .remove = ata_pci_remove_one,
287 .resume = ata_pci_device_resume,
288 .suspend = ata_pci_device_suspend,
285}; 289};
286 290
287static int __init atiixp_init(void) 291static int __init atiixp_init(void)
diff --git a/drivers/ata/pata_cs5535.c b/drivers/ata/pata_cs5535.c
index 8dafa4a49fdc..38c00f628761 100644
--- a/drivers/ata/pata_cs5535.c
+++ b/drivers/ata/pata_cs5535.c
@@ -39,7 +39,7 @@
39#include <asm/msr.h> 39#include <asm/msr.h>
40 40
41#define DRV_NAME "cs5535" 41#define DRV_NAME "cs5535"
42#define DRV_VERSION "0.2.10" 42#define DRV_VERSION "0.2.11"
43 43
44/* 44/*
45 * The Geode (Aka Athlon GX now) uses an internal MSR based 45 * The Geode (Aka Athlon GX now) uses an internal MSR based
@@ -186,6 +186,8 @@ static struct scsi_host_template cs5535_sht = {
186 .slave_configure = ata_scsi_slave_config, 186 .slave_configure = ata_scsi_slave_config,
187 .slave_destroy = ata_scsi_slave_destroy, 187 .slave_destroy = ata_scsi_slave_destroy,
188 .bios_param = ata_std_bios_param, 188 .bios_param = ata_std_bios_param,
189 .resume = ata_scsi_device_resume,
190 .suspend = ata_scsi_device_suspend,
189}; 191};
190 192
191static struct ata_port_operations cs5535_port_ops = { 193static struct ata_port_operations cs5535_port_ops = {
@@ -269,6 +271,8 @@ static struct pci_driver cs5535_pci_driver = {
269 .id_table = cs5535, 271 .id_table = cs5535,
270 .probe = cs5535_init_one, 272 .probe = cs5535_init_one,
271 .remove = ata_pci_remove_one 273 .remove = ata_pci_remove_one
274 .suspend = ata_pci_device_suspend,
275 .resume = ata_pci_device_resume,
272}; 276};
273 277
274static int __init cs5535_init(void) 278static int __init cs5535_init(void)
diff --git a/drivers/ata/pata_cypress.c b/drivers/ata/pata_cypress.c
index 5a0b811907ee..6352bc7df603 100644
--- a/drivers/ata/pata_cypress.c
+++ b/drivers/ata/pata_cypress.c
@@ -18,7 +18,7 @@
18#include <linux/libata.h> 18#include <linux/libata.h>
19 19
20#define DRV_NAME "pata_cypress" 20#define DRV_NAME "pata_cypress"
21#define DRV_VERSION "0.1.2" 21#define DRV_VERSION "0.1.4"
22 22
23/* here are the offset definitions for the registers */ 23/* here are the offset definitions for the registers */
24 24
@@ -137,6 +137,8 @@ static struct scsi_host_template cy82c693_sht = {
137 .slave_configure = ata_scsi_slave_config, 137 .slave_configure = ata_scsi_slave_config,
138 .slave_destroy = ata_scsi_slave_destroy, 138 .slave_destroy = ata_scsi_slave_destroy,
139 .bios_param = ata_std_bios_param, 139 .bios_param = ata_std_bios_param,
140 .resume = ata_scsi_device_resume,
141 .suspend = ata_scsi_device_suspend,
140}; 142};
141 143
142static struct ata_port_operations cy82c693_port_ops = { 144static struct ata_port_operations cy82c693_port_ops = {
@@ -204,7 +206,9 @@ static struct pci_driver cy82c693_pci_driver = {
204 .name = DRV_NAME, 206 .name = DRV_NAME,
205 .id_table = cy82c693, 207 .id_table = cy82c693,
206 .probe = cy82c693_init_one, 208 .probe = cy82c693_init_one,
207 .remove = ata_pci_remove_one 209 .remove = ata_pci_remove_one,
210 .suspend = ata_pci_device_suspend,
211 .resume = ata_pci_device_resume,
208}; 212};
209 213
210static int __init cy82c693_init(void) 214static int __init cy82c693_init(void)
diff --git a/drivers/ata/pata_efar.c b/drivers/ata/pata_efar.c
index 755f79279de3..56589834483d 100644
--- a/drivers/ata/pata_efar.c
+++ b/drivers/ata/pata_efar.c
@@ -22,7 +22,7 @@
22#include <linux/ata.h> 22#include <linux/ata.h>
23 23
24#define DRV_NAME "pata_efar" 24#define DRV_NAME "pata_efar"
25#define DRV_VERSION "0.4.2" 25#define DRV_VERSION "0.4.3"
26 26
27/** 27/**
28 * efar_pre_reset - check for 40/80 pin 28 * efar_pre_reset - check for 40/80 pin
@@ -235,6 +235,8 @@ static struct scsi_host_template efar_sht = {
235 .slave_configure = ata_scsi_slave_config, 235 .slave_configure = ata_scsi_slave_config,
236 .slave_destroy = ata_scsi_slave_destroy, 236 .slave_destroy = ata_scsi_slave_destroy,
237 .bios_param = ata_std_bios_param, 237 .bios_param = ata_std_bios_param,
238 .resume = ata_scsi_device_resume,
239 .suspend = ata_scsi_device_suspend,
238}; 240};
239 241
240static const struct ata_port_operations efar_ops = { 242static const struct ata_port_operations efar_ops = {
@@ -316,6 +318,8 @@ static struct pci_driver efar_pci_driver = {
316 .id_table = efar_pci_tbl, 318 .id_table = efar_pci_tbl,
317 .probe = efar_init_one, 319 .probe = efar_init_one,
318 .remove = ata_pci_remove_one, 320 .remove = ata_pci_remove_one,
321 .suspend = ata_pci_device_suspend,
322 .resume = ata_pci_device_resume,
319}; 323};
320 324
321static int __init efar_init(void) 325static int __init efar_init(void)
diff --git a/drivers/ata/pata_marvell.c b/drivers/ata/pata_marvell.c
index 1ea64075c783..a5953c389264 100644
--- a/drivers/ata/pata_marvell.c
+++ b/drivers/ata/pata_marvell.c
@@ -20,7 +20,7 @@
20#include <linux/ata.h> 20#include <linux/ata.h>
21 21
22#define DRV_NAME "pata_marvell" 22#define DRV_NAME "pata_marvell"
23#define DRV_VERSION "0.0.5u" 23#define DRV_VERSION "0.1.1"
24 24
25/** 25/**
26 * marvell_pre_reset - check for 40/80 pin 26 * marvell_pre_reset - check for 40/80 pin
@@ -103,6 +103,8 @@ static struct scsi_host_template marvell_sht = {
103 .slave_configure = ata_scsi_slave_config, 103 .slave_configure = ata_scsi_slave_config,
104 /* Use standard CHS mapping rules */ 104 /* Use standard CHS mapping rules */
105 .bios_param = ata_std_bios_param, 105 .bios_param = ata_std_bios_param,
106 .resume = ata_scsi_device_resume,
107 .suspend = ata_scsi_device_suspend,
106}; 108};
107 109
108static const struct ata_port_operations marvell_ops = { 110static const struct ata_port_operations marvell_ops = {
@@ -197,6 +199,8 @@ static struct pci_driver marvell_pci_driver = {
197 .id_table = marvell_pci_tbl, 199 .id_table = marvell_pci_tbl,
198 .probe = marvell_init_one, 200 .probe = marvell_init_one,
199 .remove = ata_pci_remove_one, 201 .remove = ata_pci_remove_one,
202 .suspend = ata_pci_device_suspend,
203 .resume = ata_pci_device_resume,
200}; 204};
201 205
202static int __init marvell_init(void) 206static int __init marvell_init(void)
diff --git a/drivers/ata/pata_mpiix.c b/drivers/ata/pata_mpiix.c
index e00d406bfdf5..752a7418ed51 100644
--- a/drivers/ata/pata_mpiix.c
+++ b/drivers/ata/pata_mpiix.c
@@ -35,7 +35,7 @@
35#include <linux/libata.h> 35#include <linux/libata.h>
36 36
37#define DRV_NAME "pata_mpiix" 37#define DRV_NAME "pata_mpiix"
38#define DRV_VERSION "0.7.2" 38#define DRV_VERSION "0.7.3"
39 39
40enum { 40enum {
41 IDETIM = 0x6C, /* IDE control register */ 41 IDETIM = 0x6C, /* IDE control register */
@@ -168,6 +168,8 @@ static struct scsi_host_template mpiix_sht = {
168 .slave_configure = ata_scsi_slave_config, 168 .slave_configure = ata_scsi_slave_config,
169 .slave_destroy = ata_scsi_slave_destroy, 169 .slave_destroy = ata_scsi_slave_destroy,
170 .bios_param = ata_std_bios_param, 170 .bios_param = ata_std_bios_param,
171 .resume = ata_scsi_device_resume,
172 .suspend = ata_scsi_device_suspend,
171}; 173};
172 174
173static struct ata_port_operations mpiix_port_ops = { 175static struct ata_port_operations mpiix_port_ops = {
@@ -285,7 +287,9 @@ static struct pci_driver mpiix_pci_driver = {
285 .name = DRV_NAME, 287 .name = DRV_NAME,
286 .id_table = mpiix, 288 .id_table = mpiix,
287 .probe = mpiix_init_one, 289 .probe = mpiix_init_one,
288 .remove = mpiix_remove_one 290 .remove = mpiix_remove_one,
291 .suspend = ata_pci_device_suspend,
292 .resume = ata_pci_device_resume,
289}; 293};
290 294
291static int __init mpiix_init(void) 295static int __init mpiix_init(void)
diff --git a/drivers/ata/pata_netcell.c b/drivers/ata/pata_netcell.c
index 1963a4d35873..956616789ba1 100644
--- a/drivers/ata/pata_netcell.c
+++ b/drivers/ata/pata_netcell.c
@@ -16,7 +16,7 @@
16#include <linux/ata.h> 16#include <linux/ata.h>
17 17
18#define DRV_NAME "pata_netcell" 18#define DRV_NAME "pata_netcell"
19#define DRV_VERSION "0.1.5" 19#define DRV_VERSION "0.1.6"
20 20
21/** 21/**
22 * netcell_probe_init - check for 40/80 pin 22 * netcell_probe_init - check for 40/80 pin
@@ -65,6 +65,8 @@ static struct scsi_host_template netcell_sht = {
65 .slave_destroy = ata_scsi_slave_destroy, 65 .slave_destroy = ata_scsi_slave_destroy,
66 /* Use standard CHS mapping rules */ 66 /* Use standard CHS mapping rules */
67 .bios_param = ata_std_bios_param, 67 .bios_param = ata_std_bios_param,
68 .resume = ata_scsi_device_resume,
69 .suspend = ata_scsi_device_suspend,
68}; 70};
69 71
70static const struct ata_port_operations netcell_ops = { 72static const struct ata_port_operations netcell_ops = {
@@ -153,6 +155,8 @@ static struct pci_driver netcell_pci_driver = {
153 .id_table = netcell_pci_tbl, 155 .id_table = netcell_pci_tbl,
154 .probe = netcell_init_one, 156 .probe = netcell_init_one,
155 .remove = ata_pci_remove_one, 157 .remove = ata_pci_remove_one,
158 .suspend = ata_pci_device_suspend,
159 .resume = ata_pci_device_resume,
156}; 160};
157 161
158static int __init netcell_init(void) 162static int __init netcell_init(void)
diff --git a/drivers/ata/pata_ns87410.c b/drivers/ata/pata_ns87410.c
index 7ec800f00ec8..428e6b511a2f 100644
--- a/drivers/ata/pata_ns87410.c
+++ b/drivers/ata/pata_ns87410.c
@@ -28,7 +28,7 @@
28#include <linux/libata.h> 28#include <linux/libata.h>
29 29
30#define DRV_NAME "pata_ns87410" 30#define DRV_NAME "pata_ns87410"
31#define DRV_VERSION "0.4.2" 31#define DRV_VERSION "0.4.3"
32 32
33/** 33/**
34 * ns87410_pre_reset - probe begin 34 * ns87410_pre_reset - probe begin
@@ -158,6 +158,8 @@ static struct scsi_host_template ns87410_sht = {
158 .slave_configure = ata_scsi_slave_config, 158 .slave_configure = ata_scsi_slave_config,
159 .slave_destroy = ata_scsi_slave_destroy, 159 .slave_destroy = ata_scsi_slave_destroy,
160 .bios_param = ata_std_bios_param, 160 .bios_param = ata_std_bios_param,
161 .resume = ata_scsi_device_resume,
162 .suspend = ata_scsi_device_suspend,
161}; 163};
162 164
163static struct ata_port_operations ns87410_port_ops = { 165static struct ata_port_operations ns87410_port_ops = {
@@ -210,7 +212,9 @@ static struct pci_driver ns87410_pci_driver = {
210 .name = DRV_NAME, 212 .name = DRV_NAME,
211 .id_table = ns87410, 213 .id_table = ns87410,
212 .probe = ns87410_init_one, 214 .probe = ns87410_init_one,
213 .remove = ata_pci_remove_one 215 .remove = ata_pci_remove_one,
216 .suspend = ata_pci_device_suspend,
217 .resume = ata_pci_device_resume,
214}; 218};
215 219
216static int __init ns87410_init(void) 220static int __init ns87410_init(void)
diff --git a/drivers/ata/pata_oldpiix.c b/drivers/ata/pata_oldpiix.c
index 8837256632e9..1283fb71bd5d 100644
--- a/drivers/ata/pata_oldpiix.c
+++ b/drivers/ata/pata_oldpiix.c
@@ -233,6 +233,8 @@ static struct scsi_host_template oldpiix_sht = {
233 .slave_configure = ata_scsi_slave_config, 233 .slave_configure = ata_scsi_slave_config,
234 .slave_destroy = ata_scsi_slave_destroy, 234 .slave_destroy = ata_scsi_slave_destroy,
235 .bios_param = ata_std_bios_param, 235 .bios_param = ata_std_bios_param,
236 .resume = ata_scsi_device_resume,
237 .suspend = ata_scsi_device_suspend,
236}; 238};
237 239
238static const struct ata_port_operations oldpiix_pata_ops = { 240static const struct ata_port_operations oldpiix_pata_ops = {
@@ -314,6 +316,8 @@ static struct pci_driver oldpiix_pci_driver = {
314 .id_table = oldpiix_pci_tbl, 316 .id_table = oldpiix_pci_tbl,
315 .probe = oldpiix_init_one, 317 .probe = oldpiix_init_one,
316 .remove = ata_pci_remove_one, 318 .remove = ata_pci_remove_one,
319 .suspend = ata_pci_device_suspend,
320 .resume = ata_pci_device_resume,
317}; 321};
318 322
319static int __init oldpiix_init(void) 323static int __init oldpiix_init(void)
diff --git a/drivers/ata/pata_opti.c b/drivers/ata/pata_opti.c
index c6319cf50de4..66f561db2ab1 100644
--- a/drivers/ata/pata_opti.c
+++ b/drivers/ata/pata_opti.c
@@ -34,7 +34,7 @@
34#include <linux/libata.h> 34#include <linux/libata.h>
35 35
36#define DRV_NAME "pata_opti" 36#define DRV_NAME "pata_opti"
37#define DRV_VERSION "0.2.5" 37#define DRV_VERSION "0.2.7"
38 38
39enum { 39enum {
40 READ_REG = 0, /* index of Read cycle timing register */ 40 READ_REG = 0, /* index of Read cycle timing register */
@@ -109,30 +109,6 @@ static void opti_write_reg(struct ata_port *ap, u8 val, int reg)
109 outb(0x83, regio + 2); 109 outb(0x83, regio + 2);
110} 110}
111 111
112#if 0
113/**
114 * opti_read_reg - control register read
115 * @ap: ATA port
116 * @reg: control register number
117 *
118 * The Opti uses magic 'trapdoor' register accesses to do configuration
119 * rather than using PCI space as other controllers do. The double inw
120 * on the error register activates configuration mode. We can then read
121 * the control register
122 */
123
124static u8 opti_read_reg(struct ata_port *ap, int reg)
125{
126 unsigned long regio = ap->ioaddr.cmd_addr;
127 u8 ret;
128 inw(regio + 1);
129 inw(regio + 1);
130 outb(3, regio + 2);
131 ret = inb(regio + reg);
132 outb(0x83, regio + 2);
133}
134#endif
135
136/** 112/**
137 * opti_set_piomode - set initial PIO mode data 113 * opti_set_piomode - set initial PIO mode data
138 * @ap: ATA interface 114 * @ap: ATA interface
@@ -204,12 +180,13 @@ static struct scsi_host_template opti_sht = {
204 .slave_configure = ata_scsi_slave_config, 180 .slave_configure = ata_scsi_slave_config,
205 .slave_destroy = ata_scsi_slave_destroy, 181 .slave_destroy = ata_scsi_slave_destroy,
206 .bios_param = ata_std_bios_param, 182 .bios_param = ata_std_bios_param,
183 .resume = ata_scsi_device_resume,
184 .suspend = ata_scsi_device_suspend,
207}; 185};
208 186
209static struct ata_port_operations opti_port_ops = { 187static struct ata_port_operations opti_port_ops = {
210 .port_disable = ata_port_disable, 188 .port_disable = ata_port_disable,
211 .set_piomode = opti_set_piomode, 189 .set_piomode = opti_set_piomode,
212/* .set_dmamode = opti_set_dmamode, */
213 .tf_load = ata_tf_load, 190 .tf_load = ata_tf_load,
214 .tf_read = ata_tf_read, 191 .tf_read = ata_tf_read,
215 .check_status = ata_check_status, 192 .check_status = ata_check_status,
@@ -267,7 +244,9 @@ static struct pci_driver opti_pci_driver = {
267 .name = DRV_NAME, 244 .name = DRV_NAME,
268 .id_table = opti, 245 .id_table = opti,
269 .probe = opti_init_one, 246 .probe = opti_init_one,
270 .remove = ata_pci_remove_one 247 .remove = ata_pci_remove_one,
248 .suspend = ata_pci_device_suspend,
249 .resume = ata_pci_device_resume,
271}; 250};
272 251
273static int __init opti_init(void) 252static int __init opti_init(void)
diff --git a/drivers/ata/pata_optidma.c b/drivers/ata/pata_optidma.c
index 2f4770cce04e..d898e42f99e8 100644
--- a/drivers/ata/pata_optidma.c
+++ b/drivers/ata/pata_optidma.c
@@ -33,7 +33,7 @@
33#include <linux/libata.h> 33#include <linux/libata.h>
34 34
35#define DRV_NAME "pata_optidma" 35#define DRV_NAME "pata_optidma"
36#define DRV_VERSION "0.2.2" 36#define DRV_VERSION "0.2.3"
37 37
38enum { 38enum {
39 READ_REG = 0, /* index of Read cycle timing register */ 39 READ_REG = 0, /* index of Read cycle timing register */
@@ -361,6 +361,8 @@ static struct scsi_host_template optidma_sht = {
361 .slave_configure = ata_scsi_slave_config, 361 .slave_configure = ata_scsi_slave_config,
362 .slave_destroy = ata_scsi_slave_destroy, 362 .slave_destroy = ata_scsi_slave_destroy,
363 .bios_param = ata_std_bios_param, 363 .bios_param = ata_std_bios_param,
364 .resume = ata_scsi_device_resume,
365 .suspend = ata_scsi_device_suspend,
364}; 366};
365 367
366static struct ata_port_operations optidma_port_ops = { 368static struct ata_port_operations optidma_port_ops = {
@@ -522,7 +524,9 @@ static struct pci_driver optidma_pci_driver = {
522 .name = DRV_NAME, 524 .name = DRV_NAME,
523 .id_table = optidma, 525 .id_table = optidma,
524 .probe = optidma_init_one, 526 .probe = optidma_init_one,
525 .remove = ata_pci_remove_one 527 .remove = ata_pci_remove_one,
528 .suspend = ata_pci_device_suspend,
529 .resume = ata_pci_device_resume,
526}; 530};
527 531
528static int __init optidma_init(void) 532static int __init optidma_init(void)
diff --git a/drivers/ata/pata_radisys.c b/drivers/ata/pata_radisys.c
index 048c2bb21ef1..5fe7ffce5284 100644
--- a/drivers/ata/pata_radisys.c
+++ b/drivers/ata/pata_radisys.c
@@ -229,6 +229,8 @@ static struct scsi_host_template radisys_sht = {
229 .slave_configure = ata_scsi_slave_config, 229 .slave_configure = ata_scsi_slave_config,
230 .slave_destroy = ata_scsi_slave_destroy, 230 .slave_destroy = ata_scsi_slave_destroy,
231 .bios_param = ata_std_bios_param, 231 .bios_param = ata_std_bios_param,
232 .resume = ata_scsi_device_resume,
233 .suspend = ata_scsi_device_suspend,
232}; 234};
233 235
234static const struct ata_port_operations radisys_pata_ops = { 236static const struct ata_port_operations radisys_pata_ops = {
@@ -311,6 +313,8 @@ static struct pci_driver radisys_pci_driver = {
311 .id_table = radisys_pci_tbl, 313 .id_table = radisys_pci_tbl,
312 .probe = radisys_init_one, 314 .probe = radisys_init_one,
313 .remove = ata_pci_remove_one, 315 .remove = ata_pci_remove_one,
316 .suspend = ata_pci_device_suspend,
317 .resume = ata_pci_device_resume,
314}; 318};
315 319
316static int __init radisys_init(void) 320static int __init radisys_init(void)
diff --git a/drivers/ata/pata_sc1200.c b/drivers/ata/pata_sc1200.c
index 0c75dae74764..0c5393a73970 100644
--- a/drivers/ata/pata_sc1200.c
+++ b/drivers/ata/pata_sc1200.c
@@ -40,7 +40,7 @@
40#include <linux/libata.h> 40#include <linux/libata.h>
41 41
42#define DRV_NAME "sc1200" 42#define DRV_NAME "sc1200"
43#define DRV_VERSION "0.2.3" 43#define DRV_VERSION "0.2.4"
44 44
45#define SC1200_REV_A 0x00 45#define SC1200_REV_A 0x00
46#define SC1200_REV_B1 0x01 46#define SC1200_REV_B1 0x01
@@ -195,6 +195,8 @@ static struct scsi_host_template sc1200_sht = {
195 .slave_configure = ata_scsi_slave_config, 195 .slave_configure = ata_scsi_slave_config,
196 .slave_destroy = ata_scsi_slave_destroy, 196 .slave_destroy = ata_scsi_slave_destroy,
197 .bios_param = ata_std_bios_param, 197 .bios_param = ata_std_bios_param,
198 .resume = ata_scsi_device_resume,
199 .suspend = ata_scsi_device_suspend,
198}; 200};
199 201
200static struct ata_port_operations sc1200_port_ops = { 202static struct ata_port_operations sc1200_port_ops = {
@@ -264,7 +266,9 @@ static struct pci_driver sc1200_pci_driver = {
264 .name = DRV_NAME, 266 .name = DRV_NAME,
265 .id_table = sc1200, 267 .id_table = sc1200,
266 .probe = sc1200_init_one, 268 .probe = sc1200_init_one,
267 .remove = ata_pci_remove_one 269 .remove = ata_pci_remove_one,
270 .suspend = ata_pci_device_suspend,
271 .resume = ata_pci_device_resume,
268}; 272};
269 273
270static int __init sc1200_init(void) 274static int __init sc1200_init(void)
diff --git a/drivers/ata/pata_triflex.c b/drivers/ata/pata_triflex.c
index bfda1f7e760a..ece9cb7c2f4d 100644
--- a/drivers/ata/pata_triflex.c
+++ b/drivers/ata/pata_triflex.c
@@ -43,7 +43,7 @@
43#include <linux/libata.h> 43#include <linux/libata.h>
44 44
45#define DRV_NAME "pata_triflex" 45#define DRV_NAME "pata_triflex"
46#define DRV_VERSION "0.2.5" 46#define DRV_VERSION "0.2.7"
47 47
48/** 48/**
49 * triflex_prereset - probe begin 49 * triflex_prereset - probe begin
@@ -194,6 +194,8 @@ static struct scsi_host_template triflex_sht = {
194 .slave_configure = ata_scsi_slave_config, 194 .slave_configure = ata_scsi_slave_config,
195 .slave_destroy = ata_scsi_slave_destroy, 195 .slave_destroy = ata_scsi_slave_destroy,
196 .bios_param = ata_std_bios_param, 196 .bios_param = ata_std_bios_param,
197 .resume = ata_scsi_device_resume,
198 .suspend = ata_scsi_device_suspend,
197}; 199};
198 200
199static struct ata_port_operations triflex_port_ops = { 201static struct ata_port_operations triflex_port_ops = {
@@ -258,7 +260,9 @@ static struct pci_driver triflex_pci_driver = {
258 .name = DRV_NAME, 260 .name = DRV_NAME,
259 .id_table = triflex, 261 .id_table = triflex,
260 .probe = triflex_init_one, 262 .probe = triflex_init_one,
261 .remove = ata_pci_remove_one 263 .remove = ata_pci_remove_one,
264 .suspend = ata_pci_device_suspend,
265 .resume = ata_pci_device_resume,
262}; 266};
263 267
264static int __init triflex_init(void) 268static int __init triflex_init(void)