aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aic7xxx/aic79xx_proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/aic7xxx/aic79xx_proc.c')
-rw-r--r--drivers/scsi/aic7xxx/aic79xx_proc.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/scsi/aic7xxx/aic79xx_proc.c b/drivers/scsi/aic7xxx/aic79xx_proc.c
index 014bed716e7c..59c85d5a153a 100644
--- a/drivers/scsi/aic7xxx/aic79xx_proc.c
+++ b/drivers/scsi/aic7xxx/aic79xx_proc.c
@@ -272,33 +272,32 @@ ahd_proc_write_seeprom(struct ahd_softc *ahd, char *buffer, int length)
272 saved_modes = ahd_save_modes(ahd); 272 saved_modes = ahd_save_modes(ahd);
273 ahd_set_modes(ahd, AHD_MODE_SCSI, AHD_MODE_SCSI); 273 ahd_set_modes(ahd, AHD_MODE_SCSI, AHD_MODE_SCSI);
274 if (length != sizeof(struct seeprom_config)) { 274 if (length != sizeof(struct seeprom_config)) {
275 printf("ahd_proc_write_seeprom: incorrect buffer size\n"); 275 printk("ahd_proc_write_seeprom: incorrect buffer size\n");
276 goto done; 276 goto done;
277 } 277 }
278 278
279 have_seeprom = ahd_verify_cksum((struct seeprom_config*)buffer); 279 have_seeprom = ahd_verify_cksum((struct seeprom_config*)buffer);
280 if (have_seeprom == 0) { 280 if (have_seeprom == 0) {
281 printf("ahd_proc_write_seeprom: cksum verification failed\n"); 281 printk("ahd_proc_write_seeprom: cksum verification failed\n");
282 goto done; 282 goto done;
283 } 283 }
284 284
285 have_seeprom = ahd_acquire_seeprom(ahd); 285 have_seeprom = ahd_acquire_seeprom(ahd);
286 if (!have_seeprom) { 286 if (!have_seeprom) {
287 printf("ahd_proc_write_seeprom: No Serial EEPROM\n"); 287 printk("ahd_proc_write_seeprom: No Serial EEPROM\n");
288 goto done; 288 goto done;
289 } else { 289 } else {
290 u_int start_addr; 290 u_int start_addr;
291 291
292 if (ahd->seep_config == NULL) { 292 if (ahd->seep_config == NULL) {
293 ahd->seep_config = malloc(sizeof(*ahd->seep_config), 293 ahd->seep_config = kmalloc(sizeof(*ahd->seep_config), GFP_ATOMIC);
294 M_DEVBUF, M_NOWAIT);
295 if (ahd->seep_config == NULL) { 294 if (ahd->seep_config == NULL) {
296 printf("aic79xx: Unable to allocate serial " 295 printk("aic79xx: Unable to allocate serial "
297 "eeprom buffer. Write failing\n"); 296 "eeprom buffer. Write failing\n");
298 goto done; 297 goto done;
299 } 298 }
300 } 299 }
301 printf("aic79xx: Writing Serial EEPROM\n"); 300 printk("aic79xx: Writing Serial EEPROM\n");
302 start_addr = 32 * (ahd->channel - 'A'); 301 start_addr = 32 * (ahd->channel - 'A');
303 ahd_write_seeprom(ahd, (u_int16_t *)buffer, start_addr, 302 ahd_write_seeprom(ahd, (u_int16_t *)buffer, start_addr,
304 sizeof(struct seeprom_config)/2); 303 sizeof(struct seeprom_config)/2);