/* Init */ enum esif_rc esif_ipc_init( esif_device_t device ) { ESIF_TRACE_DYN_INIT("Initialize IPC\n"); return esif_os_ipc_init(device); }
/* Exit */ void esif_ipc_exit( esif_device_t device ) { esif_os_ipc_exit(device); ESIF_TRACE_DYN_INIT("Exit IPC\n"); }
/* Exit */ void esif_os_ipc_exit(esif_device_t device) { int rc = 0; ESIF_TRACE_DYN_INIT("linux_%s: Exit IPC\n", __func__); rc = misc_deregister(&esif_device); if (rc) { dev_dbg(esif_device.this_device, "failed to unregister misc dev %d\n", rc); } ESIF_TRACE_DYN_INIT("linux_%s: IOCTL Device %s UnRegistered\n", __func__, IPC_DEVICE); }
/* Exit */ void esif_ipc_exit( esif_device_t device ) { esif_os_ipc_exit(device); ESIF_TRACE_DYN_INIT("%s: Exit IPC\n", ESIF_FUNC); }
/* Exit */ void esif_event_exit(void) { esif_queue_destroy(g_event_queue); esif_ccb_lock_uninit(&g_event_lock); ESIF_TRACE_DYN_INIT("%s: Exit Event\n", ESIF_FUNC); }
/* Init */ enum esif_rc esif_event_init(void) { ESIF_TRACE_DYN_INIT("%s: Initialize Event\n", ESIF_FUNC); g_event_queue = esif_queue_create(1024, g_event_queue_name); if (NULL == g_event_queue) return ESIF_E_NO_MEMORY; esif_ccb_lock_init(&g_event_lock); return ESIF_OK; }
/* Init */ enum esif_rc esif_os_ipc_init(esif_device_t device) { int rc = 0; ESIF_TRACE_DYN_INIT("linux_%s: Initialize IPC\n", __func__); /* Create misc_device here */ rc = misc_register(&esif_device); if (rc) { dev_dbg(esif_device.this_device, "failed to register misc dev %d\n", rc); return ESIF_E_UNSPECIFIED; } ESIF_TRACE_DYN_INIT("linux_%s: IPC Registration:\n" " Method: IOCTL\n" " Device: /dev/%s\n" " Type: char\n" " Mode: READ/WRITE\n", __func__, IPC_DEVICE); return ESIF_OK; }
/* Exit */ void esif_action_systemio_exit(void) { ESIF_TRACE_DYN_INIT("Exit SYSTEMIO Action\n"); esif_ccb_lock_uninit(&g_esif_action_systemio_lock); }
/* Init */ enum esif_rc esif_action_systemio_init(void) { ESIF_TRACE_DYN_INIT("Initialize SYSTEMIO Action\n"); esif_ccb_lock_init(&g_esif_action_systemio_lock); return ESIF_OK; }
/* Exit */ void esif_command_exit(void) { ESIF_TRACE_DYN_INIT("%s: Exit Command\n", ESIF_FUNC); }
/* Init */ enum esif_rc esif_command_init(void) { ESIF_TRACE_DYN_INIT("%s: Initialize Command\n", ESIF_FUNC); return ESIF_OK; }
/* Exit */ void esif_action_mmio_exit(void) { esif_ccb_lock_uninit(&g_esif_action_mmio_lock); ESIF_TRACE_DYN_INIT("Exit MMIO Action\n"); }
/* Exit */ void esif_cpc_exit(void) { ESIF_TRACE_DYN_INIT("%s: UnInitialize Compact Primitive Catalog(CPC)\n", ESIF_FUNC); }
/* Init */ enum esif_rc esif_cpc_init(void) { ESIF_TRACE_DYN_INIT("%s: Initialize Compact Primitive Catalog(CPC)\n", ESIF_FUNC); return ESIF_OK; }
/* Exit Poll Manager */ void esif_poll_exit(void) { ESIF_TRACE_DYN_INIT("Exit Polling\n"); }