随笔分类 -  Linux&driver

摘要:一.Preface 构建根文件系统的工具通常有两种,Buildroot和Yocto。6ull这块芯片的出厂根文件系统是使用Yocto进行构建的,但是Yocto会用到国外的镜像包(很大),所以国内开发者一般不使用Yocto工具自己进行构建,要么直接使用厂家(NXP)Yocto构建好的根文件系统,要么使 阅读全文
posted @ 2024-12-23 15:35 Charles_hui 阅读(30) 评论(0) 推荐(0) 编辑
摘要:一.前言 IAP升级在许多场合都会用到,而且涉及到芯片的核心底层,所以特此记录。 二.流程和框架 1.flash分区 将flash分为boot_app区和user_app区 boot_app存放的起始地址为0x00000000,大小为0x00008000(32kb) user_app存放的起始地址为 阅读全文
posted @ 2024-10-25 17:15 Charles_hui 阅读(45) 评论(0) 推荐(0) 编辑
摘要:1.为什么要交叉编译 有一个imx6ull板,需要将一个程序下载进去,让其运行起来。如果直接用本地系统的编译器来编译的话,程序有可能编译出错,或者编译成功不能正常运行,所以需要用官方指定的编译工具来做交叉编译。 2.怎么使用交叉编译 参考我当时的一个调试代码的makefile 点击查看代码 #指定使 阅读全文
posted @ 2024-09-07 13:19 Charles_hui 阅读(13) 评论(0) 推荐(0) 编辑
摘要:platform bus资料参考:https://www.jb51.net/article/231922.htm 阅读全文
posted @ 2024-08-21 19:56 Charles_hui 阅读(2) 评论(0) 推荐(0) 编辑
摘要:一.设定屏幕参数 1.更改设备树下的lcd节点参数 目录:arch/arm/boot/dts/imx6ull-14x14-nand-7-1024x600-c.dts 点击查看代码 &i2c2 { goodix_ts@5d { reg = <0x5d>; }; }; &lcdif { display0 阅读全文
posted @ 2024-08-21 19:00 Charles_hui 阅读(219) 评论(0) 推荐(0) 编辑
摘要:一.前言 做linux开发也有一段时间了,对整个系统已经熟悉了很多,linux是一个非常大的系统,现在对常见的驱动做一个总结,以此来加深记忆和理解。 二.常见驱动及其子系统分类 1.Linux设备分类 linux系统抽象出的设备可以分为三类:char_dev,block_dev,net_dev。字符 阅读全文
posted @ 2024-08-16 18:42 Charles_hui 阅读(174) 评论(0) 推荐(0) 编辑
摘要:1.vim -t tcp_v4_rcv 查找内核里的某一个函数“tcp_v4_rcv ” 2.ctrl+] 跳转到函数或变量定义 3.g+ctrl+] 跳转到函数或变量定义(选择不同架构) 4.ctrl+o 返回 5./ 查找 6 阅读全文
posted @ 2024-03-01 11:00 Charles_hui 阅读(29) 评论(0) 推荐(0) 编辑
摘要:1.dtsi文件。一般命名为xxx.dtsi。i表示include ,表示被别的dts文件引用。dtsi文件跟dts文件的语法是完全相同的。 2.程序员一般不需要从零写dts文件,而是修改,改的对不对,就需要编译一下。内核中直接使用dts文件太过于低效,因此需要使用编译过后的二进制格式的dtb文件。 阅读全文
posted @ 2024-01-01 20:12 Charles_hui 阅读(31) 评论(0) 推荐(0) 编辑
摘要:一、概述 * 串口是字符设备驱动 二、串口驱动文件分析 1. 硬件相关: drivers/tty/serial/imx.c 2. 串口核心层: drivers/tty/serial/serial_core.c 3. TTY层: drivers/tty/tty_io.c 4. n_tty.c:链路规层 阅读全文
posted @ 2023-12-25 14:23 Charles_hui 阅读(178) 评论(0) 推荐(0) 编辑
摘要:内核延时 msleep(1) 阻塞式延时1ms mdelay(1) 非阻塞式延时1ms semaphore 用于进程和进程之间的同步 允许有多个进程进入临界区代码执行 进程获取不到信号量锁会陷入休眠,让出cpu 信号量本质是基于进程调度器,UP和SMP下的实现无差异。 被信号量锁保护的临界区代码允许 阅读全文
posted @ 2023-12-17 21:22 Charles_hui 阅读(18) 评论(0) 推荐(0) 编辑
摘要:Uboot启动流程 1.找到u-boot.lds文件,再找到__image_copy_start 2.uboot 中查找“__image_copy_start”,发现u-boot.map有__image_copy_start(需要编译得到.map) 3.到__image_copy_start 为 0 阅读全文
posted @ 2023-11-08 22:43 Charles_hui 阅读(17) 评论(0) 推荐(0) 编辑
摘要:1.关闭息屏功能 2.开机自启动脚本 https://www.cnblogs.com/lidabo/p/17341397.html 阅读全文
posted @ 2023-11-08 21:46 Charles_hui 阅读(7) 评论(0) 推荐(0) 编辑
摘要:1.不同板子的设备树文件都存放在 arch/arm/boot/dts中。并且将设备树的文件名放入对应的Makefile中,这样设备树才能被编译。 2.".dtsi"是设备树“dts”的头文件,一般用来描述SOC的共有信息,例如CPU、串口、GPIO、IIC,中断等等。板子设备的特有信息一般放在.dt 阅读全文
posted @ 2023-10-28 15:01 Charles_hui 阅读(85) 评论(0) 推荐(0) 编辑
摘要:cat /proc/mtd 查看 Nand Flash 分区情况 flash_erase /dev/mtd3 0 0nandwrite -s 0x60000 -p /dev/mtd3 /home/root/imx6ull-14x14-nand-7-1024x600-c.dtbsync flash_e 阅读全文
posted @ 2023-09-21 15:26 Charles_hui 阅读(46) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示