触摸屏驱动问题导致omap i2c timeout

本文讲述了在Ten4平台上遇到的触摸屏novatek驱动问题,表现为开机后触摸屏无法使用,需重启。经过排查,发现并非硬件问题,而是驱动在probe阶段进行了未确保设备准备好的i2c读写操作。通过调整驱动代码,将初始化操作提前,成功避免了omap i2c timeout的现象。

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

           Ten4上使用了新的触摸屏novatek,中文名字叫做联咏科技吧。但是从一开始研发就有个问题,就是开机后,触摸屏无法使用,只有重启才行。

           本来以为是手焊板子的问题。可是后来小批也有此问题。看来不得不解决了。

            起初,怀疑触摸屏驱动有问题,但是对照其他触摸屏驱动,i2c操作部分没有什么区别。但就是一直报omap i2c timeout 。

网上搜了一下,TI的平台确实有这个问题,但是最新的上游代码,应该已经修复了这个问题。我加了一个上游提交被驳回的patch,还是会出现,概率为重启十几次就会出现一次。

触摸屏接在i2c 4上面,速率为400K,难道是速率太快?改为100K,还是会出问题。没有找到问题的根本。

           再次考虑驱动的问题,暂时不能考虑硬件问题。

           对比其他驱动,发现一个很大的问题。

在probe的时候

   //Read and Print ChipID and test IC;
    chipid = novatek_ts_ChipID(ts->client);
    if(chipid < 0)
    {
        goto err_init_panel_fail;
    }
    else


       
    client->irq = pdata->irq;
    pdata->irq_init();
    pdata->rst();

在没有reset设备的情况下,进行了i2c读写操作&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值