Linux
文章平均质量分 66
憨憨的瓜皮
一个迷失方向的嵌入式码农~
展开
-
pinctrl 子系统学习
pinctrl 子系统简介Linux 驱动讲究驱动分离与分层,是驱动分离与分层思想下的产物。pinctrl 子系统用途获取设备树中 pin 信息。根据获取到的 pin 信息来设置 pin 的复用功能根据获取到的 pin 信息来设置 pin 的电气特性,比如上/下拉、速度、驱动能力等。pinctrl子系统例程&iomuxc { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_hog_1>; imx6ul-ev原创 2022-05-24 09:15:36 · 779 阅读 · 0 评论 -
Linux 并发与竞争
介绍Linux是一个多任务操作系统,肯定会存在多个任务共同操作同一段内存或者设备的情况,多个任务甚至中断都能访问的资源叫做共享资源,就和共享单车一样。在驱动开发中要注意对共享资源的保护,也就是要处理对共享资源的并发访问。比如共享单车,大家按照谁扫谁骑走的原则来共用这个单车,如果没有这个并发访问共享单车的原则存在,只怕到时候为了一辆单车要打起来了。在 Linux 驱动编写过程中对于并发控制的管理非常重要,本章我们就来学习一下如何在 Linux 驱动中处理并发。并发与竞争并发与竞争简介Linux 系统是原创 2022-04-18 15:47:13 · 1102 阅读 · 0 评论 -
CMake学习
简介cmake 是一个跨平台的自动构建工具, 前面导语部分也已经给大家介绍了, cmake 的诞生主要是为了解决直接使用 make+Makefile 这种方式无法实现跨平台的问题,所以 cmake 是可以实现跨平台的编译工具,这是它最大的特点。cmake和Makefile区别这是我刚开始模糊的原因,就是cmake和Makefile这两者间有什么区别,为什么要用cmake,他有什么优点么?为什么github上很多项目都用camke?他到底是作什么用的。现在我们来看一个图,这是我从正点原子的手册上看到的原创 2022-03-31 11:38:06 · 5449 阅读 · 0 评论 -
Linux常用命令
简介在工作过程中碰到比较好用的命令,记录下来,方便以后使用。详细内容grep -nR “xx”便利查找文件中包含xx的所有文件原创 2022-03-30 11:19:49 · 1181 阅读 · 0 评论 -
明远智睿Uboot调试——uboot倒数修改
前言公司使用明远智睿的核心板,突发奇想,改一下他的倒计时,调试过程如下。调试过程先上电看看Uboot目前的倒数值是什么。这是设备上电后的显示,没有我们想要的参数,我们要看到bootdelay这个参数。我们使用print命令查看当前uboot详细参数。在这里我们看到了有bootdelay这个项,目前倒数时间默认为3秒。我们如果想要只修改这个设备倒数时间直接使用uboot下的命令就好。setenv bootdelay 6 //配置倒数时间为6秒saveenv //保存配置设备重新上电原创 2022-03-28 12:10:25 · 1274 阅读 · 0 评论 -
【printk学习记录】
简介在内核中如何想要打印相关的信息,不能使用printf,内核提供了一个类似的打印函数printk。其中我认为最重要的区别就是printk自带日志级别。printk提供了如下几个打印级别,需要包含头文件<linux/kernel.h>:KERN_EMERG用于紧急时间消息,他们一般是系统崩溃前的提示KERN_ALERT用于需要立即采取动作的情况KERN_CRIT临界状态,通常涉及严重的硬件或软件操作失败KERN_ERR用于报告错误状态。报告硬件问题KERN_WARNING对原创 2022-03-24 10:43:53 · 2717 阅读 · 0 评论 -
Linux Netlink通信
Linux Netlink通信前言什么是Netlink通信机制那么Netlink有什么优势呢?netlink特点用户态数据结构msghdrsockaddr_lniovecnlmsghdr用户空间Netlink socket API创建socket地址绑定bind发送netlink消息接收netlink消息内核空间Netlink socket API创建Netlink socket发送单播消息 netlink_unicast发送广播消息 netlink_broadcast释放 netlink socket用户原创 2022-03-04 15:20:17 · 645 阅读 · 0 评论