Lines Matching refs:command

46 static void ipsd_dump_block_complete(ips_command_t *command);
187 ips_command_t *command; in ipsd_dump() local
202 if (ips_get_free_cmd(sc, &command, 0) != 0) { in ipsd_dump()
207 command->data_dmatag = sc->sg_dmatag; in ipsd_dump()
208 command->callback = ipsd_dump_block_complete; in ipsd_dump()
210 command_struct = (ips_io_cmd *)command->command_buffer; in ipsd_dump()
211 command_struct->id = command->id; in ipsd_dump()
223 if (bus_dmamap_load(command->data_dmatag, command->data_dmamap, in ipsd_dump()
224 va, len, ipsd_dump_map_sg, command, BUS_DMA_NOWAIT) != 0) { in ipsd_dump()
228 if (COMMAND_ERROR(command)) { in ipsd_dump()
238 ips_insert_free_cmd(command->sc, command); in ipsd_dump()
246 ips_command_t *command; in ipsd_dump_map_sg() local
251 command = (ips_command_t *)arg; in ipsd_dump_map_sg()
252 sc = command->sc; in ipsd_dump_map_sg()
257 ips_set_error(command, error); in ipsd_dump_map_sg()
261 command_struct = (ips_io_cmd *)command->command_buffer; in ipsd_dump_map_sg()
266 command->command_buffer + IPS_COMMAND_LEN); in ipsd_dump_map_sg()
273 (uint32_t)command->command_phys_addr + IPS_COMMAND_LEN; in ipsd_dump_map_sg()
274 command_struct->command = IPS_SG_WRITE_CMD; in ipsd_dump_map_sg()
279 command_struct->command = IPS_WRITE_CMD; in ipsd_dump_map_sg()
284 bus_dmamap_sync(sc->command_dmatag, command->command_dmamap, in ipsd_dump_map_sg()
286 bus_dmamap_sync(command->data_dmatag, command->data_dmamap, in ipsd_dump_map_sg()
289 sc->ips_issue_cmd(command); in ipsd_dump_map_sg()
290 sc->ips_poll_cmd(command); in ipsd_dump_map_sg()
295 ipsd_dump_block_complete(ips_command_t *command) in ipsd_dump_block_complete() argument
298 if (COMMAND_ERROR(command)) in ipsd_dump_block_complete()
300 command->status.value); in ipsd_dump_block_complete()
302 bus_dmamap_sync(command->data_dmatag, command->data_dmamap, in ipsd_dump_block_complete()
304 bus_dmamap_unload(command->data_dmatag, command->data_dmamap); in ipsd_dump_block_complete()