Lines Matching refs:ipc_devlink

26 	struct iosm_devlink *ipc_devlink = devlink_priv(dl);  in ipc_devlink_get_param()  local
29 ctx->val.vu8 = ipc_devlink->param.erase_full_flash; in ipc_devlink_get_param()
39 struct iosm_devlink *ipc_devlink = devlink_priv(dl); in ipc_devlink_set_param() local
42 ipc_devlink->param.erase_full_flash = ctx->val.vu8; in ipc_devlink_set_param()
82 struct iosm_devlink *ipc_devlink = devlink_priv(devlink); in ipc_devlink_flash_update() local
104 rc = ipc_flash_boot_psi(ipc_devlink, params->fw); in ipc_devlink_flash_update()
107 rc = ipc_flash_boot_ebl(ipc_devlink, params->fw); in ipc_devlink_flash_update()
110 rc = ipc_flash_boot_set_capabilities(ipc_devlink, mdm_rsp); in ipc_devlink_flash_update()
113 rc = ipc_flash_read_swid(ipc_devlink, mdm_rsp); in ipc_devlink_flash_update()
116 rc = ipc_flash_send_fls(ipc_devlink, params->fw, mdm_rsp); in ipc_devlink_flash_update()
148 int ipc_devlink_send_cmd(struct iosm_devlink *ipc_devlink, u16 cmd, u32 entry) in ipc_devlink_send_cmd() argument
157 return ipc_imem_sys_devlink_write(ipc_devlink, (u8 *)&rpsi_cmd, in ipc_devlink_send_cmd()
167 struct iosm_devlink *ipc_devlink = devlink_priv(dl); in ipc_devlink_coredump_snapshot() local
172 dev_dbg(ipc_devlink->dev, "Region:%s, ID:%d", ops->name, in ipc_devlink_coredump_snapshot()
175 rc = ipc_coredump_collect(ipc_devlink, data, cd_list->entry, in ipc_devlink_coredump_snapshot()
178 dev_err(ipc_devlink->dev, "Fail to create snapshot,err %d", rc); in ipc_devlink_coredump_snapshot()
184 ipc_coredump_get_list(ipc_devlink, rpsi_cmd_coredump_end); in ipc_devlink_coredump_snapshot()
189 ipc_coredump_get_list(ipc_devlink, rpsi_cmd_coredump_end); in ipc_devlink_coredump_snapshot()
226 static void ipc_devlink_destroy_region(struct iosm_devlink *ipc_devlink) in ipc_devlink_destroy_region() argument
231 devlink_region_destroy(ipc_devlink->cd_regions[i]); in ipc_devlink_destroy_region()
243 struct iosm_devlink *ipc_devlink; in ipc_devlink_init() local
255 ipc_devlink = devlink_priv(devlink_ctx); in ipc_devlink_init()
256 ipc_devlink->devlink_ctx = devlink_ctx; in ipc_devlink_init()
257 ipc_devlink->pcie = ipc_imem->pcie; in ipc_devlink_init()
258 ipc_devlink->dev = ipc_imem->dev; in ipc_devlink_init()
263 dev_err(ipc_devlink->dev, in ipc_devlink_init()
268 ipc_devlink->cd_file_info = list; in ipc_devlink_init()
270 rc = ipc_devlink_create_region(ipc_devlink); in ipc_devlink_init()
272 dev_err(ipc_devlink->dev, "Devlink Region create failed, rc %d", in ipc_devlink_init()
283 init_completion(&ipc_devlink->devlink_sio.read_sem); in ipc_devlink_init()
284 skb_queue_head_init(&ipc_devlink->devlink_sio.rx_list); in ipc_devlink_init()
287 dev_dbg(ipc_devlink->dev, "iosm devlink register success"); in ipc_devlink_init()
289 return ipc_devlink; in ipc_devlink_init()
292 ipc_devlink_destroy_region(ipc_devlink); in ipc_devlink_init()
306 void ipc_devlink_deinit(struct iosm_devlink *ipc_devlink) in ipc_devlink_deinit() argument
308 struct devlink *devlink_ctx = ipc_devlink->devlink_ctx; in ipc_devlink_deinit()
311 ipc_devlink_destroy_region(ipc_devlink); in ipc_devlink_deinit()
314 if (ipc_devlink->devlink_sio.devlink_read_pend) { in ipc_devlink_deinit()
315 complete(&ipc_devlink->devlink_sio.read_sem); in ipc_devlink_deinit()
316 complete(&ipc_devlink->devlink_sio.channel->ul_sem); in ipc_devlink_deinit()
318 if (!ipc_devlink->devlink_sio.devlink_read_pend) in ipc_devlink_deinit()
319 skb_queue_purge(&ipc_devlink->devlink_sio.rx_list); in ipc_devlink_deinit()
321 ipc_imem_sys_devlink_close(ipc_devlink); in ipc_devlink_deinit()