aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2008-05-23 19:05:45 -0400
committerDavid Woodhouse <David.Woodhouse@intel.com>2008-07-10 09:26:15 -0400
commit0bc202e0fd84b8c8d042bdf9f0995e1e47bdbf59 (patch)
tree697225daea137152e1aa63bc3d46843438752dae
parent3b216d186c6df2642b397dbb67fbb7884ead0d88 (diff)
aic94xx: treat firmware data as const
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
-rw-r--r--drivers/scsi/aic94xx/aic94xx_sds.c12
-rw-r--r--drivers/scsi/aic94xx/aic94xx_sds.h4
-rw-r--r--drivers/scsi/aic94xx/aic94xx_seq.c7
3 files changed, 12 insertions, 11 deletions
diff --git a/drivers/scsi/aic94xx/aic94xx_sds.c b/drivers/scsi/aic94xx/aic94xx_sds.c
index 4446e3d584dc..8630a75b2872 100644
--- a/drivers/scsi/aic94xx/aic94xx_sds.c
+++ b/drivers/scsi/aic94xx/aic94xx_sds.c
@@ -1093,9 +1093,9 @@ out:
1093 * @bytes_to_verify: total bytes to verify 1093 * @bytes_to_verify: total bytes to verify
1094 */ 1094 */
1095int asd_verify_flash_seg(struct asd_ha_struct *asd_ha, 1095int asd_verify_flash_seg(struct asd_ha_struct *asd_ha,
1096 void *src, u32 dest_offset, u32 bytes_to_verify) 1096 const void *src, u32 dest_offset, u32 bytes_to_verify)
1097{ 1097{
1098 u8 *src_buf; 1098 const u8 *src_buf;
1099 u8 flash_char; 1099 u8 flash_char;
1100 int err; 1100 int err;
1101 u32 nv_offset, reg, i; 1101 u32 nv_offset, reg, i;
@@ -1105,7 +1105,7 @@ int asd_verify_flash_seg(struct asd_ha_struct *asd_ha,
1105 1105
1106 err = FLASH_OK; 1106 err = FLASH_OK;
1107 nv_offset = dest_offset; 1107 nv_offset = dest_offset;
1108 src_buf = (u8 *)src; 1108 src_buf = (const u8 *)src;
1109 for (i = 0; i < bytes_to_verify; i++) { 1109 for (i = 0; i < bytes_to_verify; i++) {
1110 flash_char = asd_read_reg_byte(asd_ha, reg + nv_offset + i); 1110 flash_char = asd_read_reg_byte(asd_ha, reg + nv_offset + i);
1111 if (flash_char != src_buf[i]) { 1111 if (flash_char != src_buf[i]) {
@@ -1124,9 +1124,9 @@ int asd_verify_flash_seg(struct asd_ha_struct *asd_ha,
1124 * @bytes_to_write: total bytes to write 1124 * @bytes_to_write: total bytes to write
1125 */ 1125 */
1126int asd_write_flash_seg(struct asd_ha_struct *asd_ha, 1126int asd_write_flash_seg(struct asd_ha_struct *asd_ha,
1127 void *src, u32 dest_offset, u32 bytes_to_write) 1127 const void *src, u32 dest_offset, u32 bytes_to_write)
1128{ 1128{
1129 u8 *src_buf; 1129 const u8 *src_buf;
1130 u32 nv_offset, reg, i; 1130 u32 nv_offset, reg, i;
1131 int err; 1131 int err;
1132 1132
@@ -1153,7 +1153,7 @@ int asd_write_flash_seg(struct asd_ha_struct *asd_ha,
1153 return err; 1153 return err;
1154 } 1154 }
1155 1155
1156 src_buf = (u8 *)src; 1156 src_buf = (const u8 *)src;
1157 for (i = 0; i < bytes_to_write; i++) { 1157 for (i = 0; i < bytes_to_write; i++) {
1158 /* Setup program command sequence */ 1158 /* Setup program command sequence */
1159 switch (asd_ha->hw_prof.flash.method) { 1159 switch (asd_ha->hw_prof.flash.method) {
diff --git a/drivers/scsi/aic94xx/aic94xx_sds.h b/drivers/scsi/aic94xx/aic94xx_sds.h
index bb9795a04dc3..a06dc0114b8c 100644
--- a/drivers/scsi/aic94xx/aic94xx_sds.h
+++ b/drivers/scsi/aic94xx/aic94xx_sds.h
@@ -110,9 +110,9 @@ struct bios_file_header {
110}; 110};
111 111
112int asd_verify_flash_seg(struct asd_ha_struct *asd_ha, 112int asd_verify_flash_seg(struct asd_ha_struct *asd_ha,
113 void *src, u32 dest_offset, u32 bytes_to_verify); 113 const void *src, u32 dest_offset, u32 bytes_to_verify);
114int asd_write_flash_seg(struct asd_ha_struct *asd_ha, 114int asd_write_flash_seg(struct asd_ha_struct *asd_ha,
115 void *src, u32 dest_offset, u32 bytes_to_write); 115 const void *src, u32 dest_offset, u32 bytes_to_write);
116int asd_chk_write_status(struct asd_ha_struct *asd_ha, 116int asd_chk_write_status(struct asd_ha_struct *asd_ha,
117 u32 sector_addr, u8 erase_flag); 117 u32 sector_addr, u8 erase_flag);
118int asd_check_flash_type(struct asd_ha_struct *asd_ha); 118int asd_check_flash_type(struct asd_ha_struct *asd_ha);
diff --git a/drivers/scsi/aic94xx/aic94xx_seq.c b/drivers/scsi/aic94xx/aic94xx_seq.c
index f4272ac4c685..8f98e33155e9 100644
--- a/drivers/scsi/aic94xx/aic94xx_seq.c
+++ b/drivers/scsi/aic94xx/aic94xx_seq.c
@@ -46,7 +46,7 @@
46static const struct firmware *sequencer_fw; 46static const struct firmware *sequencer_fw;
47static u16 cseq_vecs[CSEQ_NUM_VECS], lseq_vecs[LSEQ_NUM_VECS], mode2_task, 47static u16 cseq_vecs[CSEQ_NUM_VECS], lseq_vecs[LSEQ_NUM_VECS], mode2_task,
48 cseq_idle_loop, lseq_idle_loop; 48 cseq_idle_loop, lseq_idle_loop;
49static u8 *cseq_code, *lseq_code; 49static const u8 *cseq_code, *lseq_code;
50static u32 cseq_code_size, lseq_code_size; 50static u32 cseq_code_size, lseq_code_size;
51 51
52static u16 first_scb_site_no = 0xFFFF; 52static u16 first_scb_site_no = 0xFFFF;
@@ -1235,7 +1235,8 @@ int asd_release_firmware(void)
1235static int asd_request_firmware(struct asd_ha_struct *asd_ha) 1235static int asd_request_firmware(struct asd_ha_struct *asd_ha)
1236{ 1236{
1237 int err, i; 1237 int err, i;
1238 struct sequencer_file_header header, *hdr_ptr; 1238 struct sequencer_file_header header;
1239 const struct sequencer_file_header *hdr_ptr;
1239 u32 csum = 0; 1240 u32 csum = 0;
1240 u16 *ptr_cseq_vecs, *ptr_lseq_vecs; 1241 u16 *ptr_cseq_vecs, *ptr_lseq_vecs;
1241 1242
@@ -1249,7 +1250,7 @@ static int asd_request_firmware(struct asd_ha_struct *asd_ha)
1249 if (err) 1250 if (err)
1250 return err; 1251 return err;
1251 1252
1252 hdr_ptr = (struct sequencer_file_header *)sequencer_fw->data; 1253 hdr_ptr = (const struct sequencer_file_header *)sequencer_fw->data;
1253 1254
1254 header.csum = le32_to_cpu(hdr_ptr->csum); 1255 header.csum = le32_to_cpu(hdr_ptr->csum);
1255 header.major = le32_to_cpu(hdr_ptr->major); 1256 header.major = le32_to_cpu(hdr_ptr->major);