static void gelic_debug_shutdown(void) { if (bus_addr) unmap_dma_mem(GELIC_BUS_ID, GELIC_DEVICE_ID, bus_addr, sizeof(dbg)); lv1_close_device(GELIC_BUS_ID, GELIC_DEVICE_ID); }
int lv1_stor_wrapper_open(u64 dev_id, void *dma_buf, u64 dma_buf_lpar_addr, u64 dma_size_log, lv1_stor_wrapper_var *stor_var) { u64 dma_bus_addr, v2; int result; result = map_dma_mem(STOR_BUS_ID, dev_id, (void *)dma_buf_lpar_addr, (1<<dma_size_log), &dma_bus_addr); if (result != 0) return result; result = lv1_get_repository_node_value(PS3_LPAR_ID_PME, FIELD_FIRST("bus", STOR_BUS_ID), FIELD("dev", dev_id), FIELD("blk_size", 0), 0, &stor_var->block_size, &v2); if (result != 0) { unmap_dma_mem(STOR_BUS_ID, dev_id, dma_bus_addr, dma_size_log); return result; } stor_var->dev_id = dev_id; stor_var->dma = dma_buf; stor_var->dma_lpar_addr = dma_buf_lpar_addr; stor_var->dma_size_log = dma_size_log; stor_var->dma_bus_addr = dma_bus_addr; return 0; }
int lv1_stor_wrapper_close(lv1_stor_wrapper_var *stor_var) { return unmap_dma_mem(STOR_BUS_ID, stor_var->dev_id, stor_var->dma_bus_addr, stor_var->dma_size_log); }