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()
38 struct iosm_devlink *ipc_devlink = devlink_priv(dl); in ipc_devlink_set_param() local
41 ipc_devlink->param.erase_full_flash = ctx->val.vu8; in ipc_devlink_set_param()
81 struct iosm_devlink *ipc_devlink = devlink_priv(devlink); in ipc_devlink_flash_update() local
103 rc = ipc_flash_boot_psi(ipc_devlink, params->fw); in ipc_devlink_flash_update()
106 rc = ipc_flash_boot_ebl(ipc_devlink, params->fw); in ipc_devlink_flash_update()
109 rc = ipc_flash_boot_set_capabilities(ipc_devlink, mdm_rsp); in ipc_devlink_flash_update()
112 rc = ipc_flash_read_swid(ipc_devlink, mdm_rsp); in ipc_devlink_flash_update()
115 rc = ipc_flash_send_fls(ipc_devlink, params->fw, mdm_rsp); in ipc_devlink_flash_update()
147 int ipc_devlink_send_cmd(struct iosm_devlink *ipc_devlink, u16 cmd, u32 entry) in ipc_devlink_send_cmd() argument
156 return ipc_imem_sys_devlink_write(ipc_devlink, (u8 *)&rpsi_cmd, in ipc_devlink_send_cmd()
166 struct iosm_devlink *ipc_devlink = devlink_priv(dl); in ipc_devlink_coredump_snapshot() local
171 dev_dbg(ipc_devlink->dev, "Region:%s, ID:%d", ops->name, in ipc_devlink_coredump_snapshot()
174 rc = ipc_coredump_collect(ipc_devlink, data, cd_list->entry, in ipc_devlink_coredump_snapshot()
177 dev_err(ipc_devlink->dev, "Fail to create snapshot,err %d", rc); in ipc_devlink_coredump_snapshot()
183 ipc_coredump_get_list(ipc_devlink, rpsi_cmd_coredump_end); in ipc_devlink_coredump_snapshot()
188 ipc_coredump_get_list(ipc_devlink, rpsi_cmd_coredump_end); in ipc_devlink_coredump_snapshot()
225 static void ipc_devlink_destroy_region(struct iosm_devlink *ipc_devlink) in ipc_devlink_destroy_region() argument
230 devlink_region_destroy(ipc_devlink->cd_regions[i]); in ipc_devlink_destroy_region()
242 struct iosm_devlink *ipc_devlink; in ipc_devlink_init() local
254 ipc_devlink = devlink_priv(devlink_ctx); in ipc_devlink_init()
255 ipc_devlink->devlink_ctx = devlink_ctx; in ipc_devlink_init()
256 ipc_devlink->pcie = ipc_imem->pcie; in ipc_devlink_init()
257 ipc_devlink->dev = ipc_imem->dev; in ipc_devlink_init()
262 dev_err(ipc_devlink->dev, in ipc_devlink_init()
267 ipc_devlink->cd_file_info = list; in ipc_devlink_init()
269 rc = ipc_devlink_create_region(ipc_devlink); in ipc_devlink_init()
271 dev_err(ipc_devlink->dev, "Devlink Region create failed, rc %d", in ipc_devlink_init()
282 init_completion(&ipc_devlink->devlink_sio.read_sem); in ipc_devlink_init()
283 skb_queue_head_init(&ipc_devlink->devlink_sio.rx_list); in ipc_devlink_init()
286 dev_dbg(ipc_devlink->dev, "iosm devlink register success"); in ipc_devlink_init()
288 return ipc_devlink; in ipc_devlink_init()
291 ipc_devlink_destroy_region(ipc_devlink); in ipc_devlink_init()
305 void ipc_devlink_deinit(struct iosm_devlink *ipc_devlink) in ipc_devlink_deinit() argument
307 struct devlink *devlink_ctx = ipc_devlink->devlink_ctx; in ipc_devlink_deinit()
310 ipc_devlink_destroy_region(ipc_devlink); in ipc_devlink_deinit()
313 if (ipc_devlink->devlink_sio.devlink_read_pend) { in ipc_devlink_deinit()
314 complete(&ipc_devlink->devlink_sio.read_sem); in ipc_devlink_deinit()
315 complete(&ipc_devlink->devlink_sio.channel->ul_sem); in ipc_devlink_deinit()
317 if (!ipc_devlink->devlink_sio.devlink_read_pend) in ipc_devlink_deinit()
318 skb_queue_purge(&ipc_devlink->devlink_sio.rx_list); in ipc_devlink_deinit()
320 ipc_imem_sys_devlink_close(ipc_devlink); in ipc_devlink_deinit()