Linux
文章平均质量分 80
tyustli
不抛弃,不放弃
展开
-
Linux 驱动学习笔记-Makefile foreach 函数(五)
Linux 驱动学习笔记-Makefile foreach 函数(五)本系列均为陈皓所著的《跟我一起写makefile》的学习笔记,只是为了加深笔者记忆,如果读者想进一步学习可阅读此书调用$(foreach var,list,text)解析功能:把参数 list 中的单词逐个取出放到参数 var 所指定的变量中,然后再执行 text 所包含的表达式。每一次 text 会返回一个字符串,...原创 2020-04-26 21:55:15 · 255 阅读 · 0 评论 -
Linux 驱动学习笔记-Makefile 文件名操作函数(四)
Linux 驱动学习笔记-Makefile 文件名操作函数(四)本系列均为陈皓所著的《跟我一起写makefile》的学习笔记,只是为了加深笔者记忆,如果读者想进一步学习可阅读此书dir调用$(dir names...)解析名称:取目录函数功能:从文件名序列 name 中取出目录部分。目录部分是指最后一个反斜杠(/ )之前的部分。如果没有反斜杠,那么返回 ./ 。返回:...原创 2020-04-26 21:38:33 · 207 阅读 · 0 评论 -
Linux 驱动学习笔记-Makefile 自动化变量(三)
Linux 驱动学习笔记-Makefile 自动化变量(三)自动化变量定义所谓自动化变量,就是这种变量会把模式中所定义的一系列的文件自动地挨个取出,直至所有的符合模式的文件都取完了。这种自动化变量只应出现在规则的命令中。自动化变量列表变量含义$@表示规则中的目标文件集。在模式规则中,如果有多个目标,那么,$@ 就是匹配于目标中模式定义的集合$%仅当目标是函数库...原创 2020-04-25 23:50:36 · 219 阅读 · 0 评论 -
Linux 驱动学习笔记-Makefile 字符串处理函数(二)
Linux 驱动学习笔记-Makefile 字符串处理函数(二)subst调用:$(subst from,to,text)解析名称:字符串替换函数功能:把字符串 text 中的 from 字符串替换成 to 字符串返回:函数返回被替换过后的字符串注意事项:暂无使用示例foo :=i am working on the street bar := $(su...原创 2020-04-25 23:37:57 · 221 阅读 · 0 评论 -
Linux 驱动学习笔记-Makefile 函数调用(一)
Linux 驱动学习笔记-Makefile 函数调用(一)函数调用语法Makefile 函数调用的语法和变量类似,也是用 $ 来标识的,其语法如下:$(function argument1, argument2, argument3)或者是:${function, argument1, argument2, argument3}这里,function 就是函数名,make 支持的函...原创 2020-04-25 22:41:09 · 199 阅读 · 0 评论 -
Linux 驱动学习笔记 - 中断管理之工作队列 (十九)
Linux 驱动学习笔记 - 中断管理之工作队列 (十九)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。工作队列是另外一种下半部执行方式,工作队列在进程上下文执行,工作队列将要推后的工作交给一个内核线程去执行,因为工作队列工作在进程上下文,因此工作队列允许睡眠或重新调度。因此如果你要推后的工作可以睡眠那么就可以选择...原创 2020-04-18 23:05:39 · 163 阅读 · 0 评论 -
Linux 驱动学习笔记 - 中断管理之 tasklet (十八)
Linux 驱动学习笔记 - 中断管理之 tasklet (十八)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。tasklet 是利用软中断来实现的另外一种下半部机制,在软中断和 tasklet 之间,建议大家使用 tasklet编程模型/* 定义 taselet */struct tasklet_struc...原创 2020-04-18 23:01:49 · 193 阅读 · 0 评论 -
Linux 驱动学习笔记 - 中断管理之上半部和下半部(十七)
Linux 驱动学习笔记 - 中断管理之上半部和下半部(十六)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。上半部与下半部上半部与下半部也称为顶半部和低半部。我们在使用 request_irq 申请中断的时候注册的中断服务函数属于中断处理的上半部,只要中断触发,那么中断处理函数就会执行。我们知道中断处理函数一...原创 2020-04-18 22:48:38 · 279 阅读 · 0 评论 -
Linux 驱动学习笔记 - 中断管理(十六)
Linux 驱动学习笔记 - 中断管理(十六)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。中断号每个中断都有一个中断号,通过中断号即可区分不同的中断,有的资料也把中断号叫做中断线。在 Linux 内核中使用一个 int 变量表示中断号。request_irq在 Linux 内核中要想使用某个中断是需要申请的...原创 2020-04-18 22:24:40 · 511 阅读 · 0 评论 -
Linux 驱动学习笔记 - 时钟管理和内核定时器(十五)
Linux 驱动学习笔记 - 时钟管理和内核定时器(十五)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。处理绕回API函数描述time_after(unknown, known)unknown 通常为 jiffies,known 通常是需要对比的值time_before(unkno...原创 2020-04-15 11:28:23 · 476 阅读 · 0 评论 -
Linux 驱动学习笔记 - 按键输入 (十四)
Linux 驱动学习笔记 - 按键输入 (十四)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。注意!!!本章例程只是为了演示 Linux 下 GPIO 输入驱动的编写,实际中的按键驱动并不会采用本章中所讲解的方法,Linux 下的 input 子系统专门用于输入设备!添加 pinctrl 节点在 iomuxc...原创 2020-04-13 23:18:49 · 202 阅读 · 0 评论 -
Linux 驱动学习笔记 - beep(九)
Linux 驱动学习笔记 - beep(九)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。添加 pinctrl 节点在 iomuxc 节点的 imx6ul-evk 子节点下创建一个名为 pinctrl_beep 的子节点,节点内容如下所示:/ {&iomuxc { imx6ul-evk { ...原创 2020-04-13 12:36:21 · 494 阅读 · 0 评论 -
Linux 驱动学习笔记 - gpio 子系统 (八)
Linux 驱动学习笔记 - gpio 子系统 (八)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。pinctrl 子系统和 gpio 子系统的联系pinctrl 子系统重点是设置 PIN(有的 SOC 叫做 PAD) 的复用和电气属性,如果 pinctrl 子系统将一个 PIN 复用为 GPIO 的话,那么接下...原创 2020-04-13 11:22:55 · 11150 阅读 · 1 评论 -
Linux 驱动学习笔记 - pinctrl 子系统 (七)
Linux 驱动学习笔记 - pinctrl 子系统 (七)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。LED 初始化流程修改设备树,添加相应的节点,节点里面重点是设置 reg 属性,reg 属性包括了 GPIO 相关寄存器。获 取 reg 属 性 中 IOMUXC_SW_MUX_CTL_PAD_GP...原创 2020-04-12 23:52:19 · 891 阅读 · 0 评论 -
Linux 驱动学习笔记 - 设备树点亮 LED (六)
Linux 驱动学习笔记 - 设备树点亮 LED (六)本系列均为正点原子 Linux 驱动的学习笔记, 以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。修改设备树文件在根节点 / 下创建一个名为 alphaled 的子节点,打开 imx6ull-alientek-emmc.dts 文件,在根节点 / 最后面输入如下所示内容:alphaled { #a...原创 2020-04-11 09:59:43 · 557 阅读 · 0 评论 -
Linux 驱动学习笔记-第一个 LED 驱动(二)
Linux 驱动学习笔记-第一个 LED 驱动(二)本系列均为正点原子 Linux 驱动的学习笔记,以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。预备知识ioremap该函数用于获取指定物理地址空间对应的虚拟地址空间,该定义在 arch/arm/include/asm/io.h 文件中,函数原型如下#define ioremap(cookie, size) ...原创 2020-03-31 23:42:33 · 271 阅读 · 0 评论 -
Linux 驱动学习笔记-字符设备驱动模板(一)
Linux 驱动学习笔记-字符设备驱动模板(一)本系列均为正点原子 Linux 驱动的学习笔记,以便加深笔者记忆。如读者想进一步学习,可以到正点原子官网中下载资料进行学习。字符设备驱动入口及出口函数 /* 驱动入口函数 */static int __init xxx_init(void){ /* 入口函数具体内容 */ return 0;} /* 驱动...原创 2020-03-31 21:52:10 · 322 阅读 · 0 评论