
内核移植
eqwewr
这个作者很懒,什么都没留下…
展开
-
移植linux2.6.29内核到mini2440
<br />交叉编译器:arm-linux-gcc-4.3.2<br />开发板平台:S3C2440(mini2440开发板)<br />注意:红色部分仅供参考,我没有做测试,还请谅解。如果有问题欢迎提出,也欢迎交流。<br /><br />准备工作:<br />下载Linux内核源代码:http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.4.tar.bz2 <br />交叉编译工具包:从光盘一般都带,没有到网上找找也有。<br />解压源码:t原创 2011-04-22 19:42:00 · 1253 阅读 · 0 评论 -
jiffies机制及其实验与使用 jiffies与HZ换算
全局变量jiffies用来记录自系统启动以来产生的节拍的总数。启动时,内核将该变量初始化为0,此后,每次时钟中断处理程序都会增加该变量的值。一秒内时钟中断的次数等于Hz,所以jiffies一秒内增加的值也就是Hz。系统运行时间以秒为单位,等于jiffies/Hz。注意,jiffies类型为无符号长整型(unsigned long),其他任何类型存放它都不正确。将以秒为单位的时间转化为j原创 2012-09-21 22:37:51 · 6605 阅读 · 0 评论 -
kernel power off流程分析
凡是linux内核上层关机时,底层均会调到kernel_power_off(),电脑可以使用按键ctr+alt+del键进入关机,下面我们看看代码流程: SYSCALL_DEFINE4() -> kernel_power_off()-> pm_power_off_prepare() -> machine_power_off()-> pm_power_off() 在这里我想原创 2013-03-12 22:59:06 · 13949 阅读 · 0 评论 -
android kernel devices睡眠唤醒调试
下面是跟踪log方法,可以调试suspend,resume,earlysuspend lateresume等方面的问题,如哪一过程时间过长,跟踪log才可以很好定位问题,解决问题。1:early_suspend late_resume添加log在earlysuspend.c中static int debug_mask = DEBUG_USER_STATE;->static原创 2013-02-28 21:16:53 · 5510 阅读 · 0 评论 -
debugfs范例 可以当做模板使用
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define MAX_原创 2013-03-16 23:06:15 · 1732 阅读 · 0 评论 -
Linux系统ioctl使用示例 ioctl实验
本文是我在andoid实验的ioctl的功能,如双向传递参数。贴出来希望对学习ioctl的人很有帮助。 linux的ioctl功能是很强大的,android显示模块还有camera模块都离不开ioctl让上层和内核交互。这个实验对初学者很有帮助的。board中添加platform_devcestatic struct ioctl_test_platform_data io原创 2013-01-12 14:35:56 · 7869 阅读 · 2 评论 -
高通平台mipi panel kernel读包方法
熟悉高通平台mipi panel kernel读包方法,我想我们可以是的同一客户要是使用2块mipi panel的话我想我们可以通过读取id来下不同序列而不用更换boot.img,还有能否读id可以说明mipi通讯是否正常。还有我们只需在lk下面读一次id再对全局变量赋值通过lk传递到kernel里面,通过不同赋值发送不同初始化序列,至于时序clk则调整好兼容2块屏的,也可以通过全局变量来区分原创 2012-08-23 19:47:54 · 11802 阅读 · 12 评论 -
高通平台开机logo连续显示调试总结
所谓开机logo连续显示即我们在bootloader里面即lk下面将开机logo点亮了。但是进入到kernel会掉掉。那么究竟怎么才能保持连续显示呢? 下面以rgb屏为例: 1:在lk下面出lk时不关闭mdp引擎,让开机logo保持到kernel接管。还有lk下面fb_base要定义高点,为了kernel起来时模块不会冲走lk下面那段framebuffer。原创 2012-09-23 21:42:47 · 7703 阅读 · 12 评论 -
linux delayed _work使用小结
Delayed _work使用小结直接使用delay_work将任务推迟执行,如同queue work一样。//声明static struct delayed_work wlan_suspend_worker;//处理任务函数static void xxx_worker(struct work_struct *work){ .........; sch原创 2012-09-22 23:06:07 · 7783 阅读 · 0 评论 -
linux work queue工作队列小结与使用
1、linux内核中断处理的工作队列workqueue机制工作队列(workqueue)是另外一种将工作 推后执行的形式。工作队列可以把工作推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行。 这样,通过工作队列执行的代码能占尽进程上下文的所有优势。最重要的就是工作队列允许被重新调度甚至是睡眠。那么,什么情况下使用工作队列,什么情况下使用tasklet。如果推后执行原创 2012-09-20 22:22:46 · 3884 阅读 · 0 评论 -
msm7k平台BT蓝牙驱动移植
http://blog.youkuaiyun.com/dwyane_zhang/article/details/7180779网上关于BT的驱动很少,所以我在开发过程中把其中的步骤记录下来。供大家相互学习讨论。一、关于BT driver的移植:1. Enablebluetootch in BoadConfig.mk BOARD_HAVE_BLUETOOTH :=转载 2012-02-07 18:26:47 · 3122 阅读 · 0 评论 -
高通安卓FB驱动 以及 LCD调试过程
作者:YiLi Xie(yili.xie@gmail.com)日期:2010/04/07欢迎转载,请注明出处http://blog.youkuaiyun.com/yili_xie/article/details/5459205 首先说说QC的片子,QC这块片子使用MDP3.0作为图像处理器,下面支持MDDI,LCDC,以及EBI3种显示接口,MDP3.0不支持overlay,因转载 2011-09-25 12:04:56 · 3029 阅读 · 0 评论 -
Micron sensor 驱动与调试小结
转载地址http://arlen.opcom.blog.163.com/blog/static/3377503720101026111043664/?fromdm&fromSearch&isFromSearchEngine=yes苏豫MSN:suyuwan转载 2011-10-01 09:37:47 · 1882 阅读 · 0 评论 -
小记心得linux每个目录下kconfig和makefile和内核代码联系
<br />先看个例子:例如dev/char目录下的<br />kconfig中第一行:<br />config VT<br /> bool "Virtual terminal" 而在其目录下makefile中也有这么一行obj-$CONFIG_VT() += vt_ioctl.o vc_screen.o selection.o keyboard.o,而在linux目录下make menuconfig后到目录character driver(字符驱动配置下)有这么一行Virtual terminal,故原创 2011-05-07 23:09:00 · 1395 阅读 · 0 评论 -
linux启动成功修改logo
1:获得.png图片,可以截图获得,千万注意图片不能大于lcd屏幕,最好小点,大了有时显示不了。我几次没有显示就是图片原因。2 使用Linux命令将图片转换为ppm图片:也可以使用logomaker或者linux系统下自带的JIMP编辑工具使用# pngtopnm logo_linux_clut224.png > logo_linux_clut224.pnm# pnmquant 224原创 2011-06-25 21:25:00 · 1734 阅读 · 0 评论 -
对MMU深入理解
<br />MMU,全称Memory Manage Unit, 中文名——存储器管理单元。<br />许多年以前,当人们还在使用DOS或是更古老的操作系统的时候,计算机的内存还非常小,一般都是以K为单位进行计算,相应的,当时的程序规模也不大,所以 内存容量虽然小,但还是可以容纳当时的程序。但随着图形界面的兴起还用用户需求的不断增大,应用程序的规模也随之膨胀起来,终于一个难题出现在程序员的面 前,那就是应用程序太大以至于内存容纳不下该程序,通常解决的办法是把程序分割成许多称为覆盖块(overlay)的片段。覆转载 2011-04-22 22:12:00 · 1475 阅读 · 0 评论 -
android lcd调试 高通平台lcd调试深入分析总结(mipi和rgb接口)
各位网友:最近发现我这篇文章转载的到处都是,有的则以原创存在,转载时请注明出处,还有文中错误的地方请指正!谢谢合作。一:点亮lcd in kernel其实点亮lcd很简单必须保证以后几个步骤正确:1:确认Lcd信息所在文件被编译进去,并且lcd 和board name里面注册一质,倘若这部正确,那么log里面应该有对应分辨率的一段framebuffer同时调到相对应的power_on函原创 2012-07-19 22:34:59 · 28369 阅读 · 33 评论