diff options
Diffstat (limited to 'drivers/scsi/aic7xxx/aic7xxx_osm.c')
-rw-r--r-- | drivers/scsi/aic7xxx/aic7xxx_osm.c | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c index 5e42dac23505..aeea7a61478e 100644 --- a/drivers/scsi/aic7xxx/aic7xxx_osm.c +++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c | |||
@@ -653,7 +653,7 @@ ahc_linux_slave_alloc(struct scsi_device *sdev) | |||
653 | struct ahc_linux_device *dev; | 653 | struct ahc_linux_device *dev; |
654 | 654 | ||
655 | if (bootverbose) | 655 | if (bootverbose) |
656 | printf("%s: Slave Alloc %d\n", ahc_name(ahc), sdev->id); | 656 | printk("%s: Slave Alloc %d\n", ahc_name(ahc), sdev->id); |
657 | 657 | ||
658 | dev = scsi_transport_device_data(sdev); | 658 | dev = scsi_transport_device_data(sdev); |
659 | memset(dev, 0, sizeof(*dev)); | 659 | memset(dev, 0, sizeof(*dev)); |
@@ -755,7 +755,7 @@ ahc_linux_abort(struct scsi_cmnd *cmd) | |||
755 | 755 | ||
756 | error = ahc_linux_queue_recovery_cmd(cmd, SCB_ABORT); | 756 | error = ahc_linux_queue_recovery_cmd(cmd, SCB_ABORT); |
757 | if (error != 0) | 757 | if (error != 0) |
758 | printf("aic7xxx_abort returns 0x%x\n", error); | 758 | printk("aic7xxx_abort returns 0x%x\n", error); |
759 | return (error); | 759 | return (error); |
760 | } | 760 | } |
761 | 761 | ||
@@ -769,7 +769,7 @@ ahc_linux_dev_reset(struct scsi_cmnd *cmd) | |||
769 | 769 | ||
770 | error = ahc_linux_queue_recovery_cmd(cmd, SCB_DEVICE_RESET); | 770 | error = ahc_linux_queue_recovery_cmd(cmd, SCB_DEVICE_RESET); |
771 | if (error != 0) | 771 | if (error != 0) |
772 | printf("aic7xxx_dev_reset returns 0x%x\n", error); | 772 | printk("aic7xxx_dev_reset returns 0x%x\n", error); |
773 | return (error); | 773 | return (error); |
774 | } | 774 | } |
775 | 775 | ||
@@ -791,7 +791,7 @@ ahc_linux_bus_reset(struct scsi_cmnd *cmd) | |||
791 | ahc_unlock(ahc, &flags); | 791 | ahc_unlock(ahc, &flags); |
792 | 792 | ||
793 | if (bootverbose) | 793 | if (bootverbose) |
794 | printf("%s: SCSI bus reset delivered. " | 794 | printk("%s: SCSI bus reset delivered. " |
795 | "%d SCBs aborted.\n", ahc_name(ahc), found); | 795 | "%d SCBs aborted.\n", ahc_name(ahc), found); |
796 | 796 | ||
797 | return SUCCESS; | 797 | return SUCCESS; |
@@ -840,7 +840,7 @@ ahc_dma_tag_create(struct ahc_softc *ahc, bus_dma_tag_t parent, | |||
840 | { | 840 | { |
841 | bus_dma_tag_t dmat; | 841 | bus_dma_tag_t dmat; |
842 | 842 | ||
843 | dmat = malloc(sizeof(*dmat), M_DEVBUF, M_NOWAIT); | 843 | dmat = kmalloc(sizeof(*dmat), GFP_ATOMIC); |
844 | if (dmat == NULL) | 844 | if (dmat == NULL) |
845 | return (ENOMEM); | 845 | return (ENOMEM); |
846 | 846 | ||
@@ -861,7 +861,7 @@ ahc_dma_tag_create(struct ahc_softc *ahc, bus_dma_tag_t parent, | |||
861 | void | 861 | void |
862 | ahc_dma_tag_destroy(struct ahc_softc *ahc, bus_dma_tag_t dmat) | 862 | ahc_dma_tag_destroy(struct ahc_softc *ahc, bus_dma_tag_t dmat) |
863 | { | 863 | { |
864 | free(dmat, M_DEVBUF); | 864 | kfree(dmat); |
865 | } | 865 | } |
866 | 866 | ||
867 | int | 867 | int |
@@ -918,7 +918,7 @@ ahc_linux_setup_tag_info_global(char *p) | |||
918 | int tags, i, j; | 918 | int tags, i, j; |
919 | 919 | ||
920 | tags = simple_strtoul(p + 1, NULL, 0) & 0xff; | 920 | tags = simple_strtoul(p + 1, NULL, 0) & 0xff; |
921 | printf("Setting Global Tags= %d\n", tags); | 921 | printk("Setting Global Tags= %d\n", tags); |
922 | 922 | ||
923 | for (i = 0; i < ARRAY_SIZE(aic7xxx_tag_info); i++) { | 923 | for (i = 0; i < ARRAY_SIZE(aic7xxx_tag_info); i++) { |
924 | for (j = 0; j < AHC_NUM_TARGETS; j++) { | 924 | for (j = 0; j < AHC_NUM_TARGETS; j++) { |
@@ -936,7 +936,7 @@ ahc_linux_setup_tag_info(u_long arg, int instance, int targ, int32_t value) | |||
936 | && (targ < AHC_NUM_TARGETS)) { | 936 | && (targ < AHC_NUM_TARGETS)) { |
937 | aic7xxx_tag_info[instance].tag_commands[targ] = value & 0xff; | 937 | aic7xxx_tag_info[instance].tag_commands[targ] = value & 0xff; |
938 | if (bootverbose) | 938 | if (bootverbose) |
939 | printf("tag_info[%d:%d] = %d\n", instance, targ, value); | 939 | printk("tag_info[%d:%d] = %d\n", instance, targ, value); |
940 | } | 940 | } |
941 | } | 941 | } |
942 | 942 | ||
@@ -977,7 +977,7 @@ ahc_parse_brace_option(char *opt_name, char *opt_arg, char *end, int depth, | |||
977 | if (targ == -1) | 977 | if (targ == -1) |
978 | targ = 0; | 978 | targ = 0; |
979 | } else { | 979 | } else { |
980 | printf("Malformed Option %s\n", | 980 | printk("Malformed Option %s\n", |
981 | opt_name); | 981 | opt_name); |
982 | done = TRUE; | 982 | done = TRUE; |
983 | } | 983 | } |
@@ -1120,7 +1120,7 @@ ahc_linux_register_host(struct ahc_softc *ahc, struct scsi_host_template *templa | |||
1120 | ahc_set_unit(ahc, ahc_linux_unit++); | 1120 | ahc_set_unit(ahc, ahc_linux_unit++); |
1121 | ahc_unlock(ahc, &s); | 1121 | ahc_unlock(ahc, &s); |
1122 | sprintf(buf, "scsi%d", host->host_no); | 1122 | sprintf(buf, "scsi%d", host->host_no); |
1123 | new_name = malloc(strlen(buf) + 1, M_DEVBUF, M_NOWAIT); | 1123 | new_name = kmalloc(strlen(buf) + 1, GFP_ATOMIC); |
1124 | if (new_name != NULL) { | 1124 | if (new_name != NULL) { |
1125 | strcpy(new_name, buf); | 1125 | strcpy(new_name, buf); |
1126 | ahc_set_name(ahc, new_name); | 1126 | ahc_set_name(ahc, new_name); |
@@ -1220,7 +1220,7 @@ ahc_platform_alloc(struct ahc_softc *ahc, void *platform_arg) | |||
1220 | { | 1220 | { |
1221 | 1221 | ||
1222 | ahc->platform_data = | 1222 | ahc->platform_data = |
1223 | malloc(sizeof(struct ahc_platform_data), M_DEVBUF, M_NOWAIT); | 1223 | kmalloc(sizeof(struct ahc_platform_data), GFP_ATOMIC); |
1224 | if (ahc->platform_data == NULL) | 1224 | if (ahc->platform_data == NULL) |
1225 | return (ENOMEM); | 1225 | return (ENOMEM); |
1226 | memset(ahc->platform_data, 0, sizeof(struct ahc_platform_data)); | 1226 | memset(ahc->platform_data, 0, sizeof(struct ahc_platform_data)); |
@@ -1264,7 +1264,7 @@ ahc_platform_free(struct ahc_softc *ahc) | |||
1264 | if (ahc->platform_data->host) | 1264 | if (ahc->platform_data->host) |
1265 | scsi_host_put(ahc->platform_data->host); | 1265 | scsi_host_put(ahc->platform_data->host); |
1266 | 1266 | ||
1267 | free(ahc->platform_data, M_DEVBUF); | 1267 | kfree(ahc->platform_data); |
1268 | } | 1268 | } |
1269 | } | 1269 | } |
1270 | 1270 | ||
@@ -1378,7 +1378,7 @@ ahc_linux_user_tagdepth(struct ahc_softc *ahc, struct ahc_devinfo *devinfo) | |||
1378 | if (ahc->unit >= ARRAY_SIZE(aic7xxx_tag_info)) { | 1378 | if (ahc->unit >= ARRAY_SIZE(aic7xxx_tag_info)) { |
1379 | if (warned_user == 0) { | 1379 | if (warned_user == 0) { |
1380 | 1380 | ||
1381 | printf(KERN_WARNING | 1381 | printk(KERN_WARNING |
1382 | "aic7xxx: WARNING: Insufficient tag_info instances\n" | 1382 | "aic7xxx: WARNING: Insufficient tag_info instances\n" |
1383 | "aic7xxx: for installed controllers. Using defaults\n" | 1383 | "aic7xxx: for installed controllers. Using defaults\n" |
1384 | "aic7xxx: Please update the aic7xxx_tag_info array in\n" | 1384 | "aic7xxx: Please update the aic7xxx_tag_info array in\n" |
@@ -1421,7 +1421,7 @@ ahc_linux_device_queue_depth(struct scsi_device *sdev) | |||
1421 | ahc_send_async(ahc, devinfo.channel, devinfo.target, | 1421 | ahc_send_async(ahc, devinfo.channel, devinfo.target, |
1422 | devinfo.lun, AC_TRANSFER_NEG); | 1422 | devinfo.lun, AC_TRANSFER_NEG); |
1423 | ahc_print_devinfo(ahc, &devinfo); | 1423 | ahc_print_devinfo(ahc, &devinfo); |
1424 | printf("Tagged Queuing enabled. Depth %d\n", tags); | 1424 | printk("Tagged Queuing enabled. Depth %d\n", tags); |
1425 | } else { | 1425 | } else { |
1426 | ahc_platform_set_tags(ahc, sdev, &devinfo, AHC_QUEUE_NONE); | 1426 | ahc_platform_set_tags(ahc, sdev, &devinfo, AHC_QUEUE_NONE); |
1427 | ahc_send_async(ahc, devinfo.channel, devinfo.target, | 1427 | ahc_send_async(ahc, devinfo.channel, devinfo.target, |
@@ -1735,7 +1735,7 @@ ahc_done(struct ahc_softc *ahc, struct scb *scb) | |||
1735 | * not have been dispatched to the controller, so | 1735 | * not have been dispatched to the controller, so |
1736 | * only check the SCB_ACTIVE flag for tagged transactions. | 1736 | * only check the SCB_ACTIVE flag for tagged transactions. |
1737 | */ | 1737 | */ |
1738 | printf("SCB %d done'd twice\n", scb->hscb->tag); | 1738 | printk("SCB %d done'd twice\n", scb->hscb->tag); |
1739 | ahc_dump_card_state(ahc); | 1739 | ahc_dump_card_state(ahc); |
1740 | panic("Stopping for safety"); | 1740 | panic("Stopping for safety"); |
1741 | } | 1741 | } |
@@ -1765,7 +1765,7 @@ ahc_done(struct ahc_softc *ahc, struct scb *scb) | |||
1765 | #ifdef AHC_DEBUG | 1765 | #ifdef AHC_DEBUG |
1766 | if ((ahc_debug & AHC_SHOW_MISC) != 0) { | 1766 | if ((ahc_debug & AHC_SHOW_MISC) != 0) { |
1767 | ahc_print_path(ahc, scb); | 1767 | ahc_print_path(ahc, scb); |
1768 | printf("Set CAM_UNCOR_PARITY\n"); | 1768 | printk("Set CAM_UNCOR_PARITY\n"); |
1769 | } | 1769 | } |
1770 | #endif | 1770 | #endif |
1771 | ahc_set_transaction_status(scb, CAM_UNCOR_PARITY); | 1771 | ahc_set_transaction_status(scb, CAM_UNCOR_PARITY); |
@@ -1783,12 +1783,12 @@ ahc_done(struct ahc_softc *ahc, struct scb *scb) | |||
1783 | u_int i; | 1783 | u_int i; |
1784 | 1784 | ||
1785 | ahc_print_path(ahc, scb); | 1785 | ahc_print_path(ahc, scb); |
1786 | printf("CDB:"); | 1786 | printk("CDB:"); |
1787 | for (i = 0; i < scb->io_ctx->cmd_len; i++) | 1787 | for (i = 0; i < scb->io_ctx->cmd_len; i++) |
1788 | printf(" 0x%x", scb->io_ctx->cmnd[i]); | 1788 | printk(" 0x%x", scb->io_ctx->cmnd[i]); |
1789 | printf("\n"); | 1789 | printk("\n"); |
1790 | ahc_print_path(ahc, scb); | 1790 | ahc_print_path(ahc, scb); |
1791 | printf("Saw underflow (%ld of %ld bytes). " | 1791 | printk("Saw underflow (%ld of %ld bytes). " |
1792 | "Treated as error\n", | 1792 | "Treated as error\n", |
1793 | ahc_get_residual(scb), | 1793 | ahc_get_residual(scb), |
1794 | ahc_get_transfer_length(scb)); | 1794 | ahc_get_transfer_length(scb)); |
@@ -1821,7 +1821,7 @@ ahc_done(struct ahc_softc *ahc, struct scb *scb) | |||
1821 | dev->commands_since_idle_or_otag = 0; | 1821 | dev->commands_since_idle_or_otag = 0; |
1822 | 1822 | ||
1823 | if ((scb->flags & SCB_RECOVERY_SCB) != 0) { | 1823 | if ((scb->flags & SCB_RECOVERY_SCB) != 0) { |
1824 | printf("Recovery SCB completes\n"); | 1824 | printk("Recovery SCB completes\n"); |
1825 | if (ahc_get_transaction_status(scb) == CAM_BDR_SENT | 1825 | if (ahc_get_transaction_status(scb) == CAM_BDR_SENT |
1826 | || ahc_get_transaction_status(scb) == CAM_REQ_ABORTED) | 1826 | || ahc_get_transaction_status(scb) == CAM_REQ_ABORTED) |
1827 | ahc_set_transaction_status(scb, CAM_CMD_TIMEOUT); | 1827 | ahc_set_transaction_status(scb, CAM_CMD_TIMEOUT); |
@@ -1886,14 +1886,14 @@ ahc_linux_handle_scsi_status(struct ahc_softc *ahc, | |||
1886 | if (ahc_debug & AHC_SHOW_SENSE) { | 1886 | if (ahc_debug & AHC_SHOW_SENSE) { |
1887 | int i; | 1887 | int i; |
1888 | 1888 | ||
1889 | printf("Copied %d bytes of sense data:", | 1889 | printk("Copied %d bytes of sense data:", |
1890 | sense_size); | 1890 | sense_size); |
1891 | for (i = 0; i < sense_size; i++) { | 1891 | for (i = 0; i < sense_size; i++) { |
1892 | if ((i & 0xF) == 0) | 1892 | if ((i & 0xF) == 0) |
1893 | printf("\n"); | 1893 | printk("\n"); |
1894 | printf("0x%x ", cmd->sense_buffer[i]); | 1894 | printk("0x%x ", cmd->sense_buffer[i]); |
1895 | } | 1895 | } |
1896 | printf("\n"); | 1896 | printk("\n"); |
1897 | } | 1897 | } |
1898 | #endif | 1898 | #endif |
1899 | } | 1899 | } |
@@ -1918,7 +1918,7 @@ ahc_linux_handle_scsi_status(struct ahc_softc *ahc, | |||
1918 | dev->openings = 0; | 1918 | dev->openings = 0; |
1919 | /* | 1919 | /* |
1920 | ahc_print_path(ahc, scb); | 1920 | ahc_print_path(ahc, scb); |
1921 | printf("Dropping tag count to %d\n", dev->active); | 1921 | printk("Dropping tag count to %d\n", dev->active); |
1922 | */ | 1922 | */ |
1923 | if (dev->active == dev->tags_on_last_queuefull) { | 1923 | if (dev->active == dev->tags_on_last_queuefull) { |
1924 | 1924 | ||
@@ -1935,7 +1935,7 @@ ahc_linux_handle_scsi_status(struct ahc_softc *ahc, | |||
1935 | == AHC_LOCK_TAGS_COUNT) { | 1935 | == AHC_LOCK_TAGS_COUNT) { |
1936 | dev->maxtags = dev->active; | 1936 | dev->maxtags = dev->active; |
1937 | ahc_print_path(ahc, scb); | 1937 | ahc_print_path(ahc, scb); |
1938 | printf("Locking max tag count at %d\n", | 1938 | printk("Locking max tag count at %d\n", |
1939 | dev->active); | 1939 | dev->active); |
1940 | } | 1940 | } |
1941 | } else { | 1941 | } else { |
@@ -2100,10 +2100,10 @@ ahc_linux_queue_recovery_cmd(struct scsi_cmnd *cmd, scb_flag flag) | |||
2100 | scmd_printk(KERN_INFO, cmd, "Attempting to queue a%s message\n", | 2100 | scmd_printk(KERN_INFO, cmd, "Attempting to queue a%s message\n", |
2101 | flag == SCB_ABORT ? "n ABORT" : " TARGET RESET"); | 2101 | flag == SCB_ABORT ? "n ABORT" : " TARGET RESET"); |
2102 | 2102 | ||
2103 | printf("CDB:"); | 2103 | printk("CDB:"); |
2104 | for (cdb_byte = 0; cdb_byte < cmd->cmd_len; cdb_byte++) | 2104 | for (cdb_byte = 0; cdb_byte < cmd->cmd_len; cdb_byte++) |
2105 | printf(" 0x%x", cmd->cmnd[cdb_byte]); | 2105 | printk(" 0x%x", cmd->cmnd[cdb_byte]); |
2106 | printf("\n"); | 2106 | printk("\n"); |
2107 | 2107 | ||
2108 | ahc_lock(ahc, &flags); | 2108 | ahc_lock(ahc, &flags); |
2109 | 2109 | ||
@@ -2121,7 +2121,7 @@ ahc_linux_queue_recovery_cmd(struct scsi_cmnd *cmd, scb_flag flag) | |||
2121 | * No target device for this command exists, | 2121 | * No target device for this command exists, |
2122 | * so we must not still own the command. | 2122 | * so we must not still own the command. |
2123 | */ | 2123 | */ |
2124 | printf("%s:%d:%d:%d: Is not an active device\n", | 2124 | printk("%s:%d:%d:%d: Is not an active device\n", |
2125 | ahc_name(ahc), cmd->device->channel, cmd->device->id, | 2125 | ahc_name(ahc), cmd->device->channel, cmd->device->id, |
2126 | cmd->device->lun); | 2126 | cmd->device->lun); |
2127 | retval = SUCCESS; | 2127 | retval = SUCCESS; |
@@ -2133,7 +2133,7 @@ ahc_linux_queue_recovery_cmd(struct scsi_cmnd *cmd, scb_flag flag) | |||
2133 | cmd->device->channel + 'A', | 2133 | cmd->device->channel + 'A', |
2134 | cmd->device->lun, | 2134 | cmd->device->lun, |
2135 | CAM_REQ_ABORTED, SEARCH_COMPLETE) != 0) { | 2135 | CAM_REQ_ABORTED, SEARCH_COMPLETE) != 0) { |
2136 | printf("%s:%d:%d:%d: Command found on untagged queue\n", | 2136 | printk("%s:%d:%d:%d: Command found on untagged queue\n", |
2137 | ahc_name(ahc), cmd->device->channel, cmd->device->id, | 2137 | ahc_name(ahc), cmd->device->channel, cmd->device->id, |
2138 | cmd->device->lun); | 2138 | cmd->device->lun); |
2139 | retval = SUCCESS; | 2139 | retval = SUCCESS; |
@@ -2187,7 +2187,7 @@ ahc_linux_queue_recovery_cmd(struct scsi_cmnd *cmd, scb_flag flag) | |||
2187 | goto no_cmd; | 2187 | goto no_cmd; |
2188 | } | 2188 | } |
2189 | 2189 | ||
2190 | printf("%s: At time of recovery, card was %spaused\n", | 2190 | printk("%s: At time of recovery, card was %spaused\n", |
2191 | ahc_name(ahc), was_paused ? "" : "not "); | 2191 | ahc_name(ahc), was_paused ? "" : "not "); |
2192 | ahc_dump_card_state(ahc); | 2192 | ahc_dump_card_state(ahc); |
2193 | 2193 | ||
@@ -2199,7 +2199,7 @@ ahc_linux_queue_recovery_cmd(struct scsi_cmnd *cmd, scb_flag flag) | |||
2199 | pending_scb->hscb->tag, | 2199 | pending_scb->hscb->tag, |
2200 | ROLE_INITIATOR, CAM_REQ_ABORTED, | 2200 | ROLE_INITIATOR, CAM_REQ_ABORTED, |
2201 | SEARCH_COMPLETE) > 0) { | 2201 | SEARCH_COMPLETE) > 0) { |
2202 | printf("%s:%d:%d:%d: Cmd aborted from QINFIFO\n", | 2202 | printk("%s:%d:%d:%d: Cmd aborted from QINFIFO\n", |
2203 | ahc_name(ahc), cmd->device->channel, | 2203 | ahc_name(ahc), cmd->device->channel, |
2204 | cmd->device->id, cmd->device->lun); | 2204 | cmd->device->id, cmd->device->lun); |
2205 | retval = SUCCESS; | 2205 | retval = SUCCESS; |
@@ -2313,7 +2313,7 @@ ahc_linux_queue_recovery_cmd(struct scsi_cmnd *cmd, scb_flag flag) | |||
2313 | ahc_qinfifo_requeue_tail(ahc, pending_scb); | 2313 | ahc_qinfifo_requeue_tail(ahc, pending_scb); |
2314 | ahc_outb(ahc, SCBPTR, saved_scbptr); | 2314 | ahc_outb(ahc, SCBPTR, saved_scbptr); |
2315 | ahc_print_path(ahc, pending_scb); | 2315 | ahc_print_path(ahc, pending_scb); |
2316 | printf("Device is disconnected, re-queuing SCB\n"); | 2316 | printk("Device is disconnected, re-queuing SCB\n"); |
2317 | wait = TRUE; | 2317 | wait = TRUE; |
2318 | } else { | 2318 | } else { |
2319 | scmd_printk(KERN_INFO, cmd, "Unable to deliver message\n"); | 2319 | scmd_printk(KERN_INFO, cmd, "Unable to deliver message\n"); |
@@ -2338,16 +2338,16 @@ done: | |||
2338 | ahc->platform_data->eh_done = &done; | 2338 | ahc->platform_data->eh_done = &done; |
2339 | ahc_unlock(ahc, &flags); | 2339 | ahc_unlock(ahc, &flags); |
2340 | 2340 | ||
2341 | printf("Recovery code sleeping\n"); | 2341 | printk("Recovery code sleeping\n"); |
2342 | if (!wait_for_completion_timeout(&done, 5 * HZ)) { | 2342 | if (!wait_for_completion_timeout(&done, 5 * HZ)) { |
2343 | ahc_lock(ahc, &flags); | 2343 | ahc_lock(ahc, &flags); |
2344 | ahc->platform_data->eh_done = NULL; | 2344 | ahc->platform_data->eh_done = NULL; |
2345 | ahc_unlock(ahc, &flags); | 2345 | ahc_unlock(ahc, &flags); |
2346 | 2346 | ||
2347 | printf("Timer Expired\n"); | 2347 | printk("Timer Expired\n"); |
2348 | retval = FAILED; | 2348 | retval = FAILED; |
2349 | } | 2349 | } |
2350 | printf("Recovery code awake\n"); | 2350 | printk("Recovery code awake\n"); |
2351 | } else | 2351 | } else |
2352 | ahc_unlock(ahc, &flags); | 2352 | ahc_unlock(ahc, &flags); |
2353 | return (retval); | 2353 | return (retval); |