diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2005-10-22 14:27:05 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-10-22 14:27:05 -0400 |
commit | 057ace5e79da9ebf2aa82833cfea825533ac06fb (patch) | |
tree | f27ed6cbd9a185041862471ef421e6415e099344 | |
parent | cf482935c6abe5245e481213c6e6df808c976f56 (diff) |
libata: const-ification bombing run
Enforce access rules where appropriate.
If the compiler is smart enough, this may buy us an optimization or two
as a side effect.
-rw-r--r-- | drivers/scsi/ahci.c | 2 | ||||
-rw-r--r-- | drivers/scsi/ata_piix.c | 4 | ||||
-rw-r--r-- | drivers/scsi/libata-core.c | 68 | ||||
-rw-r--r-- | drivers/scsi/libata-scsi.c | 24 | ||||
-rw-r--r-- | drivers/scsi/libata.h | 2 | ||||
-rw-r--r-- | drivers/scsi/pdc_adma.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_mv.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_nv.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_promise.c | 12 | ||||
-rw-r--r-- | drivers/scsi/sata_qstor.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_sil.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_sil24.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_sis.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_svw.c | 4 | ||||
-rw-r--r-- | drivers/scsi/sata_sx4.c | 10 | ||||
-rw-r--r-- | drivers/scsi/sata_uli.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_via.c | 2 | ||||
-rw-r--r-- | drivers/scsi/sata_vsc.c | 4 | ||||
-rw-r--r-- | include/linux/ata.h | 6 | ||||
-rw-r--r-- | include/linux/libata.h | 32 |
20 files changed, 93 insertions, 93 deletions
diff --git a/drivers/scsi/ahci.c b/drivers/scsi/ahci.c index cfa22e4ee547..fe8187d6f58b 100644 --- a/drivers/scsi/ahci.c +++ b/drivers/scsi/ahci.c | |||
@@ -216,7 +216,7 @@ static Scsi_Host_Template ahci_sht = { | |||
216 | .ordered_flush = 1, | 216 | .ordered_flush = 1, |
217 | }; | 217 | }; |
218 | 218 | ||
219 | static struct ata_port_operations ahci_ops = { | 219 | static const struct ata_port_operations ahci_ops = { |
220 | .port_disable = ata_port_disable, | 220 | .port_disable = ata_port_disable, |
221 | 221 | ||
222 | .check_status = ahci_check_status, | 222 | .check_status = ahci_check_status, |
diff --git a/drivers/scsi/ata_piix.c b/drivers/scsi/ata_piix.c index d71cef767cec..be021478f416 100644 --- a/drivers/scsi/ata_piix.c +++ b/drivers/scsi/ata_piix.c | |||
@@ -147,7 +147,7 @@ static Scsi_Host_Template piix_sht = { | |||
147 | .ordered_flush = 1, | 147 | .ordered_flush = 1, |
148 | }; | 148 | }; |
149 | 149 | ||
150 | static struct ata_port_operations piix_pata_ops = { | 150 | static const struct ata_port_operations piix_pata_ops = { |
151 | .port_disable = ata_port_disable, | 151 | .port_disable = ata_port_disable, |
152 | .set_piomode = piix_set_piomode, | 152 | .set_piomode = piix_set_piomode, |
153 | .set_dmamode = piix_set_dmamode, | 153 | .set_dmamode = piix_set_dmamode, |
@@ -177,7 +177,7 @@ static struct ata_port_operations piix_pata_ops = { | |||
177 | .host_stop = ata_host_stop, | 177 | .host_stop = ata_host_stop, |
178 | }; | 178 | }; |
179 | 179 | ||
180 | static struct ata_port_operations piix_sata_ops = { | 180 | static const struct ata_port_operations piix_sata_ops = { |
181 | .port_disable = ata_port_disable, | 181 | .port_disable = ata_port_disable, |
182 | 182 | ||
183 | .tf_load = ata_tf_load, | 183 | .tf_load = ata_tf_load, |
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c index 9269fd9b814f..d55f12dacfcb 100644 --- a/drivers/scsi/libata-core.c +++ b/drivers/scsi/libata-core.c | |||
@@ -67,9 +67,9 @@ static void ata_dev_reread_id(struct ata_port *ap, struct ata_device *dev); | |||
67 | static void ata_dev_init_params(struct ata_port *ap, struct ata_device *dev); | 67 | static void ata_dev_init_params(struct ata_port *ap, struct ata_device *dev); |
68 | static void ata_set_mode(struct ata_port *ap); | 68 | static void ata_set_mode(struct ata_port *ap); |
69 | static void ata_dev_set_xfermode(struct ata_port *ap, struct ata_device *dev); | 69 | static void ata_dev_set_xfermode(struct ata_port *ap, struct ata_device *dev); |
70 | static unsigned int ata_get_mode_mask(struct ata_port *ap, int shift); | 70 | static unsigned int ata_get_mode_mask(const struct ata_port *ap, int shift); |
71 | static int fgb(u32 bitmap); | 71 | static int fgb(u32 bitmap); |
72 | static int ata_choose_xfer_mode(struct ata_port *ap, | 72 | static int ata_choose_xfer_mode(const struct ata_port *ap, |
73 | u8 *xfer_mode_out, | 73 | u8 *xfer_mode_out, |
74 | unsigned int *xfer_shift_out); | 74 | unsigned int *xfer_shift_out); |
75 | static void __ata_qc_complete(struct ata_queued_cmd *qc); | 75 | static void __ata_qc_complete(struct ata_queued_cmd *qc); |
@@ -97,7 +97,7 @@ MODULE_VERSION(DRV_VERSION); | |||
97 | * Inherited from caller. | 97 | * Inherited from caller. |
98 | */ | 98 | */ |
99 | 99 | ||
100 | static void ata_tf_load_pio(struct ata_port *ap, struct ata_taskfile *tf) | 100 | static void ata_tf_load_pio(struct ata_port *ap, const struct ata_taskfile *tf) |
101 | { | 101 | { |
102 | struct ata_ioports *ioaddr = &ap->ioaddr; | 102 | struct ata_ioports *ioaddr = &ap->ioaddr; |
103 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; | 103 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; |
@@ -155,7 +155,7 @@ static void ata_tf_load_pio(struct ata_port *ap, struct ata_taskfile *tf) | |||
155 | * Inherited from caller. | 155 | * Inherited from caller. |
156 | */ | 156 | */ |
157 | 157 | ||
158 | static void ata_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf) | 158 | static void ata_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf) |
159 | { | 159 | { |
160 | struct ata_ioports *ioaddr = &ap->ioaddr; | 160 | struct ata_ioports *ioaddr = &ap->ioaddr; |
161 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; | 161 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; |
@@ -224,7 +224,7 @@ static void ata_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf) | |||
224 | * LOCKING: | 224 | * LOCKING: |
225 | * Inherited from caller. | 225 | * Inherited from caller. |
226 | */ | 226 | */ |
227 | void ata_tf_load(struct ata_port *ap, struct ata_taskfile *tf) | 227 | void ata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf) |
228 | { | 228 | { |
229 | if (ap->flags & ATA_FLAG_MMIO) | 229 | if (ap->flags & ATA_FLAG_MMIO) |
230 | ata_tf_load_mmio(ap, tf); | 230 | ata_tf_load_mmio(ap, tf); |
@@ -244,7 +244,7 @@ void ata_tf_load(struct ata_port *ap, struct ata_taskfile *tf) | |||
244 | * spin_lock_irqsave(host_set lock) | 244 | * spin_lock_irqsave(host_set lock) |
245 | */ | 245 | */ |
246 | 246 | ||
247 | static void ata_exec_command_pio(struct ata_port *ap, struct ata_taskfile *tf) | 247 | static void ata_exec_command_pio(struct ata_port *ap, const struct ata_taskfile *tf) |
248 | { | 248 | { |
249 | DPRINTK("ata%u: cmd 0x%X\n", ap->id, tf->command); | 249 | DPRINTK("ata%u: cmd 0x%X\n", ap->id, tf->command); |
250 | 250 | ||
@@ -265,7 +265,7 @@ static void ata_exec_command_pio(struct ata_port *ap, struct ata_taskfile *tf) | |||
265 | * spin_lock_irqsave(host_set lock) | 265 | * spin_lock_irqsave(host_set lock) |
266 | */ | 266 | */ |
267 | 267 | ||
268 | static void ata_exec_command_mmio(struct ata_port *ap, struct ata_taskfile *tf) | 268 | static void ata_exec_command_mmio(struct ata_port *ap, const struct ata_taskfile *tf) |
269 | { | 269 | { |
270 | DPRINTK("ata%u: cmd 0x%X\n", ap->id, tf->command); | 270 | DPRINTK("ata%u: cmd 0x%X\n", ap->id, tf->command); |
271 | 271 | ||
@@ -285,7 +285,7 @@ static void ata_exec_command_mmio(struct ata_port *ap, struct ata_taskfile *tf) | |||
285 | * LOCKING: | 285 | * LOCKING: |
286 | * spin_lock_irqsave(host_set lock) | 286 | * spin_lock_irqsave(host_set lock) |
287 | */ | 287 | */ |
288 | void ata_exec_command(struct ata_port *ap, struct ata_taskfile *tf) | 288 | void ata_exec_command(struct ata_port *ap, const struct ata_taskfile *tf) |
289 | { | 289 | { |
290 | if (ap->flags & ATA_FLAG_MMIO) | 290 | if (ap->flags & ATA_FLAG_MMIO) |
291 | ata_exec_command_mmio(ap, tf); | 291 | ata_exec_command_mmio(ap, tf); |
@@ -305,7 +305,7 @@ void ata_exec_command(struct ata_port *ap, struct ata_taskfile *tf) | |||
305 | * Obtains host_set lock. | 305 | * Obtains host_set lock. |
306 | */ | 306 | */ |
307 | 307 | ||
308 | static inline void ata_exec(struct ata_port *ap, struct ata_taskfile *tf) | 308 | static inline void ata_exec(struct ata_port *ap, const struct ata_taskfile *tf) |
309 | { | 309 | { |
310 | unsigned long flags; | 310 | unsigned long flags; |
311 | 311 | ||
@@ -328,7 +328,7 @@ static inline void ata_exec(struct ata_port *ap, struct ata_taskfile *tf) | |||
328 | * Obtains host_set lock. | 328 | * Obtains host_set lock. |
329 | */ | 329 | */ |
330 | 330 | ||
331 | static void ata_tf_to_host(struct ata_port *ap, struct ata_taskfile *tf) | 331 | static void ata_tf_to_host(struct ata_port *ap, const struct ata_taskfile *tf) |
332 | { | 332 | { |
333 | ap->ops->tf_load(ap, tf); | 333 | ap->ops->tf_load(ap, tf); |
334 | 334 | ||
@@ -348,7 +348,7 @@ static void ata_tf_to_host(struct ata_port *ap, struct ata_taskfile *tf) | |||
348 | * spin_lock_irqsave(host_set lock) | 348 | * spin_lock_irqsave(host_set lock) |
349 | */ | 349 | */ |
350 | 350 | ||
351 | void ata_tf_to_host_nolock(struct ata_port *ap, struct ata_taskfile *tf) | 351 | void ata_tf_to_host_nolock(struct ata_port *ap, const struct ata_taskfile *tf) |
352 | { | 352 | { |
353 | ap->ops->tf_load(ap, tf); | 353 | ap->ops->tf_load(ap, tf); |
354 | ap->ops->exec_command(ap, tf); | 354 | ap->ops->exec_command(ap, tf); |
@@ -558,7 +558,7 @@ u8 ata_chk_err(struct ata_port *ap) | |||
558 | * Inherited from caller. | 558 | * Inherited from caller. |
559 | */ | 559 | */ |
560 | 560 | ||
561 | void ata_tf_to_fis(struct ata_taskfile *tf, u8 *fis, u8 pmp) | 561 | void ata_tf_to_fis(const struct ata_taskfile *tf, u8 *fis, u8 pmp) |
562 | { | 562 | { |
563 | fis[0] = 0x27; /* Register - Host to Device FIS */ | 563 | fis[0] = 0x27; /* Register - Host to Device FIS */ |
564 | fis[1] = (pmp & 0xf) | (1 << 7); /* Port multiplier number, | 564 | fis[1] = (pmp & 0xf) | (1 << 7); /* Port multiplier number, |
@@ -599,7 +599,7 @@ void ata_tf_to_fis(struct ata_taskfile *tf, u8 *fis, u8 pmp) | |||
599 | * Inherited from caller. | 599 | * Inherited from caller. |
600 | */ | 600 | */ |
601 | 601 | ||
602 | void ata_tf_from_fis(u8 *fis, struct ata_taskfile *tf) | 602 | void ata_tf_from_fis(const u8 *fis, struct ata_taskfile *tf) |
603 | { | 603 | { |
604 | tf->command = fis[2]; /* status */ | 604 | tf->command = fis[2]; /* status */ |
605 | tf->feature = fis[3]; /* error */ | 605 | tf->feature = fis[3]; /* error */ |
@@ -845,7 +845,7 @@ static unsigned int ata_devchk(struct ata_port *ap, | |||
845 | * the event of failure. | 845 | * the event of failure. |
846 | */ | 846 | */ |
847 | 847 | ||
848 | unsigned int ata_dev_classify(struct ata_taskfile *tf) | 848 | unsigned int ata_dev_classify(const struct ata_taskfile *tf) |
849 | { | 849 | { |
850 | /* Apple's open source Darwin code hints that some devices only | 850 | /* Apple's open source Darwin code hints that some devices only |
851 | * put a proper signature into the LBA mid/high registers, | 851 | * put a proper signature into the LBA mid/high registers, |
@@ -937,7 +937,7 @@ static u8 ata_dev_try_classify(struct ata_port *ap, unsigned int device) | |||
937 | * caller. | 937 | * caller. |
938 | */ | 938 | */ |
939 | 939 | ||
940 | void ata_dev_id_string(u16 *id, unsigned char *s, | 940 | void ata_dev_id_string(const u16 *id, unsigned char *s, |
941 | unsigned int ofs, unsigned int len) | 941 | unsigned int ofs, unsigned int len) |
942 | { | 942 | { |
943 | unsigned int c; | 943 | unsigned int c; |
@@ -1054,7 +1054,7 @@ void ata_dev_select(struct ata_port *ap, unsigned int device, | |||
1054 | * caller. | 1054 | * caller. |
1055 | */ | 1055 | */ |
1056 | 1056 | ||
1057 | static inline void ata_dump_id(struct ata_device *dev) | 1057 | static inline void ata_dump_id(const struct ata_device *dev) |
1058 | { | 1058 | { |
1059 | DPRINTK("49==0x%04x " | 1059 | DPRINTK("49==0x%04x " |
1060 | "53==0x%04x " | 1060 | "53==0x%04x " |
@@ -1089,7 +1089,7 @@ static inline void ata_dump_id(struct ata_device *dev) | |||
1089 | * FIXME: pre IDE drive timing (do we care ?). | 1089 | * FIXME: pre IDE drive timing (do we care ?). |
1090 | */ | 1090 | */ |
1091 | 1091 | ||
1092 | static unsigned int ata_pio_modes(struct ata_device *adev) | 1092 | static unsigned int ata_pio_modes(const struct ata_device *adev) |
1093 | { | 1093 | { |
1094 | u16 modes; | 1094 | u16 modes; |
1095 | 1095 | ||
@@ -1352,7 +1352,7 @@ err_out: | |||
1352 | } | 1352 | } |
1353 | 1353 | ||
1354 | 1354 | ||
1355 | static inline u8 ata_dev_knobble(struct ata_port *ap) | 1355 | static inline u8 ata_dev_knobble(const struct ata_port *ap) |
1356 | { | 1356 | { |
1357 | return ((ap->cbl == ATA_CBL_SATA) && (!ata_id_is_sata(ap->device->id))); | 1357 | return ((ap->cbl == ATA_CBL_SATA) && (!ata_id_is_sata(ap->device->id))); |
1358 | } | 1358 | } |
@@ -1684,7 +1684,7 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, | |||
1684 | return 0; | 1684 | return 0; |
1685 | } | 1685 | } |
1686 | 1686 | ||
1687 | static struct { | 1687 | static const struct { |
1688 | unsigned int shift; | 1688 | unsigned int shift; |
1689 | u8 base; | 1689 | u8 base; |
1690 | } xfer_mode_classes[] = { | 1690 | } xfer_mode_classes[] = { |
@@ -2093,7 +2093,8 @@ err_out: | |||
2093 | DPRINTK("EXIT\n"); | 2093 | DPRINTK("EXIT\n"); |
2094 | } | 2094 | } |
2095 | 2095 | ||
2096 | static void ata_pr_blacklisted(struct ata_port *ap, struct ata_device *dev) | 2096 | static void ata_pr_blacklisted(const struct ata_port *ap, |
2097 | const struct ata_device *dev) | ||
2097 | { | 2098 | { |
2098 | printk(KERN_WARNING "ata%u: dev %u is on DMA blacklist, disabling DMA\n", | 2099 | printk(KERN_WARNING "ata%u: dev %u is on DMA blacklist, disabling DMA\n", |
2099 | ap->id, dev->devno); | 2100 | ap->id, dev->devno); |
@@ -2131,7 +2132,7 @@ static const char * ata_dma_blacklist [] = { | |||
2131 | "_NEC DV5800A", | 2132 | "_NEC DV5800A", |
2132 | }; | 2133 | }; |
2133 | 2134 | ||
2134 | static int ata_dma_blacklisted(struct ata_port *ap, struct ata_device *dev) | 2135 | static int ata_dma_blacklisted(const struct ata_device *dev) |
2135 | { | 2136 | { |
2136 | unsigned char model_num[40]; | 2137 | unsigned char model_num[40]; |
2137 | char *s; | 2138 | char *s; |
@@ -2156,9 +2157,9 @@ static int ata_dma_blacklisted(struct ata_port *ap, struct ata_device *dev) | |||
2156 | return 0; | 2157 | return 0; |
2157 | } | 2158 | } |
2158 | 2159 | ||
2159 | static unsigned int ata_get_mode_mask(struct ata_port *ap, int shift) | 2160 | static unsigned int ata_get_mode_mask(const struct ata_port *ap, int shift) |
2160 | { | 2161 | { |
2161 | struct ata_device *master, *slave; | 2162 | const struct ata_device *master, *slave; |
2162 | unsigned int mask; | 2163 | unsigned int mask; |
2163 | 2164 | ||
2164 | master = &ap->device[0]; | 2165 | master = &ap->device[0]; |
@@ -2170,14 +2171,14 @@ static unsigned int ata_get_mode_mask(struct ata_port *ap, int shift) | |||
2170 | mask = ap->udma_mask; | 2171 | mask = ap->udma_mask; |
2171 | if (ata_dev_present(master)) { | 2172 | if (ata_dev_present(master)) { |
2172 | mask &= (master->id[ATA_ID_UDMA_MODES] & 0xff); | 2173 | mask &= (master->id[ATA_ID_UDMA_MODES] & 0xff); |
2173 | if (ata_dma_blacklisted(ap, master)) { | 2174 | if (ata_dma_blacklisted(master)) { |
2174 | mask = 0; | 2175 | mask = 0; |
2175 | ata_pr_blacklisted(ap, master); | 2176 | ata_pr_blacklisted(ap, master); |
2176 | } | 2177 | } |
2177 | } | 2178 | } |
2178 | if (ata_dev_present(slave)) { | 2179 | if (ata_dev_present(slave)) { |
2179 | mask &= (slave->id[ATA_ID_UDMA_MODES] & 0xff); | 2180 | mask &= (slave->id[ATA_ID_UDMA_MODES] & 0xff); |
2180 | if (ata_dma_blacklisted(ap, slave)) { | 2181 | if (ata_dma_blacklisted(slave)) { |
2181 | mask = 0; | 2182 | mask = 0; |
2182 | ata_pr_blacklisted(ap, slave); | 2183 | ata_pr_blacklisted(ap, slave); |
2183 | } | 2184 | } |
@@ -2187,14 +2188,14 @@ static unsigned int ata_get_mode_mask(struct ata_port *ap, int shift) | |||
2187 | mask = ap->mwdma_mask; | 2188 | mask = ap->mwdma_mask; |
2188 | if (ata_dev_present(master)) { | 2189 | if (ata_dev_present(master)) { |
2189 | mask &= (master->id[ATA_ID_MWDMA_MODES] & 0x07); | 2190 | mask &= (master->id[ATA_ID_MWDMA_MODES] & 0x07); |
2190 | if (ata_dma_blacklisted(ap, master)) { | 2191 | if (ata_dma_blacklisted(master)) { |
2191 | mask = 0; | 2192 | mask = 0; |
2192 | ata_pr_blacklisted(ap, master); | 2193 | ata_pr_blacklisted(ap, master); |
2193 | } | 2194 | } |
2194 | } | 2195 | } |
2195 | if (ata_dev_present(slave)) { | 2196 | if (ata_dev_present(slave)) { |
2196 | mask &= (slave->id[ATA_ID_MWDMA_MODES] & 0x07); | 2197 | mask &= (slave->id[ATA_ID_MWDMA_MODES] & 0x07); |
2197 | if (ata_dma_blacklisted(ap, slave)) { | 2198 | if (ata_dma_blacklisted(slave)) { |
2198 | mask = 0; | 2199 | mask = 0; |
2199 | ata_pr_blacklisted(ap, slave); | 2200 | ata_pr_blacklisted(ap, slave); |
2200 | } | 2201 | } |
@@ -2258,7 +2259,7 @@ static int fgb(u32 bitmap) | |||
2258 | * Zero on success, negative on error. | 2259 | * Zero on success, negative on error. |
2259 | */ | 2260 | */ |
2260 | 2261 | ||
2261 | static int ata_choose_xfer_mode(struct ata_port *ap, | 2262 | static int ata_choose_xfer_mode(const struct ata_port *ap, |
2262 | u8 *xfer_mode_out, | 2263 | u8 *xfer_mode_out, |
2263 | unsigned int *xfer_shift_out) | 2264 | unsigned int *xfer_shift_out) |
2264 | { | 2265 | { |
@@ -4144,7 +4145,7 @@ static void ata_host_remove(struct ata_port *ap, unsigned int do_unregister) | |||
4144 | 4145 | ||
4145 | static void ata_host_init(struct ata_port *ap, struct Scsi_Host *host, | 4146 | static void ata_host_init(struct ata_port *ap, struct Scsi_Host *host, |
4146 | struct ata_host_set *host_set, | 4147 | struct ata_host_set *host_set, |
4147 | struct ata_probe_ent *ent, unsigned int port_no) | 4148 | const struct ata_probe_ent *ent, unsigned int port_no) |
4148 | { | 4149 | { |
4149 | unsigned int i; | 4150 | unsigned int i; |
4150 | 4151 | ||
@@ -4203,7 +4204,7 @@ static void ata_host_init(struct ata_port *ap, struct Scsi_Host *host, | |||
4203 | * | 4204 | * |
4204 | */ | 4205 | */ |
4205 | 4206 | ||
4206 | static struct ata_port * ata_host_add(struct ata_probe_ent *ent, | 4207 | static struct ata_port * ata_host_add(const struct ata_probe_ent *ent, |
4207 | struct ata_host_set *host_set, | 4208 | struct ata_host_set *host_set, |
4208 | unsigned int port_no) | 4209 | unsigned int port_no) |
4209 | { | 4210 | { |
@@ -4251,7 +4252,7 @@ err_out: | |||
4251 | * | 4252 | * |
4252 | */ | 4253 | */ |
4253 | 4254 | ||
4254 | int ata_device_add(struct ata_probe_ent *ent) | 4255 | int ata_device_add(const struct ata_probe_ent *ent) |
4255 | { | 4256 | { |
4256 | unsigned int count = 0, i; | 4257 | unsigned int count = 0, i; |
4257 | struct device *dev = ent->dev; | 4258 | struct device *dev = ent->dev; |
@@ -4470,7 +4471,7 @@ void ata_std_ports(struct ata_ioports *ioaddr) | |||
4470 | } | 4471 | } |
4471 | 4472 | ||
4472 | static struct ata_probe_ent * | 4473 | static struct ata_probe_ent * |
4473 | ata_probe_ent_alloc(struct device *dev, struct ata_port_info *port) | 4474 | ata_probe_ent_alloc(struct device *dev, const struct ata_port_info *port) |
4474 | { | 4475 | { |
4475 | struct ata_probe_ent *probe_ent; | 4476 | struct ata_probe_ent *probe_ent; |
4476 | 4477 | ||
@@ -4570,7 +4571,6 @@ static struct ata_probe_ent *ata_pci_init_legacy_port(struct pci_dev *pdev, stru | |||
4570 | if (!probe_ent) | 4571 | if (!probe_ent) |
4571 | return NULL; | 4572 | return NULL; |
4572 | 4573 | ||
4573 | |||
4574 | probe_ent->legacy_mode = 1; | 4574 | probe_ent->legacy_mode = 1; |
4575 | probe_ent->n_ports = 1; | 4575 | probe_ent->n_ports = 1; |
4576 | probe_ent->hard_port_no = port_num; | 4576 | probe_ent->hard_port_no = port_num; |
@@ -4783,7 +4783,7 @@ void ata_pci_remove_one (struct pci_dev *pdev) | |||
4783 | } | 4783 | } |
4784 | 4784 | ||
4785 | /* move to PCI subsystem */ | 4785 | /* move to PCI subsystem */ |
4786 | int pci_test_config_bits(struct pci_dev *pdev, struct pci_bits *bits) | 4786 | int pci_test_config_bits(struct pci_dev *pdev, const struct pci_bits *bits) |
4787 | { | 4787 | { |
4788 | unsigned long tmp = 0; | 4788 | unsigned long tmp = 0; |
4789 | 4789 | ||
diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c index 90bf22204668..58858886d751 100644 --- a/drivers/scsi/libata-scsi.c +++ b/drivers/scsi/libata-scsi.c | |||
@@ -44,9 +44,9 @@ | |||
44 | 44 | ||
45 | #include "libata.h" | 45 | #include "libata.h" |
46 | 46 | ||
47 | typedef unsigned int (*ata_xlat_func_t)(struct ata_queued_cmd *qc, u8 *scsicmd); | 47 | typedef unsigned int (*ata_xlat_func_t)(struct ata_queued_cmd *qc, const u8 *scsicmd); |
48 | static struct ata_device * | 48 | static struct ata_device * |
49 | ata_scsi_find_dev(struct ata_port *ap, struct scsi_device *scsidev); | 49 | ata_scsi_find_dev(struct ata_port *ap, const struct scsi_device *scsidev); |
50 | 50 | ||
51 | 51 | ||
52 | static void ata_scsi_invalid_field(struct scsi_cmnd *cmd, | 52 | static void ata_scsi_invalid_field(struct scsi_cmnd *cmd, |
@@ -418,7 +418,7 @@ int ata_scsi_error(struct Scsi_Host *host) | |||
418 | */ | 418 | */ |
419 | 419 | ||
420 | static unsigned int ata_scsi_start_stop_xlat(struct ata_queued_cmd *qc, | 420 | static unsigned int ata_scsi_start_stop_xlat(struct ata_queued_cmd *qc, |
421 | u8 *scsicmd) | 421 | const u8 *scsicmd) |
422 | { | 422 | { |
423 | struct ata_taskfile *tf = &qc->tf; | 423 | struct ata_taskfile *tf = &qc->tf; |
424 | 424 | ||
@@ -485,7 +485,7 @@ invalid_fld: | |||
485 | * Zero on success, non-zero on error. | 485 | * Zero on success, non-zero on error. |
486 | */ | 486 | */ |
487 | 487 | ||
488 | static unsigned int ata_scsi_flush_xlat(struct ata_queued_cmd *qc, u8 *scsicmd) | 488 | static unsigned int ata_scsi_flush_xlat(struct ata_queued_cmd *qc, const u8 *scsicmd) |
489 | { | 489 | { |
490 | struct ata_taskfile *tf = &qc->tf; | 490 | struct ata_taskfile *tf = &qc->tf; |
491 | 491 | ||
@@ -512,7 +512,7 @@ static unsigned int ata_scsi_flush_xlat(struct ata_queued_cmd *qc, u8 *scsicmd) | |||
512 | * @plen: the transfer length | 512 | * @plen: the transfer length |
513 | */ | 513 | */ |
514 | 514 | ||
515 | static void scsi_6_lba_len(u8 *scsicmd, u64 *plba, u32 *plen) | 515 | static void scsi_6_lba_len(const u8 *scsicmd, u64 *plba, u32 *plen) |
516 | { | 516 | { |
517 | u64 lba = 0; | 517 | u64 lba = 0; |
518 | u32 len = 0; | 518 | u32 len = 0; |
@@ -539,7 +539,7 @@ static void scsi_6_lba_len(u8 *scsicmd, u64 *plba, u32 *plen) | |||
539 | * @plen: the transfer length | 539 | * @plen: the transfer length |
540 | */ | 540 | */ |
541 | 541 | ||
542 | static void scsi_10_lba_len(u8 *scsicmd, u64 *plba, u32 *plen) | 542 | static void scsi_10_lba_len(const u8 *scsicmd, u64 *plba, u32 *plen) |
543 | { | 543 | { |
544 | u64 lba = 0; | 544 | u64 lba = 0; |
545 | u32 len = 0; | 545 | u32 len = 0; |
@@ -569,7 +569,7 @@ static void scsi_10_lba_len(u8 *scsicmd, u64 *plba, u32 *plen) | |||
569 | * @plen: the transfer length | 569 | * @plen: the transfer length |
570 | */ | 570 | */ |
571 | 571 | ||
572 | static void scsi_16_lba_len(u8 *scsicmd, u64 *plba, u32 *plen) | 572 | static void scsi_16_lba_len(const u8 *scsicmd, u64 *plba, u32 *plen) |
573 | { | 573 | { |
574 | u64 lba = 0; | 574 | u64 lba = 0; |
575 | u32 len = 0; | 575 | u32 len = 0; |
@@ -608,7 +608,7 @@ static void scsi_16_lba_len(u8 *scsicmd, u64 *plba, u32 *plen) | |||
608 | * Zero on success, non-zero on error. | 608 | * Zero on success, non-zero on error. |
609 | */ | 609 | */ |
610 | 610 | ||
611 | static unsigned int ata_scsi_verify_xlat(struct ata_queued_cmd *qc, u8 *scsicmd) | 611 | static unsigned int ata_scsi_verify_xlat(struct ata_queued_cmd *qc, const u8 *scsicmd) |
612 | { | 612 | { |
613 | struct ata_taskfile *tf = &qc->tf; | 613 | struct ata_taskfile *tf = &qc->tf; |
614 | struct ata_device *dev = qc->dev; | 614 | struct ata_device *dev = qc->dev; |
@@ -734,7 +734,7 @@ nothing_to_do: | |||
734 | * Zero on success, non-zero on error. | 734 | * Zero on success, non-zero on error. |
735 | */ | 735 | */ |
736 | 736 | ||
737 | static unsigned int ata_scsi_rw_xlat(struct ata_queued_cmd *qc, u8 *scsicmd) | 737 | static unsigned int ata_scsi_rw_xlat(struct ata_queued_cmd *qc, const u8 *scsicmd) |
738 | { | 738 | { |
739 | struct ata_taskfile *tf = &qc->tf; | 739 | struct ata_taskfile *tf = &qc->tf; |
740 | struct ata_device *dev = qc->dev; | 740 | struct ata_device *dev = qc->dev; |
@@ -1688,7 +1688,7 @@ static int atapi_qc_complete(struct ata_queued_cmd *qc, u8 drv_stat) | |||
1688 | * Zero on success, non-zero on failure. | 1688 | * Zero on success, non-zero on failure. |
1689 | */ | 1689 | */ |
1690 | 1690 | ||
1691 | static unsigned int atapi_xlat(struct ata_queued_cmd *qc, u8 *scsicmd) | 1691 | static unsigned int atapi_xlat(struct ata_queued_cmd *qc, const u8 *scsicmd) |
1692 | { | 1692 | { |
1693 | struct scsi_cmnd *cmd = qc->scsicmd; | 1693 | struct scsi_cmnd *cmd = qc->scsicmd; |
1694 | struct ata_device *dev = qc->dev; | 1694 | struct ata_device *dev = qc->dev; |
@@ -1757,7 +1757,7 @@ static unsigned int atapi_xlat(struct ata_queued_cmd *qc, u8 *scsicmd) | |||
1757 | */ | 1757 | */ |
1758 | 1758 | ||
1759 | static struct ata_device * | 1759 | static struct ata_device * |
1760 | ata_scsi_find_dev(struct ata_port *ap, struct scsi_device *scsidev) | 1760 | ata_scsi_find_dev(struct ata_port *ap, const struct scsi_device *scsidev) |
1761 | { | 1761 | { |
1762 | struct ata_device *dev; | 1762 | struct ata_device *dev; |
1763 | 1763 | ||
@@ -1914,7 +1914,7 @@ void ata_scsi_simulate(u16 *id, | |||
1914 | void (*done)(struct scsi_cmnd *)) | 1914 | void (*done)(struct scsi_cmnd *)) |
1915 | { | 1915 | { |
1916 | struct ata_scsi_args args; | 1916 | struct ata_scsi_args args; |
1917 | u8 *scsicmd = cmd->cmnd; | 1917 | const u8 *scsicmd = cmd->cmnd; |
1918 | 1918 | ||
1919 | args.id = id; | 1919 | args.id = id; |
1920 | args.cmd = cmd; | 1920 | args.cmd = cmd; |
diff --git a/drivers/scsi/libata.h b/drivers/scsi/libata.h index 67d752ca8ae2..3d60190584ba 100644 --- a/drivers/scsi/libata.h +++ b/drivers/scsi/libata.h | |||
@@ -48,7 +48,7 @@ extern int ata_qc_issue(struct ata_queued_cmd *qc); | |||
48 | extern int ata_check_atapi_dma(struct ata_queued_cmd *qc); | 48 | extern int ata_check_atapi_dma(struct ata_queued_cmd *qc); |
49 | extern void ata_dev_select(struct ata_port *ap, unsigned int device, | 49 | extern void ata_dev_select(struct ata_port *ap, unsigned int device, |
50 | unsigned int wait, unsigned int can_sleep); | 50 | unsigned int wait, unsigned int can_sleep); |
51 | extern void ata_tf_to_host_nolock(struct ata_port *ap, struct ata_taskfile *tf); | 51 | extern void ata_tf_to_host_nolock(struct ata_port *ap, const struct ata_taskfile *tf); |
52 | extern void swap_buf_le16(u16 *buf, unsigned int buf_words); | 52 | extern void swap_buf_le16(u16 *buf, unsigned int buf_words); |
53 | 53 | ||
54 | 54 | ||
diff --git a/drivers/scsi/pdc_adma.c b/drivers/scsi/pdc_adma.c index 53b8db4be1a9..9820f272f889 100644 --- a/drivers/scsi/pdc_adma.c +++ b/drivers/scsi/pdc_adma.c | |||
@@ -158,7 +158,7 @@ static Scsi_Host_Template adma_ata_sht = { | |||
158 | .bios_param = ata_std_bios_param, | 158 | .bios_param = ata_std_bios_param, |
159 | }; | 159 | }; |
160 | 160 | ||
161 | static struct ata_port_operations adma_ata_ops = { | 161 | static const struct ata_port_operations adma_ata_ops = { |
162 | .port_disable = ata_port_disable, | 162 | .port_disable = ata_port_disable, |
163 | .tf_load = ata_tf_load, | 163 | .tf_load = ata_tf_load, |
164 | .tf_read = ata_tf_read, | 164 | .tf_read = ata_tf_read, |
diff --git a/drivers/scsi/sata_mv.c b/drivers/scsi/sata_mv.c index 9b6213928f7a..422e0b6f603a 100644 --- a/drivers/scsi/sata_mv.c +++ b/drivers/scsi/sata_mv.c | |||
@@ -290,7 +290,7 @@ static Scsi_Host_Template mv_sht = { | |||
290 | .ordered_flush = 1, | 290 | .ordered_flush = 1, |
291 | }; | 291 | }; |
292 | 292 | ||
293 | static struct ata_port_operations mv_ops = { | 293 | static const struct ata_port_operations mv_ops = { |
294 | .port_disable = ata_port_disable, | 294 | .port_disable = ata_port_disable, |
295 | 295 | ||
296 | .tf_load = ata_tf_load, | 296 | .tf_load = ata_tf_load, |
diff --git a/drivers/scsi/sata_nv.c b/drivers/scsi/sata_nv.c index 8866530bc491..1a56d6c79ddd 100644 --- a/drivers/scsi/sata_nv.c +++ b/drivers/scsi/sata_nv.c | |||
@@ -238,7 +238,7 @@ static Scsi_Host_Template nv_sht = { | |||
238 | .ordered_flush = 1, | 238 | .ordered_flush = 1, |
239 | }; | 239 | }; |
240 | 240 | ||
241 | static struct ata_port_operations nv_ops = { | 241 | static const struct ata_port_operations nv_ops = { |
242 | .port_disable = ata_port_disable, | 242 | .port_disable = ata_port_disable, |
243 | .tf_load = ata_tf_load, | 243 | .tf_load = ata_tf_load, |
244 | .tf_read = ata_tf_read, | 244 | .tf_read = ata_tf_read, |
diff --git a/drivers/scsi/sata_promise.c b/drivers/scsi/sata_promise.c index 9bf8cbd29901..eee93b0016df 100644 --- a/drivers/scsi/sata_promise.c +++ b/drivers/scsi/sata_promise.c | |||
@@ -87,8 +87,8 @@ static void pdc_port_stop(struct ata_port *ap); | |||
87 | static void pdc_pata_phy_reset(struct ata_port *ap); | 87 | static void pdc_pata_phy_reset(struct ata_port *ap); |
88 | static void pdc_sata_phy_reset(struct ata_port *ap); | 88 | static void pdc_sata_phy_reset(struct ata_port *ap); |
89 | static void pdc_qc_prep(struct ata_queued_cmd *qc); | 89 | static void pdc_qc_prep(struct ata_queued_cmd *qc); |
90 | static void pdc_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf); | 90 | static void pdc_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf); |
91 | static void pdc_exec_command_mmio(struct ata_port *ap, struct ata_taskfile *tf); | 91 | static void pdc_exec_command_mmio(struct ata_port *ap, const struct ata_taskfile *tf); |
92 | static void pdc_irq_clear(struct ata_port *ap); | 92 | static void pdc_irq_clear(struct ata_port *ap); |
93 | static int pdc_qc_issue_prot(struct ata_queued_cmd *qc); | 93 | static int pdc_qc_issue_prot(struct ata_queued_cmd *qc); |
94 | 94 | ||
@@ -113,7 +113,7 @@ static Scsi_Host_Template pdc_ata_sht = { | |||
113 | .ordered_flush = 1, | 113 | .ordered_flush = 1, |
114 | }; | 114 | }; |
115 | 115 | ||
116 | static struct ata_port_operations pdc_sata_ops = { | 116 | static const struct ata_port_operations pdc_sata_ops = { |
117 | .port_disable = ata_port_disable, | 117 | .port_disable = ata_port_disable, |
118 | .tf_load = pdc_tf_load_mmio, | 118 | .tf_load = pdc_tf_load_mmio, |
119 | .tf_read = ata_tf_read, | 119 | .tf_read = ata_tf_read, |
@@ -136,7 +136,7 @@ static struct ata_port_operations pdc_sata_ops = { | |||
136 | .host_stop = ata_pci_host_stop, | 136 | .host_stop = ata_pci_host_stop, |
137 | }; | 137 | }; |
138 | 138 | ||
139 | static struct ata_port_operations pdc_pata_ops = { | 139 | static const struct ata_port_operations pdc_pata_ops = { |
140 | .port_disable = ata_port_disable, | 140 | .port_disable = ata_port_disable, |
141 | .tf_load = pdc_tf_load_mmio, | 141 | .tf_load = pdc_tf_load_mmio, |
142 | .tf_read = ata_tf_read, | 142 | .tf_read = ata_tf_read, |
@@ -546,7 +546,7 @@ static int pdc_qc_issue_prot(struct ata_queued_cmd *qc) | |||
546 | return ata_qc_issue_prot(qc); | 546 | return ata_qc_issue_prot(qc); |
547 | } | 547 | } |
548 | 548 | ||
549 | static void pdc_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf) | 549 | static void pdc_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf) |
550 | { | 550 | { |
551 | WARN_ON (tf->protocol == ATA_PROT_DMA || | 551 | WARN_ON (tf->protocol == ATA_PROT_DMA || |
552 | tf->protocol == ATA_PROT_NODATA); | 552 | tf->protocol == ATA_PROT_NODATA); |
@@ -554,7 +554,7 @@ static void pdc_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf) | |||
554 | } | 554 | } |
555 | 555 | ||
556 | 556 | ||
557 | static void pdc_exec_command_mmio(struct ata_port *ap, struct ata_taskfile *tf) | 557 | static void pdc_exec_command_mmio(struct ata_port *ap, const struct ata_taskfile *tf) |
558 | { | 558 | { |
559 | WARN_ON (tf->protocol == ATA_PROT_DMA || | 559 | WARN_ON (tf->protocol == ATA_PROT_DMA || |
560 | tf->protocol == ATA_PROT_NODATA); | 560 | tf->protocol == ATA_PROT_NODATA); |
diff --git a/drivers/scsi/sata_qstor.c b/drivers/scsi/sata_qstor.c index e1c1dae27c52..250dafa6bc36 100644 --- a/drivers/scsi/sata_qstor.c +++ b/drivers/scsi/sata_qstor.c | |||
@@ -147,7 +147,7 @@ static Scsi_Host_Template qs_ata_sht = { | |||
147 | .bios_param = ata_std_bios_param, | 147 | .bios_param = ata_std_bios_param, |
148 | }; | 148 | }; |
149 | 149 | ||
150 | static struct ata_port_operations qs_ata_ops = { | 150 | static const struct ata_port_operations qs_ata_ops = { |
151 | .port_disable = ata_port_disable, | 151 | .port_disable = ata_port_disable, |
152 | .tf_load = ata_tf_load, | 152 | .tf_load = ata_tf_load, |
153 | .tf_read = ata_tf_read, | 153 | .tf_read = ata_tf_read, |
diff --git a/drivers/scsi/sata_sil.c b/drivers/scsi/sata_sil.c index f6f0184e1ac8..3a056173fb95 100644 --- a/drivers/scsi/sata_sil.c +++ b/drivers/scsi/sata_sil.c | |||
@@ -150,7 +150,7 @@ static Scsi_Host_Template sil_sht = { | |||
150 | .ordered_flush = 1, | 150 | .ordered_flush = 1, |
151 | }; | 151 | }; |
152 | 152 | ||
153 | static struct ata_port_operations sil_ops = { | 153 | static const struct ata_port_operations sil_ops = { |
154 | .port_disable = ata_port_disable, | 154 | .port_disable = ata_port_disable, |
155 | .dev_config = sil_dev_config, | 155 | .dev_config = sil_dev_config, |
156 | .tf_load = ata_tf_load, | 156 | .tf_load = ata_tf_load, |
diff --git a/drivers/scsi/sata_sil24.c b/drivers/scsi/sata_sil24.c index 19857814d69f..32d730bd5bb6 100644 --- a/drivers/scsi/sata_sil24.c +++ b/drivers/scsi/sata_sil24.c | |||
@@ -275,7 +275,7 @@ static Scsi_Host_Template sil24_sht = { | |||
275 | .ordered_flush = 1, /* NCQ not supported yet */ | 275 | .ordered_flush = 1, /* NCQ not supported yet */ |
276 | }; | 276 | }; |
277 | 277 | ||
278 | static struct ata_port_operations sil24_ops = { | 278 | static const struct ata_port_operations sil24_ops = { |
279 | .port_disable = ata_port_disable, | 279 | .port_disable = ata_port_disable, |
280 | 280 | ||
281 | .check_status = sil24_check_status, | 281 | .check_status = sil24_check_status, |
diff --git a/drivers/scsi/sata_sis.c b/drivers/scsi/sata_sis.c index 0761a3234fcf..057f7b98b6c4 100644 --- a/drivers/scsi/sata_sis.c +++ b/drivers/scsi/sata_sis.c | |||
@@ -102,7 +102,7 @@ static Scsi_Host_Template sis_sht = { | |||
102 | .ordered_flush = 1, | 102 | .ordered_flush = 1, |
103 | }; | 103 | }; |
104 | 104 | ||
105 | static struct ata_port_operations sis_ops = { | 105 | static const struct ata_port_operations sis_ops = { |
106 | .port_disable = ata_port_disable, | 106 | .port_disable = ata_port_disable, |
107 | .tf_load = ata_tf_load, | 107 | .tf_load = ata_tf_load, |
108 | .tf_read = ata_tf_read, | 108 | .tf_read = ata_tf_read, |
diff --git a/drivers/scsi/sata_svw.c b/drivers/scsi/sata_svw.c index d89d968bedac..e0f9570bc6dd 100644 --- a/drivers/scsi/sata_svw.c +++ b/drivers/scsi/sata_svw.c | |||
@@ -102,7 +102,7 @@ static void k2_sata_scr_write (struct ata_port *ap, unsigned int sc_reg, | |||
102 | } | 102 | } |
103 | 103 | ||
104 | 104 | ||
105 | static void k2_sata_tf_load(struct ata_port *ap, struct ata_taskfile *tf) | 105 | static void k2_sata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf) |
106 | { | 106 | { |
107 | struct ata_ioports *ioaddr = &ap->ioaddr; | 107 | struct ata_ioports *ioaddr = &ap->ioaddr; |
108 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; | 108 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; |
@@ -297,7 +297,7 @@ static Scsi_Host_Template k2_sata_sht = { | |||
297 | }; | 297 | }; |
298 | 298 | ||
299 | 299 | ||
300 | static struct ata_port_operations k2_sata_ops = { | 300 | static const struct ata_port_operations k2_sata_ops = { |
301 | .port_disable = ata_port_disable, | 301 | .port_disable = ata_port_disable, |
302 | .tf_load = k2_sata_tf_load, | 302 | .tf_load = k2_sata_tf_load, |
303 | .tf_read = k2_sata_tf_read, | 303 | .tf_read = k2_sata_tf_read, |
diff --git a/drivers/scsi/sata_sx4.c b/drivers/scsi/sata_sx4.c index d6d350a0b5e9..af08f4f650c1 100644 --- a/drivers/scsi/sata_sx4.c +++ b/drivers/scsi/sata_sx4.c | |||
@@ -157,8 +157,8 @@ static void pdc_20621_phy_reset (struct ata_port *ap); | |||
157 | static int pdc_port_start(struct ata_port *ap); | 157 | static int pdc_port_start(struct ata_port *ap); |
158 | static void pdc_port_stop(struct ata_port *ap); | 158 | static void pdc_port_stop(struct ata_port *ap); |
159 | static void pdc20621_qc_prep(struct ata_queued_cmd *qc); | 159 | static void pdc20621_qc_prep(struct ata_queued_cmd *qc); |
160 | static void pdc_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf); | 160 | static void pdc_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf); |
161 | static void pdc_exec_command_mmio(struct ata_port *ap, struct ata_taskfile *tf); | 161 | static void pdc_exec_command_mmio(struct ata_port *ap, const struct ata_taskfile *tf); |
162 | static void pdc20621_host_stop(struct ata_host_set *host_set); | 162 | static void pdc20621_host_stop(struct ata_host_set *host_set); |
163 | static unsigned int pdc20621_dimm_init(struct ata_probe_ent *pe); | 163 | static unsigned int pdc20621_dimm_init(struct ata_probe_ent *pe); |
164 | static int pdc20621_detect_dimm(struct ata_probe_ent *pe); | 164 | static int pdc20621_detect_dimm(struct ata_probe_ent *pe); |
@@ -196,7 +196,7 @@ static Scsi_Host_Template pdc_sata_sht = { | |||
196 | .ordered_flush = 1, | 196 | .ordered_flush = 1, |
197 | }; | 197 | }; |
198 | 198 | ||
199 | static struct ata_port_operations pdc_20621_ops = { | 199 | static const struct ata_port_operations pdc_20621_ops = { |
200 | .port_disable = ata_port_disable, | 200 | .port_disable = ata_port_disable, |
201 | .tf_load = pdc_tf_load_mmio, | 201 | .tf_load = pdc_tf_load_mmio, |
202 | .tf_read = ata_tf_read, | 202 | .tf_read = ata_tf_read, |
@@ -899,7 +899,7 @@ out: | |||
899 | DPRINTK("EXIT\n"); | 899 | DPRINTK("EXIT\n"); |
900 | } | 900 | } |
901 | 901 | ||
902 | static void pdc_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf) | 902 | static void pdc_tf_load_mmio(struct ata_port *ap, const struct ata_taskfile *tf) |
903 | { | 903 | { |
904 | WARN_ON (tf->protocol == ATA_PROT_DMA || | 904 | WARN_ON (tf->protocol == ATA_PROT_DMA || |
905 | tf->protocol == ATA_PROT_NODATA); | 905 | tf->protocol == ATA_PROT_NODATA); |
@@ -907,7 +907,7 @@ static void pdc_tf_load_mmio(struct ata_port *ap, struct ata_taskfile *tf) | |||
907 | } | 907 | } |
908 | 908 | ||
909 | 909 | ||
910 | static void pdc_exec_command_mmio(struct ata_port *ap, struct ata_taskfile *tf) | 910 | static void pdc_exec_command_mmio(struct ata_port *ap, const struct ata_taskfile *tf) |
911 | { | 911 | { |
912 | WARN_ON (tf->protocol == ATA_PROT_DMA || | 912 | WARN_ON (tf->protocol == ATA_PROT_DMA || |
913 | tf->protocol == ATA_PROT_NODATA); | 913 | tf->protocol == ATA_PROT_NODATA); |
diff --git a/drivers/scsi/sata_uli.c b/drivers/scsi/sata_uli.c index 9c06f2abe7f7..d68dc7d3422c 100644 --- a/drivers/scsi/sata_uli.c +++ b/drivers/scsi/sata_uli.c | |||
@@ -90,7 +90,7 @@ static Scsi_Host_Template uli_sht = { | |||
90 | .ordered_flush = 1, | 90 | .ordered_flush = 1, |
91 | }; | 91 | }; |
92 | 92 | ||
93 | static struct ata_port_operations uli_ops = { | 93 | static const struct ata_port_operations uli_ops = { |
94 | .port_disable = ata_port_disable, | 94 | .port_disable = ata_port_disable, |
95 | 95 | ||
96 | .tf_load = ata_tf_load, | 96 | .tf_load = ata_tf_load, |
diff --git a/drivers/scsi/sata_via.c b/drivers/scsi/sata_via.c index 565872479b9a..80e291a909a9 100644 --- a/drivers/scsi/sata_via.c +++ b/drivers/scsi/sata_via.c | |||
@@ -109,7 +109,7 @@ static Scsi_Host_Template svia_sht = { | |||
109 | .ordered_flush = 1, | 109 | .ordered_flush = 1, |
110 | }; | 110 | }; |
111 | 111 | ||
112 | static struct ata_port_operations svia_sata_ops = { | 112 | static const struct ata_port_operations svia_sata_ops = { |
113 | .port_disable = ata_port_disable, | 113 | .port_disable = ata_port_disable, |
114 | 114 | ||
115 | .tf_load = ata_tf_load, | 115 | .tf_load = ata_tf_load, |
diff --git a/drivers/scsi/sata_vsc.c b/drivers/scsi/sata_vsc.c index 877b9fda3965..5af05fdf8544 100644 --- a/drivers/scsi/sata_vsc.c +++ b/drivers/scsi/sata_vsc.c | |||
@@ -115,7 +115,7 @@ static void vsc_intr_mask_update(struct ata_port *ap, u8 ctl) | |||
115 | } | 115 | } |
116 | 116 | ||
117 | 117 | ||
118 | static void vsc_sata_tf_load(struct ata_port *ap, struct ata_taskfile *tf) | 118 | static void vsc_sata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf) |
119 | { | 119 | { |
120 | struct ata_ioports *ioaddr = &ap->ioaddr; | 120 | struct ata_ioports *ioaddr = &ap->ioaddr; |
121 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; | 121 | unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; |
@@ -231,7 +231,7 @@ static Scsi_Host_Template vsc_sata_sht = { | |||
231 | }; | 231 | }; |
232 | 232 | ||
233 | 233 | ||
234 | static struct ata_port_operations vsc_sata_ops = { | 234 | static const struct ata_port_operations vsc_sata_ops = { |
235 | .port_disable = ata_port_disable, | 235 | .port_disable = ata_port_disable, |
236 | .tf_load = vsc_sata_tf_load, | 236 | .tf_load = vsc_sata_tf_load, |
237 | .tf_read = vsc_sata_tf_read, | 237 | .tf_read = vsc_sata_tf_read, |
diff --git a/include/linux/ata.h b/include/linux/ata.h index 33276d1d05d2..d2873b732bb1 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -261,7 +261,7 @@ struct ata_taskfile { | |||
261 | ((u64) (id)[(n) + 1] << 16) | \ | 261 | ((u64) (id)[(n) + 1] << 16) | \ |
262 | ((u64) (id)[(n) + 0]) ) | 262 | ((u64) (id)[(n) + 0]) ) |
263 | 263 | ||
264 | static inline int ata_id_current_chs_valid(u16 *id) | 264 | static inline int ata_id_current_chs_valid(const u16 *id) |
265 | { | 265 | { |
266 | /* For ATA-1 devices, if the INITIALIZE DEVICE PARAMETERS command | 266 | /* For ATA-1 devices, if the INITIALIZE DEVICE PARAMETERS command |
267 | has not been issued to the device then the values of | 267 | has not been issued to the device then the values of |
@@ -273,7 +273,7 @@ static inline int ata_id_current_chs_valid(u16 *id) | |||
273 | id[56]; /* sectors in current translation */ | 273 | id[56]; /* sectors in current translation */ |
274 | } | 274 | } |
275 | 275 | ||
276 | static inline int atapi_cdb_len(u16 *dev_id) | 276 | static inline int atapi_cdb_len(const u16 *dev_id) |
277 | { | 277 | { |
278 | u16 tmp = dev_id[0] & 0x3; | 278 | u16 tmp = dev_id[0] & 0x3; |
279 | switch (tmp) { | 279 | switch (tmp) { |
@@ -283,7 +283,7 @@ static inline int atapi_cdb_len(u16 *dev_id) | |||
283 | } | 283 | } |
284 | } | 284 | } |
285 | 285 | ||
286 | static inline int is_atapi_taskfile(struct ata_taskfile *tf) | 286 | static inline int is_atapi_taskfile(const struct ata_taskfile *tf) |
287 | { | 287 | { |
288 | return (tf->protocol == ATA_PROT_ATAPI) || | 288 | return (tf->protocol == ATA_PROT_ATAPI) || |
289 | (tf->protocol == ATA_PROT_ATAPI_NODATA) || | 289 | (tf->protocol == ATA_PROT_ATAPI_NODATA) || |
diff --git a/include/linux/libata.h b/include/linux/libata.h index 634b5aa0a615..00a8a5738858 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -202,7 +202,7 @@ struct ata_ioports { | |||
202 | struct ata_probe_ent { | 202 | struct ata_probe_ent { |
203 | struct list_head node; | 203 | struct list_head node; |
204 | struct device *dev; | 204 | struct device *dev; |
205 | struct ata_port_operations *port_ops; | 205 | const struct ata_port_operations *port_ops; |
206 | Scsi_Host_Template *sht; | 206 | Scsi_Host_Template *sht; |
207 | struct ata_ioports port[ATA_MAX_PORTS]; | 207 | struct ata_ioports port[ATA_MAX_PORTS]; |
208 | unsigned int n_ports; | 208 | unsigned int n_ports; |
@@ -225,7 +225,7 @@ struct ata_host_set { | |||
225 | void __iomem *mmio_base; | 225 | void __iomem *mmio_base; |
226 | unsigned int n_ports; | 226 | unsigned int n_ports; |
227 | void *private_data; | 227 | void *private_data; |
228 | struct ata_port_operations *ops; | 228 | const struct ata_port_operations *ops; |
229 | struct ata_port * ports[0]; | 229 | struct ata_port * ports[0]; |
230 | }; | 230 | }; |
231 | 231 | ||
@@ -294,7 +294,7 @@ struct ata_device { | |||
294 | 294 | ||
295 | struct ata_port { | 295 | struct ata_port { |
296 | struct Scsi_Host *host; /* our co-allocated scsi host */ | 296 | struct Scsi_Host *host; /* our co-allocated scsi host */ |
297 | struct ata_port_operations *ops; | 297 | const struct ata_port_operations *ops; |
298 | unsigned long flags; /* ATA_FLAG_xxx */ | 298 | unsigned long flags; /* ATA_FLAG_xxx */ |
299 | unsigned int id; /* unique id req'd by scsi midlyr */ | 299 | unsigned int id; /* unique id req'd by scsi midlyr */ |
300 | unsigned int port_no; /* unique port #; from zero */ | 300 | unsigned int port_no; /* unique port #; from zero */ |
@@ -341,10 +341,10 @@ struct ata_port_operations { | |||
341 | void (*set_piomode) (struct ata_port *, struct ata_device *); | 341 | void (*set_piomode) (struct ata_port *, struct ata_device *); |
342 | void (*set_dmamode) (struct ata_port *, struct ata_device *); | 342 | void (*set_dmamode) (struct ata_port *, struct ata_device *); |
343 | 343 | ||
344 | void (*tf_load) (struct ata_port *ap, struct ata_taskfile *tf); | 344 | void (*tf_load) (struct ata_port *ap, const struct ata_taskfile *tf); |
345 | void (*tf_read) (struct ata_port *ap, struct ata_taskfile *tf); | 345 | void (*tf_read) (struct ata_port *ap, struct ata_taskfile *tf); |
346 | 346 | ||
347 | void (*exec_command)(struct ata_port *ap, struct ata_taskfile *tf); | 347 | void (*exec_command)(struct ata_port *ap, const struct ata_taskfile *tf); |
348 | u8 (*check_status)(struct ata_port *ap); | 348 | u8 (*check_status)(struct ata_port *ap); |
349 | u8 (*check_altstatus)(struct ata_port *ap); | 349 | u8 (*check_altstatus)(struct ata_port *ap); |
350 | u8 (*check_err)(struct ata_port *ap); | 350 | u8 (*check_err)(struct ata_port *ap); |
@@ -385,7 +385,7 @@ struct ata_port_info { | |||
385 | unsigned long pio_mask; | 385 | unsigned long pio_mask; |
386 | unsigned long mwdma_mask; | 386 | unsigned long mwdma_mask; |
387 | unsigned long udma_mask; | 387 | unsigned long udma_mask; |
388 | struct ata_port_operations *port_ops; | 388 | const struct ata_port_operations *port_ops; |
389 | }; | 389 | }; |
390 | 390 | ||
391 | struct ata_timing { | 391 | struct ata_timing { |
@@ -413,7 +413,7 @@ extern int ata_pci_init_one (struct pci_dev *pdev, struct ata_port_info **port_i | |||
413 | unsigned int n_ports); | 413 | unsigned int n_ports); |
414 | extern void ata_pci_remove_one (struct pci_dev *pdev); | 414 | extern void ata_pci_remove_one (struct pci_dev *pdev); |
415 | #endif /* CONFIG_PCI */ | 415 | #endif /* CONFIG_PCI */ |
416 | extern int ata_device_add(struct ata_probe_ent *ent); | 416 | extern int ata_device_add(const struct ata_probe_ent *ent); |
417 | extern void ata_host_set_remove(struct ata_host_set *host_set); | 417 | extern void ata_host_set_remove(struct ata_host_set *host_set); |
418 | extern int ata_scsi_detect(Scsi_Host_Template *sht); | 418 | extern int ata_scsi_detect(Scsi_Host_Template *sht); |
419 | extern int ata_scsi_ioctl(struct scsi_device *dev, int cmd, void __user *arg); | 419 | extern int ata_scsi_ioctl(struct scsi_device *dev, int cmd, void __user *arg); |
@@ -426,16 +426,16 @@ extern int ata_ratelimit(void); | |||
426 | /* | 426 | /* |
427 | * Default driver ops implementations | 427 | * Default driver ops implementations |
428 | */ | 428 | */ |
429 | extern void ata_tf_load(struct ata_port *ap, struct ata_taskfile *tf); | 429 | extern void ata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf); |
430 | extern void ata_tf_read(struct ata_port *ap, struct ata_taskfile *tf); | 430 | extern void ata_tf_read(struct ata_port *ap, struct ata_taskfile *tf); |
431 | extern void ata_tf_to_fis(struct ata_taskfile *tf, u8 *fis, u8 pmp); | 431 | extern void ata_tf_to_fis(const struct ata_taskfile *tf, u8 *fis, u8 pmp); |
432 | extern void ata_tf_from_fis(u8 *fis, struct ata_taskfile *tf); | 432 | extern void ata_tf_from_fis(const u8 *fis, struct ata_taskfile *tf); |
433 | extern void ata_noop_dev_select (struct ata_port *ap, unsigned int device); | 433 | extern void ata_noop_dev_select (struct ata_port *ap, unsigned int device); |
434 | extern void ata_std_dev_select (struct ata_port *ap, unsigned int device); | 434 | extern void ata_std_dev_select (struct ata_port *ap, unsigned int device); |
435 | extern u8 ata_check_status(struct ata_port *ap); | 435 | extern u8 ata_check_status(struct ata_port *ap); |
436 | extern u8 ata_altstatus(struct ata_port *ap); | 436 | extern u8 ata_altstatus(struct ata_port *ap); |
437 | extern u8 ata_chk_err(struct ata_port *ap); | 437 | extern u8 ata_chk_err(struct ata_port *ap); |
438 | extern void ata_exec_command(struct ata_port *ap, struct ata_taskfile *tf); | 438 | extern void ata_exec_command(struct ata_port *ap, const struct ata_taskfile *tf); |
439 | extern int ata_port_start (struct ata_port *ap); | 439 | extern int ata_port_start (struct ata_port *ap); |
440 | extern void ata_port_stop (struct ata_port *ap); | 440 | extern void ata_port_stop (struct ata_port *ap); |
441 | extern void ata_host_stop (struct ata_host_set *host_set); | 441 | extern void ata_host_stop (struct ata_host_set *host_set); |
@@ -446,8 +446,8 @@ extern void ata_sg_init_one(struct ata_queued_cmd *qc, void *buf, | |||
446 | unsigned int buflen); | 446 | unsigned int buflen); |
447 | extern void ata_sg_init(struct ata_queued_cmd *qc, struct scatterlist *sg, | 447 | extern void ata_sg_init(struct ata_queued_cmd *qc, struct scatterlist *sg, |
448 | unsigned int n_elem); | 448 | unsigned int n_elem); |
449 | extern unsigned int ata_dev_classify(struct ata_taskfile *tf); | 449 | extern unsigned int ata_dev_classify(const struct ata_taskfile *tf); |
450 | extern void ata_dev_id_string(u16 *id, unsigned char *s, | 450 | extern void ata_dev_id_string(const u16 *id, unsigned char *s, |
451 | unsigned int ofs, unsigned int len); | 451 | unsigned int ofs, unsigned int len); |
452 | extern void ata_dev_config(struct ata_port *ap, unsigned int i); | 452 | extern void ata_dev_config(struct ata_port *ap, unsigned int i); |
453 | extern void ata_bmdma_setup (struct ata_queued_cmd *qc); | 453 | extern void ata_bmdma_setup (struct ata_queued_cmd *qc); |
@@ -502,7 +502,7 @@ struct pci_bits { | |||
502 | extern void ata_pci_host_stop (struct ata_host_set *host_set); | 502 | extern void ata_pci_host_stop (struct ata_host_set *host_set); |
503 | extern struct ata_probe_ent * | 503 | extern struct ata_probe_ent * |
504 | ata_pci_init_native_mode(struct pci_dev *pdev, struct ata_port_info **port, int portmask); | 504 | ata_pci_init_native_mode(struct pci_dev *pdev, struct ata_port_info **port, int portmask); |
505 | extern int pci_test_config_bits(struct pci_dev *pdev, struct pci_bits *bits); | 505 | extern int pci_test_config_bits(struct pci_dev *pdev, const struct pci_bits *bits); |
506 | 506 | ||
507 | #endif /* CONFIG_PCI */ | 507 | #endif /* CONFIG_PCI */ |
508 | 508 | ||
@@ -512,7 +512,7 @@ static inline unsigned int ata_tag_valid(unsigned int tag) | |||
512 | return (tag < ATA_MAX_QUEUE) ? 1 : 0; | 512 | return (tag < ATA_MAX_QUEUE) ? 1 : 0; |
513 | } | 513 | } |
514 | 514 | ||
515 | static inline unsigned int ata_dev_present(struct ata_device *dev) | 515 | static inline unsigned int ata_dev_present(const struct ata_device *dev) |
516 | { | 516 | { |
517 | return ((dev->class == ATA_DEV_ATA) || | 517 | return ((dev->class == ATA_DEV_ATA) || |
518 | (dev->class == ATA_DEV_ATAPI)); | 518 | (dev->class == ATA_DEV_ATAPI)); |
@@ -711,7 +711,7 @@ static inline unsigned int sata_dev_present(struct ata_port *ap) | |||
711 | return ((scr_read(ap, SCR_STATUS) & 0xf) == 0x3) ? 1 : 0; | 711 | return ((scr_read(ap, SCR_STATUS) & 0xf) == 0x3) ? 1 : 0; |
712 | } | 712 | } |
713 | 713 | ||
714 | static inline int ata_try_flush_cache(struct ata_device *dev) | 714 | static inline int ata_try_flush_cache(const struct ata_device *dev) |
715 | { | 715 | { |
716 | return ata_id_wcache_enabled(dev->id) || | 716 | return ata_id_wcache_enabled(dev->id) || |
717 | ata_id_has_flush(dev->id) || | 717 | ata_id_has_flush(dev->id) || |