8x60
文章平均质量分 78
eqwewr
这个作者很懒,什么都没留下…
展开
-
PM 底电流调试工作总结
高通7x27a平台目前遇到几个底电流调试问题,发表以下见解 1:首先个人在调试不睡眠中遇见2次由于串口睡眠模式配置不对导致系统无法睡眠的问题,要是串口连接其他模块比如BT和modem,我们在sleep模式不可以配置成普通gpio功能,这样很容易导致睡眠时无法与设备通讯导致无法睡眠,modem有radio lock 。 2:在系统可以睡下,底电流在20mA以下但是大于2mA的情况下,很可原创 2012-04-27 22:11:32 · 3444 阅读 · 0 评论 -
Qualcomm pmic充电流程分析(msm8660)
首先软件上Pmic CHGVAL中断触发,pm8058_chg_chgval_handler函数被调用,即表明pmic检测到usb_vbus,说明有usb或者dc的插入,接着进入充电流程;之后调用msm_charger_notify_event(),在该函数中调度工作队列msm_chg.queue_work;之后调用到工作队列处理函数process_events();再之后逐步调用到pmi原创 2013-04-22 22:09:01 · 6592 阅读 · 0 评论 -
如何输出dev_dbg log
kernel里面默认都配置了CONFIG_DYNAMIC_DEBUG=y; 假如我们要打印acpuclock-krait.c中的 dev_dbg(drv.dev, "ACPU%d speed change complete\n", cpu); 在adb shell中输入: mount –t debugfs none /sys/kernel/debug原创 2013-05-25 22:33:46 · 4284 阅读 · 0 评论 -
android adb网络调试 Android中使用WIFI来连接ADB 简单100%成功
android adb网络调试 Android中使用WIFI来连接ADB 简单100%成功原创 2013-11-25 20:22:57 · 2304 阅读 · 1 评论 -
Android HAL基础
最近开始看Android的HAL开发方面,发现现在国内研究这个的并不多,来自Jollen可能是走在Android HAL研究的最前沿,这也和他以前专注做嵌入式linux(openmoko)的工作经历有关,毕竟Android的application开发是基于Java的,而之前Jollen做的更多的还是C/C++开发,因此选择从HAL作为进入Android的shortcut还是很明智的,我以前也主转载 2013-12-10 22:47:16 · 1556 阅读 · 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 · 5379 阅读 · 0 评论 -
android关机闹钟设计思路
1: 首先需要硬件支持,支持alarm中断触发开机,目前高通平台几乎都支持;2:关机前需要在rtc-xxx.c中做到enable_irq_wake,和不disable alarm功能(默认开机后alarm功能就会打开,通常关机时qct会关闭该功能避免alarm触发乱开机);3: 在AlarmManagerService.java当set请求来自闹钟时改变type类型,alarm_dev.c原创 2013-12-10 22:31:41 · 3279 阅读 · 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 · 13449 阅读 · 0 评论 -
linux下判断 串口是否通讯 UART DEBUG
在调试BT中发现以下方法: 通常uart连接其他设备例如BT,首先要调通该uart,最简单方法如下:uart 调试方法adb shellcat /dev/ttyHS0&(ls -s /dev/ttyHS*)(ttyHS0代表所要调试的串口)使用手触摸rx即可有字符输出或者 echo djqewdhheudfueufu > /dev/ttyHS0再将rx与tx短接原创 2012-05-13 22:50:07 · 6897 阅读 · 1 评论 -
android restart reason机制
Reboot传递参数,使得开机进入参数固定的模式(通常有我们熟悉的bootloader和recovery等),本质是在kernel shutdown时会调用到restart,将模式数值写到share memory中,那么在开机bootloader阶段,再去读取这块内存,boot进入指定的模式,要是匹配不起来就正常boot,以下是贴出的代码;a: android_reboot(A原创 2014-01-06 21:12:04 · 5630 阅读 · 3 评论 -
linux runtime pm机制的深入理解
一:runtime机制说明 何为runtime机制?也就是系统在非睡眠状态,设备在空闲时可以进入runtime suspend状态同时不依赖系统wake_lock机制,非空闲时执行runtime resume使得设备进入正常工作状态。 主要代码放在Runtime.c (drivers\base\power)中,同时附带的Runtime_pm.txt (documentati原创 2014-07-24 21:26:50 · 13154 阅读 · 0 评论 -
jiffies机制及其实验与使用 jiffies与HZ换算
全局变量jiffies用来记录自系统启动以来产生的节拍的总数。启动时,内核将该变量初始化为0,此后,每次时钟中断处理程序都会增加该变量的值。一秒内时钟中断的次数等于Hz,所以jiffies一秒内增加的值也就是Hz。系统运行时间以秒为单位,等于jiffies/Hz。注意,jiffies类型为无符号长整型(unsigned long),其他任何类型存放它都不正确。将以秒为单位的时间转化为j原创 2012-09-21 22:37:51 · 6489 阅读 · 0 评论 -
Linux 运用debugfs调试方法
运用debugfs调试方法 DebugFS,顾名思义,是一种用于内核调试的虚拟文件系统,内核开发者通过debugfs和用户空间交换数据。类似的虚拟文件系统还有procfs和sysfs等,这几种虚拟文件系统都并不实际存储在硬盘上,而是Linux内核运行起来后才建立起来。通常情况下,最常用的内核调试手段是printk。但printk并不是所有情况都好用,比如打印的数据可能过多,我原创 2013-04-22 22:01:27 · 3659 阅读 · 2 评论 -
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 · 1708 阅读 · 0 评论 -
修改和制作Android开机Logo(最终版)
以下在Telechips tcc8900上,用Android 2.3的源码编译通过1.bootloader图片修改 bootable\bootloader\lk\platform\tcc_shared\include\lcd\logo.h替换就行了 logo.h的制作:准备一张图片,然后用Img2Lcd工具把图片转成C语言数组注意:在使用Img2Lcd工具转换的图片转载 2012-07-21 17:44:45 · 4851 阅读 · 0 评论 -
高通平台bootloader里面串口log输出配置方法
1:在modem端将相应的gpio设置成相应功能。2:在/lk/project/xxx.mk打开uart输出log功能。3:在platform/msm_shared/uart.c中定义uart几输出log,#if PLATFORM_MSM7X30static unsigned uart_base = MSM_UART2_BASE;#elif PLATFORM_MSM7X27A原创 2012-08-11 21:37:50 · 10714 阅读 · 2 评论 -
高通平台camera调试
今后会调一些sensor,故转载过来学习。近来刚接手项目的camera驱动,除了查看平台文档和sensor的到规格书,也在网上查看了高手们到经验。本人对camera还是比较陌生的,奈何公司无人过问,只好按部就班的来吧! 和大部分驱动的调试相差无几,还是在前人的工作基础上进行的。项目采用高通7627平台,sensor采用ov7675。驱动移植1.内核驱动移植sensor信息记录在android\ke转载 2012-09-02 22:21:56 · 8355 阅读 · 1 评论 -
linux work queue工作队列小结与使用
1、linux内核中断处理的工作队列workqueue机制工作队列(workqueue)是另外一种将工作 推后执行的形式。工作队列可以把工作推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行。 这样,通过工作队列执行的代码能占尽进程上下文的所有优势。最重要的就是工作队列允许被重新调度甚至是睡眠。那么,什么情况下使用工作队列,什么情况下使用tasklet。如果推后执行原创 2012-09-20 22:22:46 · 3807 阅读 · 0 评论 -
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 · 7524 阅读 · 0 评论 -
高通平台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 · 11728 阅读 · 12 评论 -
关于Android LCD和键盘背光亮度
应用设计1.1 设置进度条范围背光设置是在:设置->声音和显示->亮度,通过进度条来设置的。 文件:packages/apps/Settings/src/com/Android/settings/BrightnessPreference.java private static final int MINIMUM_BACKLIGHT = Android.os.Power.BR转载 2012-10-22 10:13:19 · 2053 阅读 · 0 评论 -
IPS屏幕
求助编辑百科名片IPS屏幕(In-Plane Switching,平面转换)技术是日立公司于2001推出的液晶面板技术,俗称“Super TFT”。从名字中我们也能看出,其实IPS屏幕就是基于TFT的一种技术,其实质还是TFT屏幕。目录基本介绍工作原理优势响应速度快可视角度宽色彩还原真实动态图像表现出色触摸无拖影环转载 2012-12-02 15:14:29 · 2575 阅读 · 0 评论 -
linux debugfs使用分享 软件查看gpio状态
在调试中加入debugfs有时可以起到事半功倍的效果: adb shell#mkdir /data/debug#mount -t debugfs debugfs /data/debug#cd /data/debug 查看gpio状态root@android:/data/debugfs # cat gpioGPIOs 0-15: gpio-0 (fr原创 2012-12-15 23:10:14 · 5625 阅读 · 0 评论 -
Qualcomm Android display架构分析
Android display架构分析(一)http://blog.csdn.net/BonderWu/archive/2010/08/12/5805961.aspxhttp://hi.baidu.com/leowenj/blog/item/429c2dd6ac1480c851da4b95.html高通7系列硬件架构分析如上图,高通7系列 Display的硬件部转载 2013-01-12 15:41:07 · 3542 阅读 · 0 评论 -
高通平台发送mipi参数的分析
我们知道,调试lk里面mipi lcd显示,需要在kernel里面参数数组里面改写包头(长包还是短包)和注意4字节对齐,不够则补齐0xff;其实我们kernel是对参数进行了封装,参数经过DMA发送到DSI_BASE偏移0x44的寄存器中的值是和lk里面是一致的。在mipi_dsi_host.c中mipi_dsi_cmd_dma_tx()函数打开DSI_HOST_DEBUG宏即可原创 2013-04-13 12:04:06 · 6226 阅读 · 1 评论 -
android lcd调试 高通平台lcd调试深入分析总结(mipi和rgb接口)
各位网友:最近发现我这篇文章转载的到处都是,有的则以原创存在,转载时请注明出处,还有文中错误的地方请指正!谢谢合作。一:点亮lcd in kernel其实点亮lcd很简单必须保证以后几个步骤正确:1:确认Lcd信息所在文件被编译进去,并且lcd 和board name里面注册一质,倘若这部正确,那么log里面应该有对应分辨率的一段framebuffer同时调到相对应的power_on函原创 2012-07-19 22:34:59 · 28100 阅读 · 33 评论