![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Worknote
文章平均质量分 81
pillarbuaa
这个作者很懒,什么都没留下…
展开
-
Charge only(chargemon)
一、移植chargemon1. https://wiki.sonyericsson.net/androiki/Vendorbaseintegration#Bring_up_branch2. charge only代码目录 vendor/semc/hardware/power/chargemon3. repo ics-fuji的代码 repo init -u git://revi原创 2012-05-28 16:57:37 · 3917 阅读 · 0 评论 -
Linux Kernel driver model
Kernel driver model Peter xu, 2012.07 --------------------------------------------------------------------------------------------------------------------------------------------------------------原创 2012-07-26 15:18:30 · 6107 阅读 · 0 评论 -
Thermal SW Architectures on HAL
Thermal SW Architectures on HAL Peter xu, 2012.08*************************************************************************************************************Agenda SW ArchitectureHAL part (原创 2012-08-21 11:49:14 · 2394 阅读 · 0 评论 -
MIB Lotus worknote
Test CDF: http://repository.scsstage.sonyericsson.net/TestCDA/Internal/Dev_i/ST25i/20111107082543_Test.ziphttp://www.gnu.org/software/gdb/https://wiki.sonyericsson.net/androiki/GDB_debugginght原创 2012-05-30 13:39:07 · 6927 阅读 · 0 评论 -
Audio Jack 的耳机检测和按键检测
基于QCM 8960二十七、Audio jack1. https://wiki.sonyericsson.net/androiki/Huashan_legacy_feature:_Vibrator_%26_Audio_Jack2. How to get debug info 1 dump register before and after headset plug, us原创 2013-05-08 14:32:05 · 8492 阅读 · 3 评论 -
基于power supply信息传递的uevent机制
参考了 http://blog.sina.com.cn/s/blog_6100a4f101015uwh.htmlLinux uevent机制Uevent是内核通知android有状态变化的一种方法,比如USB线插入、拔出,电池电量变化等等。其本质是内核发送(可以通过socket)一个字符串,应用层(android)接收并解释该字符串,获取相应信息。一、Kernel侧: ke原创 2013-06-13 09:51:10 · 16900 阅读 · 0 评论 -
USB port 如何识别不同的Charger类型
基于Qualcom 8960/8921平台一,软件分析1. USB charger types & Power supply typesUSB_INVALID_CHARGER Invalid USB charger.USB_SDP_CHARGER Standard downstream port. Refers原创 2012-11-27 16:09:04 · 19101 阅读 · 0 评论 -
Android linux的休眠和唤醒
写了很多内容,突然发布文章的时候保存失败。郁闷 凭借记忆只重写如下总结:1. Early suspend/ late resume 是android 添加的机制,用户关闭LCD, TS, Sensors等为了省电。可称之为浅度休眠2. Linux的Suspend/resume 仍然有效,可称之为深度休眠3. echo mem > sys/power/state 会触发early原创 2013-06-19 12:12:15 · 7842 阅读 · 2 评论 -
电池容量足够低如何触发自动关机(Riogrande platform&Qualcom platform)
1. 进入手机/sys/devices/platform/nmk-i2c.2/i2c-2/2-0040/leds/ 或 sys/class/leds/目录list如下 pwr-red,pwr-green,pwr-blue //控制充电led l-key-red,l-key-green,l-key-blue //控制left button led m-key-r原创 2012-06-05 15:52:49 · 11570 阅读 · 3 评论 -
Huashan worknote
一,有用的连接1. repo init -u git://review.sonyericsson.net/platform/manifest -b feature-ics-viskan-es2-bringup2. repo init -u git://review.sonyericsson.net/platform/manifest -b jb-viskan-int3. https:/原创 2013-08-07 16:55:52 · 5264 阅读 · 0 评论 -
Yangtze worknote
1. repo init -u git://review.sonyericsson.net/platform/manifest -b volatile-jb-mr1-yangtze2. https://wiki.sonyericsson.net/androiki/CN3-II/Bringup_Trail_FC34 如何编译3. https://wiki.sonyericsson.net/原创 2013-08-07 16:53:53 · 15820 阅读 · 3 评论 -
yukon worknote
daily buildhttp://android-ci-platform.cnbj.sonyericsson.net/job/daily_build_jb-mr2-yukon/DL-CNBJ-TianChi-SWCM: tianchi gina jb 的 CM一. msm8226-tianchi_dsds.dtsi; msm-pm8226.dtsi二、. Audio Jack原创 2014-05-12 16:56:16 · 4414 阅读 · 0 评论 -
QCOM 开机的LOGO显示
分析 kernel/drivers/video/msm/logo.c 文件1. int load_565rle_image(char *filename) 加载图像文件“logo.rle”, 该原创 2014-10-23 15:45:24 · 1520 阅读 · 0 评论 -
User space程序读取kernel log 并保存
#include #include #include #include #include static void run_kmsg_dump_daemon(void){ int pid; pid = fork(); if (pid == 0) { int fd_1; int fd_2; int i; /* start */原创 2014-12-16 14:34:08 · 1114 阅读 · 0 评论 -
android 电池(三):android电池系统
一、电池系统结构 Android中的电池使用方式主要有三种:AC、USB、Battery 等不同的模式。在应用程序层次,通常包括了电池状态显示的功能。因此从 Android 系统的软件方面(包括驱动程序和用户空间内容)需要在一定程度上获得电池的状态,电池系统主要负责电池信息统计、显示。电池系统的架构如下所示:自下而上, Android 的电池系统分成以下几个部分:转载 2014-12-12 14:36:42 · 1199 阅读 · 0 评论 -
如何生成 battery historian 2 分析工具
http://www.tuicool.com/articles/Zviy6z转载 2015-08-27 16:11:02 · 2400 阅读 · 0 评论 -
用GDB 调试system_monitor
Easy debug with GDB, step by step.Debug process: system_monitorDebug platform: Riogrande, Lotus 1. Build lotus eng or debug version1)原创 2012-08-02 17:12:28 · 2882 阅读 · 0 评论 -
用户空间与内核空间数据交换的方式(3)------模块参数与sysfs
内核子系统或设备驱动可以直接编译到内核,也可以编译成模块,如果编译到内核,可以使用前一节介绍的方法通过内核启动参数来向它们传递参数,如果编译成模块,则可以通过命令行在插入模块时传递参数,或者在运行时,通过sysfs来设置或读取模块数据。Sysfs是一个基于内存的文件系统,实际上它基于ramfs,sysfs提供了一种把内核数据结构、它们的属性以及属性与数据结构的联系开放给用 户态的方式,它与ko转载 2012-07-17 16:35:18 · 1302 阅读 · 0 评论 -
dynamic debug log输出机制
dynamic debug log输出机制0. 注意该机制只对 dev_dbg -> dynamic_dev_dbg定义的debug log输出加以控制1. 如何使用:(kernel/Documentation/dynamic-debug-howto.txt) mkdir /data/debugfs mount -t原创 2012-06-05 15:17:56 · 14727 阅读 · 0 评论 -
Worknote-xin(blue platform)
一、如何下载代码和flash image1. https://wiki.sonyericsson.net/androiki/CM_information_of_Blue_Program a. maki是9.0.A.0.x, ics-blue-3.0 , https://wiki.sonyericsson.net/androiki/CM_information_of_Blue_Prog原创 2012-06-05 15:27:18 · 1411 阅读 · 0 评论 -
Charger&FuelGauge (Riogande platform)
1. *#*#4636#*#* 可查看 手机信息,电池信息2. https://wiki.sonyericsson.net/androiki/Fuel_Gauge_FAQ 如何抓fuel gauge 的log a. How to save kernel logs to phone memory $ adb shellmkdir /data/debugfsmo原创 2012-06-05 15:21:46 · 2397 阅读 · 0 评论 -
System call 的分析
0. sysfs_write_file@kernel/fs/sysfs/file.c1. vfs_write@kernel/fs/read_write.c2. sys_write@kernel/fs/read_write.c有SYSCALL_DEFINE3(write, unsigned int, fd, const char __user *, buf, size_t, count原创 2012-06-11 11:10:13 · 4151 阅读 · 0 评论 -
如何手动mount sdcard和检测到sd card
1. mount -t vfat /dev/block/mmcblk0p1 /mnt/sdcard; 不好用!2. [Framework 层]主要分析 system/vold/main.cpp, DirectVolume.cpp, Volume.cpp[void Volume::setState(int state); int Volume::mountVol()]3. [Framewor原创 2012-06-11 11:16:14 · 4600 阅读 · 0 评论 -
PDP backlight cannot work 和Backlight 的ASL不起作用(Riogrande Platform)
1. ADB Command: /sys/class/leds/lcd-backlight/brightness ,实际路径/sys/devices/i2c-0/2-0040/leds/lcd-backlight echo 0 > brightness \n echo 100 >brightness cat brightness2. Check system/co原创 2012-06-11 11:17:42 · 1292 阅读 · 0 评论 -
Android Socket 机制(即demoen 服务进程的机制)
1. init.rc 中有 service vold /system/bin/vold console socket vold stream 0660 root mount ioprio be 22. system\core\init\init.c 中init_parse_config_file("/init.rc");会解析; init_parse原创 2012-06-11 11:14:11 · 2637 阅读 · 0 评论 -
USB mass storage驱动分析
1. USB驱动代码在/drivers/usb/gadget下,有文件:android.c,其他驱动文件f_adb.c,f_mass_storage.c;其中android.c 依赖于f_adb.c 和 f_mass_storage.c(这两个文件之间无依赖关系)。2. usb_mass_storage重新mount一个分区; a. adb shell 进入/sys/devices/原创 2012-06-11 11:15:03 · 7679 阅读 · 1 评论 -
Power Manager的分析研究(wakelock)
1. Android Application 如何使用wakelock a. PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);-->getSystemService@frameworks/base/core/java/android/view/contextthemewrapper.jav原创 2012-06-05 15:20:11 · 5870 阅读 · 0 评论 -
System manager分析
0. 以下分析的是systemservice如何启动1. init.rc 中有 service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server socket zygote stream 666 onrestart write /proc/sysrq原创 2012-06-11 11:08:58 · 1341 阅读 · 0 评论 -
Kernel log 输出机制(Riogrande Platform)
1. dmesg 读取kernel 的log, system/core/toolbox/dmesg.c 文件中dmesg_main函数-->klogctl, 可以看到只支持dmesg -c,并且用dmesg显示kernel log不能连续显示(可从代码中看出来),用cat proc/kmsg 则可以连续显示kernel log.2. klogctl函数的定义在那? bionic/libc/ar原创 2012-06-11 11:12:19 · 8521 阅读 · 0 评论 -
如何在qualcomm 8960和8921上使用PWM功能 (GPIO24)
一、PWM 分析1. PWM: Pulse Width Modulator; LPG: Light Pulse Generator; 两者指的是同一东西。 2. PWM driver: /kernel/drivers/mfd/pm8xxx-pwm.c3. 手机中注册路径: /sys/devices/platform/msm_ssbi.0/pm8921-core/pm8xxx-pwm原创 2012-07-11 10:25:09 · 6112 阅读 · 0 评论 -
SW watchdog 分析
1. android framework层中的watchdog,它属于一种软件Watchdog实现。 a.接收系统内部reboot请求,重启系统。 b.监护SystemServer进程,防止系统死锁, 确保ActivityManagerService、WindowManagerService和 PowerManageService发生死锁后,退出SystemServer进程,让原创 2012-06-11 11:24:34 · 5889 阅读 · 2 评论 -
Vibrator Kernel driver 实现
一,基于Qualcomm Blue 平台 Vibrator 分析1. Vibrator driver: /kernel/drivers/misc/pm8xxx-vibrator.c2. 手机中注册驱动路径: /sys/devices/platform/msm_ssbi.0/pm8921-core/pm8xxx-vib3. 注册"msm_ssbi"device, @kernerl/ar原创 2012-07-12 13:32:34 · 3322 阅读 · 0 评论 -
LCD Backlight 的分析
一、backlight cannot work (STE Riogrande Platform)1. ADB Command: /sys/class/leds/lcd-backlight/brightness ,实际路径/sys/devices/i2c-0/2-0040/leds/lcd-backlight echo 0 > brightness \n echo 100 >原创 2012-07-12 15:04:43 · 5819 阅读 · 0 评论 -
Worknote-kumquat-DD
http://review.sonyericsson.netrepo init -u git://review.sonyericsson.net/platform/manifest -b edream6.0-riogrande-plus-release一、DMS01179806 (The illumination is still lit after auto power off by原创 2012-07-12 15:22:09 · 2588 阅读 · 0 评论