diff options
author | Alan <alan@lxorguk.ukuu.org.uk> | 2006-11-22 11:57:36 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-12-01 22:46:49 -0500 |
commit | 30ced0f0d211999f316930eff7287aa5a9995bef (patch) | |
tree | f00359c2aa4dda61d7d31f58a72fee78ef059a14 /drivers/ata/pata_opti.c | |
parent | 8550c1637ba7dd96a76353eb52d31088f9c2f5fe (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/pata_opti.c')
-rw-r--r-- | drivers/ata/pata_opti.c | 33 |
1 files changed, 6 insertions, 27 deletions
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 | ||
39 | enum { | 39 | enum { |
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 | |||
124 | static 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 | ||
209 | static struct ata_port_operations opti_port_ops = { | 187 | static 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 | ||
273 | static int __init opti_init(void) | 252 | static int __init opti_init(void) |