
Linux 设备模型
本栏主要讲述platform的学习笔记
楓潇潇
这个作者很懒,什么都没留下…
展开
-
Linux字符设备驱动基础(一)
1 Linux驱动分类字符设备:按照字节的顺序读写的设备,其不能随机的读取设备内存中的某一数据。字符设备是面向流的设备,常见的字符设备有串口、控制台、LED等。块设备:通常是指可从设备的任意位置读取到一定长度数据的设备。常见的块设备有:SD卡、U盘、磁盘等。2 字符设备、字符设备驱动与用户空间三者之间的关系1)在Linux内核中:a – 使用cdev结构体来描述字符设备...原创 2019-06-05 22:41:56 · 384 阅读 · 0 评论 -
Linux字符设备驱动基础(二)
Linux字符设备基础(二)5 设备号相关操作设备号由主设备号和次设备号组成。主设备号用来标识与设备文件相连的驱动程序,用以反映设备类型;次设备号是用于驱动程序来辨别所操作的具体设备,用以区分同类型的设备。linux内核中,设备号用dev_t来描述,Linux 4.14.14中定义如下:typedef u_long dev_t;在32位机中是4个字节,高12bit表示主设备号,低20b...原创 2019-06-05 22:47:19 · 273 阅读 · 0 评论 -
Linux字符设备驱动基础(三)
Linux 字符驱动基础(三)6 创建设备节点6.1 手动创建设备节点查看申请的设备名及主设备号:cat /proc/devices# cat /proc/devicesCharacter devices: 1 mem 2 pty 3 ttyp 4 /dev/vc/0 4 tty 5 /dev/tty 5 /dev/console 5 /dev/ptmx...原创 2019-06-05 22:50:55 · 457 阅读 · 0 评论 -
Linux字符设备驱动基础(四)
Linux 字符驱动基础(四)7 Linux字符设备驱动注册示例static int __init chardev_driver_test_init(void){ int ret; int major = 126; int minor = 0; struct cdev chardev_test; struct class *test_class; ...原创 2019-06-05 22:53:09 · 220 阅读 · 0 评论 -
Linux字符设备驱动基础(五)
Linux 字符驱动基础(五)8 文件操作集8.1 文件操作集概述struct file_operations { struct module *owner; //拥有该结构的模块指针,一般有THIS_MODULES loff_t (*llseek) (struct file *, loff_t, int); //用来修改文件当前读写的位置 ssize_t (*read) (struc...原创 2019-06-05 22:57:24 · 388 阅读 · 0 评论 -
Linux Platform总线学习
Platform 平台驱动学习1 Platform总线、设备、驱动介绍1.1 什么是Platform总线Platform是一种虚拟、抽象的总线,其将设备与驱动绑定在一起,系统每在注册设备时会寻找与之匹配的的驱动,同理系统每在注册驱动时也会去寻找与之匹配的设备,而该部分工作就是由总线来完成的。由图片可知,Platform设备在内核中的实现主要包括三个部分:Platform Bus,基于...原创 2019-07-12 23:26:23 · 474 阅读 · 0 评论