
imx6ull
文章平均质量分 61
wuzhidexiaoxiaoxia
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
linux常用工具
windows下安装FileZilla。随便配置下站点就可以了。原创 2024-12-19 11:22:48 · 184 阅读 · 0 评论 -
调试CAN驱动
1、先调试probe函数。原创 2024-05-11 10:39:50 · 405 阅读 · 0 评论 -
platform驱动程序(十)
device_driver结构体 (表示设备驱动 )中有个名为 of_match_table的成员变量,此成员变量保存着驱动的 compatible匹配表,设备树中的每个设备节点的 compatible属性会和 of_match_table表中的所有成员比较,查看是否有相同的条目,如果有的话就表示设备和此驱动匹配,设备和驱动匹配成功以后 probe函数就会执行。的设备,如果有的话就将两者联系起来。同样的,当向系统中注册一个设备的时候,总线就会在左侧的驱动中查找看有没有与之匹配的设备,有的话也联系起来。原创 2024-04-28 10:20:04 · 347 阅读 · 0 评论 -
linux gpio中断处理(九)
interrupt-parent说明中断控制器是GPIO1,interrupts说明中断号是IO18,中断类型是双边沿触发。ii)interrupt-parent、interrupts在设置中断的时候,这两个设备树信息成对出现。name:中断名字,设置以后可以在 /proc/interrupts文件中看到对应的中断名字。dev:如果中断设置为共享 (IRQF_SHARED)的话,此参数用来区分具体的中断。handler:中断处理函数,当中断发生以后就会执行此中断处理函数。b)申请中断,激活中断。原创 2024-04-24 09:55:05 · 979 阅读 · 0 评论 -
linux内核定时器(八)
假如HZ 为最大值1000 的时候,32 位的jiffies 只需要49.7 天就发生了绕回,对于64 位的jiffies 来说大概需要5.8 亿年才能绕回,因此jiffies_64 的绕回忽略不计。b)高节拍率会导致中断的产生更加频繁,频繁的中断会加剧系统的负担, 1000Hz和 100Hz的系统节拍率相比,系统要花费 10倍的“精力”去处理中断。a)高节拍率会提高系统时间精度,如果采用 100Hz的节拍率,时间精度就是 10ms,采用。间要求严格的函数来说,能够以更高的精度运行,时间测量也更加准确。原创 2024-04-24 09:04:15 · 381 阅读 · 0 评论 -
设备树完成LINUX蜂鸣器(七)
设备节点的方法见上一章描述,宏定义可以通过SNVS_TAMPER1直接 在/home/wyd/linux/kernel/arch/arm/boot/dts的imx6ul-pinfunc.h里面找就可以了。a)我们通过设置设备树的iomuxc的管脚,设置根节点下的外设节点,来完成设备树。b)设置完pinctrl设置后,设置外设节点,在/节点后面创建一个节点,只设置两个属性,1、首先我们要通过原理图,找到蜂鸣器对应的芯片管脚,打开原理图,搜索beep。insmod会响四次。原创 2024-04-18 15:13:19 · 243 阅读 · 0 评论 -
linux下pinctrl子系统和gpio子系统(六)
b) 通过查看/home/wyd/linux/kernel/arch/arm/boot/dts/imx6ul-pinfunc.h,可以分析出宏定义满足如下关系。a) 根据上一节内容,我们可以知道,在iomuxc节点下,又增加了imx6ul-evk子节点,在此子节点下,又增加了各个pinctrl子节点。c)找出与pinctrl相关联的设备节点文件。可以分析出来其他外设引用pinctrl需要配置的属性参数。原创 2024-04-16 13:56:26 · 168 阅读 · 0 评论 -
linux下设备树(五)
节点的属性信息里面保存了驱动所需要的内容,因此对于属性值的提取非常重要。1、 修改linuxDTS设备树文件,/arch/arm/boot/dts/imx6ull-alientek-emmc.dts。最终可以获取/arch/arm/boot/dts/imx6ull-alientek-emmc.dts设备树的ddd节点信息。#address-cells属性值决定了子节点 reg属性中地址信息所占用的字长 (32位 ),#size-cells属性值决定了子节点 reg属性中长度信息所占的字长 (32位 )原创 2024-04-15 22:59:36 · 507 阅读 · 1 评论 -
新的字符设备框架(四)
设备号、设备名字、设备操作、设备对应的文件。主要用了接口函数register_chrdev和unregister_chrdev函数。原创 2024-04-14 22:10:04 · 363 阅读 · 1 评论 -
linux字符设备驱动框架(三)
如果不修改,驱动指向内核与开发板内核不一致,就会导致insmod ko文件的时候失败。d)将chrdevbase.ko拷贝到nfs文件系统的/home/root文件夹下。e)重启开发板,会在home/root/下发现chrdevbase.ko文件。b)修改makefile,将KERNELDIR改为编译内核的文件夹路径。如果不加体系结构和编译器信息,就会出现如下问题,PIC错误。a)先将驱动文件拷贝到指定文件夹下。1、运行linux驱动程序用例。原创 2024-04-11 09:46:01 · 243 阅读 · 1 评论 -
imx6ull的ubantu环境设置(一)
网上教程很多,vmware16好像不用安装,因为我可以直接从windows拷贝文件到linux,所以就没有安装。c)把里面的内容都删掉,替换为下面的内容,我的是阿里云源。把交叉编译工具拷贝到linux指定文件夹。1、安装vmware虚拟机扩展工具。e)查看交叉编译器是否设置成功。2、设置linux的软件源。c)在最后一行导出环境变量。e)更新软件,可以不更新。3、设置交叉编译环境。原创 2024-04-10 11:14:21 · 344 阅读 · 1 评论 -
IMX6ULL uboot+zimage+rootfs的构建(二)
MMC: FSL_SDHC: 0, FSL_SDHC: 1 有两个MMC控制器,其中FSL_SDHC(0)接的 SD卡, FSL_SDHC(1)接的 EMMC。U-Boot 2016.03 (Apr 08 2024 - 15:53:08 +0800) uboot版本和编译时间。uboot编译主要需要三种命令。4、uboot的常用命令。原创 2024-04-08 17:09:46 · 1483 阅读 · 0 评论