int cavan_thread_run(struct cavan_thread *thread, void *data, int flags) { int ret; ret = cavan_thread_init(thread, data, flags); if (ret < 0) { pr_red_info("cavan_thread_init"); return ret; } ret = cavan_thread_start(thread); if (ret < 0) { pr_red_info("cavan_thread_start"); goto out_cavan_thread_deinit; } return 0; out_cavan_thread_deinit: cavan_thread_deinit(thread); return ret; }
int cavan_alarm_thread_start(struct cavan_alarm_thread *thread) { global_alarm_thread = thread; return cavan_thread_start(&thread->thread); }