随笔分类 - Linux
Linux相关技术学习
摘要:2018年5月份开始在JZ2440上陆续移植了u-boot-2016.11、u-boot-spl-2016.11、linux-4.17和busybox-1.28.4,其中linux-4.17和busybox-1.28.4是当时官方最新的版本,以此作为学习linux两年来的总结。 遗憾的是,当时在移植
阅读全文
摘要:这里是要把http://www.cnblogs.com/hackfun/p/6260396.html中的enc28j60网卡驱动模块,添加到2.6.22.6内核中,这个模块代码不需要任何修改。只需要在内核目录下的相关配置脚本文件,如Makefile,Kconfig,.config等,修改某些配置就行
阅读全文
摘要:本来想移植DM9000网卡的驱动,无奈硬件出了点问题,通过杜邦线链接开发板和DM9000网卡模块,系统上电,还没加载网卡驱动就直接崩溃了,找不到原因。。。刚好手上有一个enc28j60的网卡模块,于是就着手移植enc28j60的驱动。 其实移植enc28j60的驱动也十分简单,网上有现成的,只需要分
阅读全文
摘要:snull是《Linux Device Drivers》中的一个网络驱动的例子。这里引用这个例子学习Linux网络驱动。 因为snull的源码,网上已经更新到适合最新内核,而我自己用的还是2.6.22.6比较旧的内核。而网上好像找不到旧版的snull。因此结合《Linux Device Driver
阅读全文
摘要:spi子系统之驱动SSD1306 OLED 接触Linux之前,曾以为读源码可以更快的学习软件,于是前几个博客都是一边读源码一边添加注释,甚至精读到每一行代码,实际上效果并不理想,看过之后就忘记了。主要原因是没理解透程序架构,各个模块之间的关系,如何联系在一起,再加上没有实例验证。后来逐渐发现,理解
阅读全文
摘要:理解I2C设备驱动框架,主要围绕四个结构体去分析就容易了。 struct i2c_algorithm:提供I2C协议的实现的操作,如:master_xfer实现数据收发的最基本方法。 struct i2c_adapter:每一个i2c_adapter都代表一个I2C物理接口,一个cpu可以有多个I2
阅读全文
摘要:关于关于驱动设备模型相关概念请参考《Linux Device Drivers》等相关书籍,和内核源码目录...\Documentation\driver-model 简单来说总线(bus),驱动(driver),设备(device)这三者之间的关系就是:驱动开发者可以通过总线(bus)来将驱动(dr
阅读全文
摘要:1.代码 input_subsys.drv.c 在linux输入子系统(input subsystem)之按键输入和LED控制的基础上有小改动,input_subsys_test.c不变。 input_subsys.drv.c 2. input_subsys_drv.c, input.c, evde
阅读全文
摘要:使用POLL机制代替linux输入子系统(input subsystem)之按键输入和LED控制中的异步通知,实现同样的效果。 1.代码 只简单修改input_subsys_test.c, input_subsys_drv.c不变 input_subsys_test.c 2. 实验 2.1 安装驱动
阅读全文
摘要:实验现象:在控制台打印按键值,并且通过按键控制相应的LED亮灭。 1.代码 input_subsys_drv.c input_subsys_test.c makefile 2. 实验 2.1 安装驱动程序: insmod input_subsys_drv.ko 运行应用程序 ./input_subs
阅读全文
摘要:1 int class_device_register(struct class_device *class_dev) 2 { 3 /* [cgw]: 初始化一个struct class_device */ 4 class_device_initialize(class_dev); 5 /* [cgw]: 添加一个struct class_device...
阅读全文
摘要:1 /* Class Device Stuff */ 2 3 int class_device_create_file(struct class_device * class_dev, 4 const struct class_device_attribute * attr) 5 { 6 int error = -EINVAL;...
阅读全文
摘要:char_dev.c里的中文注释,仅代表个人理解,仅供参考。如有错误之处,请指出,谢谢!
阅读全文
摘要:注释仅代表个人理解,难免有错误之处,仅供参考! 219 return p; 220 }
阅读全文
摘要:最近结合《Linux Device Drivers》对kobject的理解,对kobject.c文件添加注释,仅供参考! 1 /** 2 * populate_dir - populate directory with attributes. 3 * @kobj: object we're work
阅读全文

浙公网安备 33010602011771号