Lines Matching defs:ccb
26 fill_temp_sg(scsi_ccb *ccb)
29 scsi_bus_info *bus = ccb->bus;
35 ccb->data,
36 ccb->data_length
40 physical_entry *temp_sg = (physical_entry *)ccb->sg_list;
42 res = get_iovec_memory_map(&vec, 1, 0, ccb->data_length, temp_sg, max_sg_blocks,
50 if (mapped_len != ccb->data_length)
53 if (dma_boundary != ~(uint32)0 || ccb->data_length > max_sg_block_size) {
89 ccb->sg_count = num_entries;
104 create_temp_sg(scsi_ccb *ccb)
109 SHOW_FLOW(3, "ccb=%p, data=%p, data_length=%" B_PRIu32, ccb, ccb->data,
110 ccb->data_length);
112 ccb->sg_list = temp_sg = (physical_entry*)locked_pool->alloc(temp_sg_pool);
118 res = lock_memory(ccb->data, ccb->data_length, B_DMA_IO
119 | ((ccb->flags & SCSI_DIR_MASK) == SCSI_DIR_IN ? B_READ_DEVICE : 0));
126 if (fill_temp_sg(ccb))
130 unlock_memory(ccb->data, ccb->data_length, B_DMA_IO
131 | ((ccb->flags & SCSI_DIR_MASK) == SCSI_DIR_IN ? B_READ_DEVICE : 0));
151 cleanup_tmp_sg(scsi_ccb *ccb)
155 SHOW_FLOW(3, "ccb=%p, data=%p, data_length=%" B_PRId32,
156 ccb, ccb->data, ccb->data_length);
158 res = unlock_memory(ccb->data, ccb->data_length, B_DMA_IO
159 | ((ccb->flags & SCSI_DIR_MASK) == SCSI_DIR_IN ? B_READ_DEVICE : 0));
166 locked_pool->free(temp_sg_pool, (physical_entry *)ccb->sg_list);
169 ccb->sg_list = NULL;