Lines Matching refs:cmd

280 static inline void initialize_SCp(struct scsi_cmnd *cmd)  in initialize_SCp()  argument
287 if (scsi_bufflen(cmd)) { in initialize_SCp()
288 cmd->SCp.buffer = scsi_sglist(cmd); in initialize_SCp()
289 cmd->SCp.buffers_residual = scsi_sg_count(cmd) - 1; in initialize_SCp()
290 cmd->SCp.ptr = sg_virt(cmd->SCp.buffer); in initialize_SCp()
291 cmd->SCp.this_residual = cmd->SCp.buffer->length; in initialize_SCp()
293 cmd->SCp.buffer = NULL; in initialize_SCp()
294 cmd->SCp.buffers_residual = 0; in initialize_SCp()
295 cmd->SCp.ptr = NULL; in initialize_SCp()
296 cmd->SCp.this_residual = 0; in initialize_SCp()
510 static int should_disconnect(unsigned char cmd) in should_disconnect() argument
512 switch (cmd) { in should_disconnect()
720 void lprint_Scsi_Cmnd(struct scsi_cmnd *cmd, struct seq_file *m);
722 void lprint_command(unsigned char *cmd, struct seq_file *m);
754 static void lprint_Scsi_Cmnd(struct scsi_cmnd *cmd, struct seq_file *m) in lprint_Scsi_Cmnd() argument
756 …tf(m, "scsi%d : destination target %d, lun %llu\n", cmd->device->host->host_no, cmd->device->id, c… in lprint_Scsi_Cmnd()
758 lprint_command(cmd->cmnd, m); in lprint_Scsi_Cmnd()
913 static int NCR5380_queue_command_lck(struct scsi_cmnd *cmd, void (*done) (struct scsi_cmnd *)) in NCR5380_queue_command_lck() argument
915 struct Scsi_Host *instance = cmd->device->host; in NCR5380_queue_command_lck()
920 switch (cmd->cmnd[0]) { in NCR5380_queue_command_lck()
924 cmd->result = (DID_ERROR << 16); in NCR5380_queue_command_lck()
925 done(cmd); in NCR5380_queue_command_lck()
935 cmd->host_scribble = NULL; in NCR5380_queue_command_lck()
936 cmd->scsi_done = done; in NCR5380_queue_command_lck()
937 cmd->result = 0; in NCR5380_queue_command_lck()
946 if (!(hostdata->issue_queue) || (cmd->cmnd[0] == REQUEST_SENSE)) { in NCR5380_queue_command_lck()
947 LIST(cmd, hostdata->issue_queue); in NCR5380_queue_command_lck()
948 cmd->host_scribble = (unsigned char *) hostdata->issue_queue; in NCR5380_queue_command_lck()
949 hostdata->issue_queue = cmd; in NCR5380_queue_command_lck()
952 LIST(cmd, tmp); in NCR5380_queue_command_lck()
953 tmp->host_scribble = (unsigned char *) cmd; in NCR5380_queue_command_lck()
955 …dprintk(NDEBUG_QUEUES, "scsi%d : command added to %s of queue\n", instance->host_no, (cmd->cmnd[0]… in NCR5380_queue_command_lck()
1206 static int NCR5380_select(struct Scsi_Host *instance, struct scsi_cmnd *cmd) in NCR5380_select() argument
1297 NCR5380_write(OUTPUT_DATA_REG, (hostdata->id_mask | (1 << scmd_id(cmd)))); in NCR5380_select()
1342 dprintk(NDEBUG_SELECTION, "scsi%d : selecting target %d\n", instance->host_no, scmd_id(cmd)); in NCR5380_select()
1358 hostdata->selecting = cmd; in NCR5380_select()
1395 if (hostdata->targets_present & (1 << scmd_id(cmd))) { in NCR5380_select()
1403 cmd->result = DID_BAD_TARGET << 16; in NCR5380_select()
1404 cmd->scsi_done(cmd); in NCR5380_select()
1410 hostdata->targets_present |= (1 << scmd_id(cmd)); in NCR5380_select()
1439 …scsi%d : target %d selected, going into MESSAGE OUT phase.\n", instance->host_no, cmd->device->id); in NCR5380_select()
1440 tmp[0] = IDENTIFY(((instance->irq == NO_IRQ) ? 0 : 1), cmd->device->lun); in NCR5380_select()
1443 cmd->tag = 0; in NCR5380_select()
1451 hostdata->connected = cmd; in NCR5380_select()
1452 hostdata->busy[cmd->device->id] |= (1 << (cmd->device->lun & 0xFF)); in NCR5380_select()
1454 initialize_SCp(cmd); in NCR5380_select()
2013 struct scsi_cmnd *cmd = (struct scsi_cmnd *) hostdata->connected; local
2044 cmd->result = DID_ERROR << 16;
2045 cmd->scsi_done(cmd);
2053 if (!cmd->SCp.this_residual && cmd->SCp.buffers_residual) {
2054 ++cmd->SCp.buffer;
2055 --cmd->SCp.buffers_residual;
2056 cmd->SCp.this_residual = cmd->SCp.buffer->length;
2057 cmd->SCp.ptr = sg_virt(cmd->SCp.buffer);
2058 … "scsi%d : %d bytes and %d buffers left\n", instance->host_no, cmd->SCp.this_residual, cmd->SCp.bu…
2079 …if (!cmd->device->borken && !(hostdata->flags & FLAG_NO_PSEUDO_DMA) && (transfersize = NCR5380_dma…
2081 transfersize = cmd->transfersize;
2088 …if (!cmd->device->borken && transfersize && !(hostdata->flags & FLAG_NO_PSEUDO_DMA) && cmd->SCp.th…
2095 if (NCR5380_transfer_dma(instance, &phase, &len, (unsigned char **) &cmd->SCp.ptr)) {
2100 scmd_printk(KERN_INFO, cmd,
2102 cmd->device->borken = 1;
2106 cmd->result = DID_ERROR << 16;
2107 cmd->scsi_done(cmd);
2110 cmd->SCp.this_residual -= transfersize - len;
2113 NCR5380_transfer_pio(instance, &phase, (int *) &cmd->SCp.this_residual, (unsigned char **)
2114 &cmd->SCp.ptr);
2120 cmd->SCp.Message = tmp;
2138 …arget %d lun %llu linked command complete.\n", instance->host_no, cmd->device->id, cmd->device->lu…
2144 if (!cmd->next_link) {
2145 … %llu linked command complete, no next_link\n" instance->host_no, cmd->device->id, cmd->device->lu…
2150 initialize_SCp(cmd->next_link);
2152 cmd->next_link->tag = cmd->tag;
2153 cmd->result = cmd->SCp.Status | (cmd->SCp.Message << 8);
2154 … linked request done, calling scsi_done().\n", instance->host_no, cmd->device->id, cmd->device->lu…
2155 cmd->scsi_done(cmd);
2156 cmd = hostdata->connected;
2165 … command for target %d, lun %llu completed\n", instance->host_no, cmd->device->id, cmd->device->lu…
2166 hostdata->busy[cmd->device->id] &= ~(1 << (cmd->device->lun & 0xFF));
2184 if (cmd->cmnd[0] != REQUEST_SENSE)
2185 cmd->result = cmd->SCp.Status | (cmd->SCp.Message << 8);
2186 else if (status_byte(cmd->SCp.Status) != GOOD)
2187 cmd->result = (cmd->result & 0x00ffff) | (DID_ERROR << 16);
2189 if ((cmd->cmnd[0] == REQUEST_SENSE) &&
2191 scsi_eh_restore_cmnd(cmd, &hostdata->ses);
2195 if ((cmd->cmnd[0] != REQUEST_SENSE) && (status_byte(cmd->SCp.Status) == CHECK_CONDITION)) {
2196 scsi_eh_prep_cmnd(cmd, &hostdata->ses, NULL, 0, ~0);
2200 LIST(cmd, hostdata->issue_queue);
2201 cmd->host_scribble = (unsigned char *)
2203 hostdata->issue_queue = (struct scsi_cmnd *) cmd;
2206 cmd->scsi_done(cmd);
2226 cmd->device->simple_tags = 0;
2227 hostdata->busy[cmd->device->id] |= (1 << (cmd->device->lun & 0xFF));
2235 cmd->device->disconnect = 1;
2236 LIST(cmd, hostdata->disconnected_queue);
2237 cmd->host_scribble = (unsigned char *)
2240 hostdata->disconnected_queue = cmd;
2241 …om connected to" " the disconnected_queue\n", instance->host_no, cmd->device->id, cmd->device->lu…
2332 scmd_printk(KERN_INFO, cmd,
2335 scmd_printk(KERN_INFO, cmd,
2349 hostdata->busy[cmd->device->id] &= ~(1 << (cmd->device->lun & 0xFF));
2351 cmd->result = DID_ERROR << 16;
2352 cmd->scsi_done(cmd);
2359 len = cmd->cmd_len;
2360 data = cmd->cmnd;
2367 if (!cmd->device->disconnect && should_disconnect(cmd->cmnd[0])) {
2377 cmd->SCp.Status = tmp;
2387 if (!cmd->device->disconnect && time_after_eq(jiffies, poll_time)) {
2582 static int NCR5380_abort(struct scsi_cmnd *cmd) argument
2585 struct Scsi_Host *instance = cmd->device->host;
2589 scmd_printk(KERN_WARNING, cmd, "aborting command\n");
2605 if (hostdata->connected == cmd) {
2636 if (cmd == tmp) {
2692 if (cmd == tmp) {
2695 if (NCR5380_select(instance, cmd))
2702 if (cmd == tmp) {
2736 static int NCR5380_bus_reset(struct scsi_cmnd *cmd) argument
2738 struct Scsi_Host *instance = cmd->device->host;