if (chg->cc2_detach_wa_active || chg->typec_en_dis_active || chg->try_sink_active) { smblib_dbg(chg, PR_MISC | PR_INTERRUPT, "Ignoring since %s active\n", chg->cc2_detach_wa_active ? "cc2_detach_wa" : "typec_en_dis"); return IRQ_HANDLED; }代码解释
时间: 2023-10-04 08:13:50 浏览: 127
MIL-STD-750-4 CHG4_2023.rar
5星 · 资源好评率100%
这段代码主要是用于过滤掉一些不需要处理的 USB Type-C 插拔事件,具体包括以下三种情况:
1. cc2_detach_wa_active:表示正在执行 cc2_detach_wa 操作,即正在处理 USB Type-C CC2 线脱落的情况。
2. typec_en_dis_active:表示正在执行 Type-C 接口的启用或禁用操作,即正在处理 Type-C 接口的开关操作。
3. try_sink_active:表示正在执行 try_sink 操作,即正在尝试将 USB Type-C 接口切换为 Sink 模式。
如果当前正在执行以上任意一种操作,就会忽略当前的 USB Type-C 插拔事件,并输出相应的调试信息。而如果没有执行以上任何一种操作,就会继续处理 USB Type-C 插拔事件。需要注意的是,`chg` 是指向 `struct smb_charger` 结构体的指针,其中包含了电池驱动的一些信息和状态,如 cc2_detach_wa_active、typec_en_dis_active、try_sink_active 等。
阅读全文