
嵌入式内核浏览
橙忆辉
坚持,每天进步一点点……
展开
-
tar.xz 格式解压命令
# xz -d linux-3.10.tar.xz# tar -xf linux-3.10.tar原创 2013-08-12 18:20:51 · 620 阅读 · 0 评论 -
基于QualComm的mmc driver解析(Kernel-3.10)——(1)mmc bus
MMC:MMC就是 MultiMediaCard 的缩写,即多媒体卡 SD:SD卡为Secure Digital Memory Card, 即安全数码卡,(另TF卡又称microSD) SDIO:SDIO是在SD标准上定义了一种外设接口 MCI:MCI是Multimedia Card Interface的简称,即多媒体卡接口。上述的MMC,SD,SDI卡定义的接口都属于MCI接口SD卡引脚:原创 2017-04-20 18:03:29 · 1075 阅读 · 0 评论 -
MSM平台RPM
Software Component Block DiagramRPM(Resource Power Manager)是高通MSM平台另外加的一块芯片,虽然与AP芯片打包在一起,但其是一个独立的ARM Core。之所以加这个东西,就是要控制整个电源相关的shared resources,比如ldo,clock。负责与SMP,MPM交互进入睡眠或者唤醒整个系统。 以下是高通文档中对各个功能模块的说明转载 2017-04-12 15:38:21 · 1765 阅读 · 0 评论 -
linux中字符串转换函数 simple_strtoul
Linux内核中提供的一些字符串转换函数:lib/vsprintf.cunsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base) lo转载 2017-04-12 10:37:40 · 10594 阅读 · 0 评论 -
linux __setup的作用
问题: 比如在printk.c有这样一句__setup("console=",console_setup);还有,在main.c中__setup("root=",root_dev_setup);人家的精彩回答:你的这个问题,我从google上查找到了一些资料,再结合内核源代码,就在这里把这个问题说的清楚一点. 首先,这里有一个简短的回答, http://mail.nl.linux.org/ke转载 2017-04-12 10:29:05 · 431 阅读 · 0 评论 -
Linux内核模块编程与内核模块LICENSE
Linux内核模块简介Linux内核的整体结构已经非常庞大,而其包含的组件也非常多。我们怎样把需要的部分都包含在内核中呢?一种方法是把所有需要的功能都编译到Linux内核。这会导致两个问题,一是生成的内核会很大,二是如果我们要在现有的内核中新增或删除功能,将不得不重新编译内核。 有没有一种机制使得编译出的内核本身并不需要包含所有功能,而在这些功能需要被使用的时候,其对应的代码被动态地加载到内核中呢?转载 2017-04-10 18:37:13 · 808 阅读 · 0 评论 -
container_of
问题:如何通过结构中的某个变量获取结构本身的指针???关于container_of见kernel.h中:/*** container_of - cast a member of a structure out to the containing structure* @ptr: the pointer to the member.* @type: the t转载 2013-08-30 09:57:20 · 433 阅读 · 0 评论 -
ubuntu下vim + ctags + taglist配置和使用
ctags安装ctags可以建立源码树的索引,使程序员在编程时能迅速定位函数、变量、宏定义等位置去查看原形以下是在ubuntu下ctags的下载安装和配置过程:下载并安装ctags,终端输入命令sudo apt-get install ctags建立源码索引,比如我经常需要查阅Linux的内核代码,而这些代码放在/home/hjw951/arm/linux-2.6.12转载 2013-08-12 21:25:47 · 565 阅读 · 0 评论 -
基于QualComm的mmc driver解析(Kernel-3.10)——(2)sdio总线
sdio总线的注册函数也是在core.c 文件中调用注册的:ret = sdio_register_bus(); if (ret) goto unregister_host_class;sdio_register_bus 在sdio_bus.c 文件中定义:int sdio_register_bus(void){ return bus_register(&sdio_原创 2017-04-26 14:34:51 · 928 阅读 · 0 评论