新手入职Linux驱动岗后,必听的5个忠告

2023年 8月 7日 46.7k 0

1、不要只会用printk

除了printk,内核里面有很多pr_infopr_err等打印函数,要学会控制打印等级,以及针对不同的场景使用不同的打印函数。

2、新手不要直接改defconfig

内核有默认配置文件xxx_defconfig,如果你要修改内核的一些配置,作为新手不要直接去修改xxx_defconfig。

稳妥的做法是执行make menucofig通常菜单进行配置,最后把.config文件覆盖掉xxx_defconfig,然后再上传这个xxx_defconfig

3、不要直接映射每一个物理地址

Linux下操作寄存器一定要先映射,但是通常只映射基地址,通过基址加偏移的方式操作。

不要直接去映射每一个寄存器的物理地址,因为对于某一个驱动,虽然有很多寄存器,但基址都是一样的。

4、不要不学uboot

即便你是Linux驱动岗,uboot怎么启动kernel,都传了什么参数,涉及到的地址有哪些,uboot的驱动怎么写这些必须知道。

5、不懂内存,不足以谈驱动

一定要多看看内存相关的知识。Linux下操作的都是虚拟地址,写进寄存器的是物理地址,怎么知道虚拟地址对应的物理地址?分配dma一致性内存和分配普通内存有什么区别?

寄存器手册写的地址是物理地址,给我记住了。

dma内存问题,缓存一致性问题等,这些你都逃不掉。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论