fmt函数linux,Linux驱动开发——pr_fmt的用法
作者:彭东林
在阅读kernel代码的时候,总是看到有很多驱动都在第一行定义pr_fmt,闲来没事,分析了一下, 发现,确实挺方便的。下面记录分享一下。
我们知道,在驱动中可以使用dev_dbg来输出log,在输出的log中会有一些额外的信息,如所属的device的name。
而pr_fmt就可以实现这个目的,先看一个用法(drivers/i2c/i2c-core.c):
#define pr_fmt(fmt) "i2c-core: " fmt#include#include#include... ...
但是在这个文件中并没有看到pr_fmt被使用。然后,猜测应该是被哪个宏使用了,所以我在include下搜索pr_fmt发现:
include/linux/printk.h:271: printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__)
include/linux/printk.h:273: printk(KERN_ALERT pr_fmt(fmt), ##__VA_ARGS__)
include/linux/printk.h:275: printk(KERN_CRIT pr_fmt(fmt), ##__VA_ARGS__)
include/linux/printk.h:277: printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
include/linux/printk.h:279: printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
include/linux/printk.h:282: printk(KERN_NOTICE pr_fmt(fmt), ##__VA_ARGS_
fmt函数linux,Linux驱动开发——pr_fmt的用法相关推荐
- Linux驱动开发--pr_fmt的用法
在阅读kernel代码的时候,总是看到有很多驱动都在第一行定义pr_fmt,闲来没事,分析了一下, 发现,确实挺方便的.下面记录分享一下. 我们知道,在驱动中可以使用dev_dbg来输出log,在输出 ...
- Linux字符驱动开发学习总结
linux驱动编写(虚拟字符设备编写) 昨天我们说了一些简单模块编写方法,但是终归没有涉及到设备的编写内容,今天我们就可以了解一下相关方面的内容,并且用一个实例来说明在linux上面设备是如何编写的. ...
- Linux设备驱动开发基础
1.驱动概述和开发环境搭建 1.1驱动设备的作用 对设备驱动最通俗的解释就是"驱动硬件设备行动".驱动与底层硬件直接打交道,按照硬件设备的具体工作方式,读写设备的寄存器,完成设备的 ...
- linux设备驱动总结,《Linux设备驱动开发详解(第3版)》海量更新总结
本博实时更新<Linux设备驱动开发详解(第3版)>的最新进展. 2015.2.26 几乎完成初稿. [F]是修正或升级:[N]是新增知识点:[D]是删除的内容 第1章 <Linux ...
- linux设备驱动开发详解 第三版,《Linux设备驱动开发详解(第3版)》进展同步更新...
2014.8.25 目前初步完成2-11章以及第22章 <Linux设备驱动的调试>,相对于第2版,这几章主要的变更. 本博实时更新<Linux设备驱动开发详解(第3版)>的最 ...
- 《Linux设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)进展同步更新
本博实时更新<Linux设备驱动开发详解(第3版)>的最新进展. 目前已经完成稿件. 2015年8月9日,china-pub开始上线预售: http://product.china-pub ...
- Linux设备驱动开发概述
作者:宋宝华 email:author@linuxdriver.cn 在过去这些年,Linux已经成功应用于服务器和桌面系统,而近年来,随着嵌入式系统应用的持续升温,Linux也开始广泛应用于嵌入式领 ...
- Linux 设备驱动开发思想 —— 驱动分层与驱动分离
前面我们学习I2C.USB.SD驱动时,有没有发现一个共性,就是在驱动开发时,每个驱动都分层三部分,由上到下分别是: 1.XXX 设备驱动 2.XXX 核心层 3.XXX 主机控制器驱动 而需要我们编 ...
- linux cached释放_正点原子Linux第四十一章嵌入式Linux LED驱动开发实验
1)资料下载:点击资料即可下载 2)对正点原子Linux感兴趣的同学可以加群讨论:935446741 3)关注正点原子公众号,获取最新资料更新 第四十一章嵌入式Linux LED驱动开发实验 上一章我 ...
最新文章
- 使用php与mysql构建我们的网站
- js父页面和子页面之间传值
- 变化很大!2021年THE世界大学排名出炉,这些中国高校表现出色!
- 测试:脱离VS2010使用自动化测试时出现 6DA215C2-D80D-42F2-A514-B44A16DCBAAA 错误
- 攻击 | 破解windows7密码(利用PE系统破解XP密码)
- GIS专家:云GIS带来的最大影响是体系架构
- 不是程序员,代码也不能太丑!python官方书写规范:任何人都该了解的 pep8
- 如何让excel说话,vba的speak功能
- 糖友控糖是在控什么糖呢
- 大佬云集的在线少儿英语市场,谁才是那匹冲出重围的黑马?
- uniapp 中如何使用echart_uni-app中使用Echarts绘画图表
- 一般云服务器支持多少并发,一般云服务器支持是多大并发?
- c语言输出三门课程平均值,实验作业一 - 先奕宣202005018110的个人空间 - OSCHINA - 中文开源技术交流社区...
- chatbot_Chatbot开发简介
- 前端展示office
- 清华毕业生都去哪儿了
- Validated、Valid 、Validator,他们的区别你知道几个
- sai球体绘制和上色教程
- 武汉天喻信息产业股份有限公司牵手广州润普
- final 、finally的区别