Lines Matching refs:command

46 static void ipsd_dump_block_complete(ips_command_t *command);
194 ips_command_t *command; in ipsd_dump() local
209 if (ips_get_free_cmd(sc, &command, 0) != 0) { in ipsd_dump()
214 command->data_dmatag = sc->sg_dmatag; in ipsd_dump()
215 command->callback = ipsd_dump_block_complete; in ipsd_dump()
217 command_struct = (ips_io_cmd *)command->command_buffer; in ipsd_dump()
218 command_struct->id = command->id; in ipsd_dump()
230 if (bus_dmamap_load(command->data_dmatag, command->data_dmamap, in ipsd_dump()
231 va, len, ipsd_dump_map_sg, command, BUS_DMA_NOWAIT) != 0) { in ipsd_dump()
235 if (COMMAND_ERROR(command)) { in ipsd_dump()
245 ips_insert_free_cmd(command->sc, command); in ipsd_dump()
253 ips_command_t *command; in ipsd_dump_map_sg() local
258 command = (ips_command_t *)arg; in ipsd_dump_map_sg()
259 sc = command->sc; in ipsd_dump_map_sg()
264 ips_set_error(command, error); in ipsd_dump_map_sg()
268 command_struct = (ips_io_cmd *)command->command_buffer; in ipsd_dump_map_sg()
273 command->command_buffer + IPS_COMMAND_LEN); in ipsd_dump_map_sg()
280 (uint32_t)command->command_phys_addr + IPS_COMMAND_LEN; in ipsd_dump_map_sg()
281 command_struct->command = IPS_SG_WRITE_CMD; in ipsd_dump_map_sg()
286 command_struct->command = IPS_WRITE_CMD; in ipsd_dump_map_sg()
291 bus_dmamap_sync(sc->command_dmatag, command->command_dmamap, in ipsd_dump_map_sg()
293 bus_dmamap_sync(command->data_dmatag, command->data_dmamap, in ipsd_dump_map_sg()
296 sc->ips_issue_cmd(command); in ipsd_dump_map_sg()
297 sc->ips_poll_cmd(command); in ipsd_dump_map_sg()
302 ipsd_dump_block_complete(ips_command_t *command) in ipsd_dump_block_complete() argument
305 if (COMMAND_ERROR(command)) in ipsd_dump_block_complete()
307 command->status.value); in ipsd_dump_block_complete()
309 bus_dmamap_sync(command->data_dmatag, command->data_dmamap, in ipsd_dump_block_complete()
311 bus_dmamap_unload(command->data_dmatag, command->data_dmamap); in ipsd_dump_block_complete()