驱动链接:IICDriver.c
linux驱动
未读linux IIC驱动报错 – 不执行IIC驱动的probe函数问题描述:加载IIC驱动时,驱动的compitible属性和设备树的compitible属性一样,但是加载完成时并没有执行IIC驱动的probe函数
解决办法:IIC总线匹配设备时,不止需要设备树的compitible属性,还需要传统方法的id_table,即同时需要设备树的compitible属性匹配方法和传统的id_table匹配方法。
转载自:Linux i2c子系统(三) _解决probe无法执行
linux驱动
未读linux驱动–基于platform和设备树下的按键中断一、linux中断管理 首先先看一下几个概念
中断号:每个中断都有一个中断号,中断控制器根据中断号区分不同的中断(中断号由MCU厂商规定)
中断服务函数:发生中断时执行的函数
中断向量:中断号和中断服务函数的地址一一对应起来的一个记录,发生中断时根据中断号查找中断服务函数
中断向量表:多个中断向量组成的一张表,一款CPU可以支持多个中断,这些中断向量组成了中断向量表
在发生中断时,进入中断向量表,根据中断号查找对应的中断服务函数地址,进而去执行中断服务函数,执行完成后继续中断前的任务。 在一般的MCU中,中断号,中断服务函数名,中断向量表一般都是固定的,都在启动文件中定义,例如STM32,但是在linux中,中断服务函数名和中断向量表不是固定的,可以自定义中断服务函数名,所以就需要实现中断号和中断服务函数的绑定,进而构造出中断向量表,在linux中使用request_irq() 函数来实现这一需求,该函数可以用来实现中断号与中断服务函数的绑定,设置中断 ...
加载linux驱动时显示 Unable to handle kernel NULL pointer dereference at virtual address 00000000原因:驱动中使用了空指针解决办法:查找驱动程序中的指针问题,确保没有使用空指针
我遇到的原因:没有定义platform_driver结构体中的driver成员的name属性,导致空指针报错。
注意:platform_driver结构体中的driver成员的name属性是指明该驱动的名称,该属性是必须存在的,of_match_table和id_table是用来匹配设备的,第一个是用设备树的方法,第二个是传统方法。
12345678struct platform_driver key_driver = { .driver = { //驱动程序的属性,用来匹配设备(设备树方法) .name = "MyPlatformKey", //报错因为没有定义该属性 .of_match_table = key_ ...
linux驱动
未读Linux驱动学习–platform总线首先需要知道的是linux采用驱动的分离和分层思想,将所有的驱动分为总线,驱动和设备,驱动和设备通过总线进行匹配。因此platform也遵循这个规定,将驱动分为platform总线,platform驱动和platform设备。他们之间的关系如下所示。
当有新的驱动加入时,platform总线通过match方法匹配与之对应的设备,当然这个match方法platform总线已经实现了,驱动和设备匹配的方法有好几种。
第一种通过比较驱动的of_match_table元素中的compatible属性和设备树节点中的compatible属性
第二种通过比较ACPI,这种方法暂时不太了解
第三种通过比较id_table,这种方法适合于没有采用设备树的设备
最后一种直接比较驱动和设备的名称,也是最简单的一种
如果匹配成功则执行驱动的probe方法,来完成设备注册等工作。
AnZhiYu主题中大部分标签移植于店长的hexo-butterfly-tag-plugins-plus,转载请注明来自安知鱼
段落文本 p标签语法配置参数样式预览示例源码1{% p 样式参数(参数以空格划分), 文本内容 %}
字体: logo, code
颜色: red,yellow,green,cyan,blue,gray
大小: small, h4, h3, h2, h1, large, huge, ultra
对齐方向: left, center, right
彩色文字在一段话中方便插入各种颜色的标签,包括:红色、黄色、绿色、青色、蓝色、灰色。
超大号文字文档「开始」页面中的标题部分就是超大号文字。Volantis
A Wonderful Theme for Hexo
123456- 彩色文字 在一段话中方便插入各种颜色的标签,包括:{% p red, 红色 %}、{% p yellow, 黄色 %}、{% p green, 绿色 %}、{% p cyan, 青色 %} ...
share
未读
这是我见过的最 niubility 的 最神奇的 Hello World!
预览
代码123456789101112131415161718<script>eval(z='p="<"+"pre>"/* ,.oq#+ ,._, */;for(y in n="zw24l6k\4e3t4jnt4qj24xh2 x/* =<,m#F^ A W###q. */42kty24wrt413n243n\9h243pdxt41csb yz/* #K q##H######Am */43iyb6k43pk7243nm\r24".split(4)){/* dP cpq#q##########b, */for(a in t=pars\eInt(n[y],36)+/* p##@###YG=[#######y */(e=x=r=[]))for\(r=!r,i=0;t[a/* d#qg `*PWo##q#######D */]>i; ...
share
未读有趣的404-Not Found gif 动态图。
所有图片资源均来自互联网,如果侵权,请告知!
样式1-Style11![404-1](https://cdn.staticaly.com/gh/geekswg/static@main/blog-img/404/404-1.gif "样式1-Style1")
样式2-Style21![404-2](https://cdn.staticaly.com/gh/geekswg/static@main/blog-img/404/404-2.gif "样式2-Style1")
其他样式1![404-3](https://cdn.staticaly.com/gh/geekswg/static@main/blog-img/404/404-3.gif "样式3-Style1")
1![404-4](https://cdn.staticaly.com/gh/geekswg/static@main/blog-img/404/404-4.gif "样式3-Style1& ...
share
未读所有分享资源来自互联网,如有侵权请告知,会立即删除
分享 VSCode 插件,提升编码效率,插件侠篇。
小技巧:vscode插件栏目中,热门标签类目下的插件都是比较优秀和好用的插件,不知道用什么插件时去哪里可以发现很多宝藏的插件!推荐里面也能找到你想要的,微软这方面做的还是非常不错的。
AI类-辅助写代码工具
插件链接
描述
备注
CodeGeex
免费的AI编程助手、代码自动生成、代码智能补全、代码翻译、支持多种语言、适配主流IDE
国产,免费
微软IntelliCode
AI-assisted development
微软自家的
GitHub Copilot
Your AI pair programmer
代码能力比较强
tools-工具类git功能增强
vscode自带的git插件只能提交和更新代码,不能查看和查看远程的分支历史提交记录。
链接
描述
备注
Git History
View git log, file history, compare branches or commits
查看git提交记录和比较提交信息