
linux驱动学习
蜜汁辣酱^_^
有问题请发邮件到2815287145@qq.com讨论
展开
-
字符设备驱动一个驱动支持多个设备
一个驱动支持多个设备时有两种方式 一个cdev对象管理多个设备 每个cdev对象管理一个设备一套文件 如何区分呢,open函数传入参数来区分,一个struct inode代表一个真实的文件,struct file表示一个打开的文件static int key_open(struct inode *inode, struct file *filp){}struct inode { kdev_t i_dev; /* inode所在的device代码 */ umode_t i_mode; /*原创 2021-05-07 22:59:39 · 638 阅读 · 0 评论 -
gpio子系统和pinctrl子系统学习
Imx6ul.dtsi 下找到iomuxc节点iomuxc: iomuxc@020e0000 { compatible = "fsl,imx6ul-iomuxc"; reg = <0x020e0000 0x4000>;};全局搜索字符串fsl,imx6ul-iomuxc,有个驱动文件里面写有pinctr 内容,gpio的配置读写,由soc厂商实现所以直接copy,Linux内核利用 compatible匹配来确定驱动通过 of.h下的节点驱动函数imx6ull-alientek-原创 2021-04-24 23:10:50 · 342 阅读 · 0 评论 -
Linux定时器jiffies学习
struct timer_list { struct list_head entry; /* 定时器链表 */ unsigned long expires; /* 启动定时长 */ struct tvec_base *base; void (*function)(unsigned long); /* 定时执行函数 */ unsigned long data; /* 传递给func的参数 */ int slack;};apivoid add_timer(struct timer_list原创 2021-04-24 22:59:03 · 888 阅读 · 0 评论 -
linux启动流程学习
Linux启动第一阶段启动文件linux/arch/arm/kernel/head.SENTRY(stext):__vet_atags 校验设备树是否有效__create_page_tables创建页表ldr r13, =__mmap_switched 存入r13,使能mmu之后调用__enable_mmu->__turn_mmu_on->mov r3, r13 即调用__mmap_switched->start_kernel第二阶段 init/main.casmli原创 2021-04-13 22:28:29 · 189 阅读 · 0 评论 -
Makefile语法学习
好记心不如烂笔头。这份是个人学习imx6ull 裸机开发开发的makefile文件,参考资料《跟我一起写makefile》每条命令必须以tab键开始,make 命令会为 Makefile 中的每个以 TAB 开始的命令创建一个 Shell 进程去执行。规则:target … : prerequisites …command#后面的内容为注释使用变量 $(name)通配符 “*”,“?”和“[…]” ,同shell语法模式规则 % 表示任意%.o : %.c命令赋值符号的含义自动原创 2020-11-18 22:14:58 · 279 阅读 · 0 评论 -
字符设备驱动框架
好记性不如烂笔头struct gpioled_dev{ dev_t devid; struct cdev c_dev; struct class *usr_class; struct device *usr_dev; struct device_node *nd; int pin; int pin_status; int major; int minor;};static int __init gpioled_init(voi原创 2020-11-18 21:15:36 · 156 阅读 · 0 评论 -
linux驱动学习-linux中断程序编写流程
Linux中断:1、确定中断号2、申请中断号、request_irq 不用一定要释放free_irq3、编写中断服务函数request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, const char *name, void *dev){ return request_threaded_irq(irq, handler, NULL, flags, name, dev);}中断的上原创 2020-11-10 21:28:39 · 554 阅读 · 0 评论