static int __init goodix_ts_init(void) TP驱动加载函数——浅析

本文深入解析了`goodix_ts_init`驱动加载函数,包括创建工作队列`goodix_wq`、ESD保护机制以及I2C设备驱动的注册过程。通过`create_singlethread_workqueue`创建工作队列,`i2c_add_driver`用于将设备驱动与I2C总线上的设备连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

static int __init goodix_ts_init(void) //驱动加载函数

{

s32 ret;

 

GTP_DEBUG_FUNC(); //出错提示, GTP_DEBUG_FUNC_ON=0时正确

GTP_INFO("GTP driver installing...."); //原样输出

/* 函数解析.note 创建工作队列,返回一个指针*/

goodix_wq = create_singlethread_workqueue("goodix_wq");

if (!goodix_wq) //为0则创建队列失败

{

GTP_ERROR("Creat workqueue failed.");

return -ENOMEM;

}

#if GTP_ESD_PROTECT // 1 esd protection with a cycle of 2 seconds

/*使用的是INIT_DELAYED_WORK(),那么之后我们就会调用schedule_delayed_work(),这俩是一对.它表示,您希望经过一段延时然后再执行某个函数,*/

INIT_DELAYED_WORK(&gtp_esd_check_work, gtp_esd_check_func);

/*;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

简书-乡村码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值