- 博客(16)
- 收藏
- 关注
原创 TCS34001 Linux驱动
本示例展示了如何在Linux内核中实现TCS34001环境光传感器的I2C驱动。驱动通过设备树匹配绑定传感器,并在probe函数中初始化传感器寄存器,包括设置积分时间(ATIME)、增益(CONTROL)以及使能寄存器(ENABLE)中的PON和AEN位以启动传感器和ADC。驱动使用I2C SMBus API访问寄存器,并通过delayed_work定时任务每秒读取Clear通道的ADC值,使用pr_info打印亮度值。驱动还实现了remove函数,用于取消定时任务并关闭传感器。该驱动遵循标准Linux I
2025-05-22 11:41:05
182
原创 Android休眠唤醒同步机制
在Android系统中,实现用户态与内核态在系统挂起过程中的同步是一个复杂的问题。由于Linux的挂起流程会冻结用户态进程,用户态无法直接得知内核驱动的挂起状态。本文探讨了几种可能的解决方案
2025-05-22 11:33:43
967
原创 HDMI CEC 流程解析
1.环境:RK3588 HDMI RX <==== 播放设备 playback。1往右移0位,说明本机logic addr 是0。4. debug节点解析。主要解析收发流程链路。5.opcode解析。
2025-04-18 18:08:54
989
原创 【UVC 摄像头】Linux camera 用app打开后video节点消失
异常出现的时候,上面的uvc节点下就没有5-1:1.0 的节点了,所以主动将5-1:1.0 5-1:1.1绑定到uvcdriver就可以实现主动挂载video节点了,echo下刚刚的usb设备号,正常的话就会打印uvc found,那video节点也出来了。因为在APP关闭的时候,会偶现uvc driver 不能自动挂载,所以前期一直在APP释放资源的时候优化,但是优化半天,都有这个偶现自动挂载失败的问题。后面尝试着主机主动去挂载,如果退出app的时候释放失败,就我自己去主动挂载,这种办法有效果。
2024-10-18 14:55:13
804
1
原创 【Git应用】git apply 无任何响应
例如patch里面的路径是b/c,但是你的git init 路径是a/b/c,这个时候git apply是没用的。三. 原因分析:看patch、diff 里面的路径,需要跟git仓库(git init)路径对应。打好之后,可以把b里面的.git删去,在a目录下git status查看打的最新补丁就可以。然后基于b里面打git apply,这个时候应该不会出现异常了。基于上面的例子可以在b下 git init新创一个git仓库。二. git apply 无响应,没有打上补丁,也没有报错。
2024-07-17 09:59:46
933
原创 【Linux驱动】sysfs系统文件修改666权限
在static CLASS_ATTR_RW(modem_status);那么解决办法就是直接将CLASS_ATTR_RW宏拿出来自己自定义。根据源码一点一点分析。查看源码发现,里面只是644权限。应用层反馈,无写权限,后续研究后。#无意中发现的方法#
2024-07-17 09:53:22
610
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人