INIT_WORK(&chip->sm_worker, work_function); chip->queued = AW_FALSE; chip->highpri_wq = alloc_workqueue("AWINIC WQ", WQ_HIGHPRI|WQ_UNBOUND, 1);代码分析
时间: 2024-03-19 20:39:56 浏览: 136
这段代码的作用是初始化一个工作项 `chip->sm_worker`并将其关联到一个工作函数 `work_function` 上。
具体来说,`INIT_WORK(&chip->sm_worker, work_function)` 函数用于初始化一个工作项,第一个参数是工作项的指针,第二个参数是该工作项要执行的函数指针。在这个例子中,工作项的指针是 `&chip->sm_worker`,工作函数是 `work_function`。
接下来,`chip->queued = AW_FALSE` 表示将 `chip->queued` 变量初始化为 `AW_FALSE`,这个变量通常用于标记当前是否已经有工作项在队列中了。
最后,`chip->highpri_wq = alloc_workqueue("AWINIC WQ", WQ_HIGHPRI|WQ_UNBOUND, 1)` 用于创建一个高优先级的无绑定工作队列,并将其赋值给 `chip->highpri_wq` 变量。这个工作队列将用于存储和执行工作项。
阅读全文