linux驱动程序
文章平均质量分 79
yaxinsn
Linux系统开发与驱动开发,windows系统以及驱动开发
展开
-
printk(%p的各种方式)
https://www.kernel.org/doc/Documentation/printk-formats.txtIf variable is of Type, use printk format specifier:--------------------------------------------------------- int %d or %x unsign转载 2017-06-21 11:55:37 · 8885 阅读 · 1 评论 -
BPF socket filter
伯克利包过滤(Berkeley Packet Filter,BPF)以dhcpc过滤udp port 68为例,进行一下说明static const struct sock_filter filter_instr[]原创 2017-06-06 19:26:57 · 1994 阅读 · 0 评论 -
IPQ4019MTD分区生成的过程
简介本文介绍一个IPQ4019的MTD分区信息是如何从配置文件一步步传递到linux内核的。这个过程有几个部分组成,分区信息在编译过程中的传递;升级时写入flash区;设备上电时linux如何得到分区信息。 上电后linux打印的MTD分区如下图。 分区信息在编译过程中的传递原始的配置文件BOOT.BF.3.1.1/boot_images/build/ms/bin/原创 2017-04-21 13:37:17 · 10567 阅读 · 6 评论 -
从设备树的reg到/proc/iomem
在linux系统中,iomem_resource的信息被输出到/proc/iomem中。我们以高通IPQ4019芯片为例进行一下示例说明step1 在/proc/iomem中看一下iomem_resource的情况[root@Abloomy:~]# cat /proc/iomem060f8800-060f88ff : qscratch_base078af000-07原创 2017-04-20 17:26:15 · 4164 阅读 · 2 评论 -
ipq4019 识别板卡型号的过程
openwrt系统启动后,会在/tmp/sysinfo/生成两个文件。其中保存了板卡型号的信息。如下日志。[root@Abloomy:sysinfo]# pwd/tmp/sysinfo[root@Abloomy:sysinfo]# lsboard_name model[root@Abloomy:sysinfo]# # cat board_nameap-dk01.1-c1原创 2017-04-17 18:35:00 · 6332 阅读 · 2 评论 -
内核中取得调用进程PID
task_pid_nr(current);原创 2016-11-03 16:17:20 · 3063 阅读 · 0 评论 -
在新linux中使用proc_create_data编写proc
主要讲使用proc_create_data如何传递私有数据。其中可以参考/fs/proc/uptime.c以下是我在工作中,针对一个phy驱动写的一个procconst char *___dev_name(const struct device *dev){ /* Use the init name until the kobject becomes avail原创 2016-07-19 15:03:04 · 14938 阅读 · 1 评论 -
openwrt编译qca驱动不成功。gcc -isystem问题。
在最新openwrt里移植qca驱动发现,编译不成功,错误如正下:GNU C (OpenWrt/Linaro GCC 4.8-2014.04 unknown) version 4.8.3 (mips-openwrt-linux-uclibc) compiled by GNU C version 4.4.7 20120313 (Red Hat 4.4.7-16), GMP v原创 2016-01-09 16:10:58 · 7983 阅读 · 4 评论 -
backports的层次
backports的层次 引言Linux 无线驱动的开源项目backports的分析。 介绍整个驱动代码分成两个结构。80211通用的功能提取出来做成通用层,这一部分叫做soft mac。而一些与芯片处理相关的部分代码放在各个芯片目录下,这部分是芯片的特定mac层。 一般而言 mac驱动有两个方面,一是数据转发,二是管理。我们把这两个方面,分别叫作数据原创 2015-02-27 15:44:03 · 2850 阅读 · 1 评论 -
read_proc的用法实例
说明本测试程序主要参考了《linux设备驱动程序》第三版的第四章“调试技术”的‘/proc文件’一节。并对一些关键函数进行了实例化。以下是mod1.c#include#include#include#include /* read_pr原创 2011-07-27 11:06:58 · 14120 阅读 · 5 评论 -
嵌入式系统linux 记录内存panic
简介在内存发生panic时,需要把panic的日志保存下来。以方便日后进行分析。目前有三种记录的方式: kdump; mtdoops; crashlog(这是openwrt特别的功能,正式linux内核中没有)大家对kdump比较了解。它主要使用于x86系统。因为它使用占用大量内存和硬盘。mtdoops和crashlog主要用于嵌入式的环境。也只是记录文本日志。mtdo原创 2017-04-19 15:17:51 · 5371 阅读 · 0 评论