摘要: 1、准备环境 $sudo apt-get install xsltproc $sudo apt-get install docbook-xsl $sudo apt-get install docbook-defguide 最后这个就是那本大名鼎鼎的Docbook:The Definitive Guide,装完之后就可以直接在本机浏览器输入http://localhost/doc/docbook-defguide/html/docbook.html来阅读此书了,我们和谐社会不是不能访问docbook.org吗,装完这个就可以本机阅读了,当然,你得装了apache。 2、将中间那段代码拷... 阅读全文
posted @ 2013-10-09 17:10 camera&tunning 阅读(610) 评论(0) 推荐(0) 编辑
摘要: 1 下载cts测试包 和 sdk 包http://source.android.com/compatibility/downloads.html ----cts 包http://developer.android.com/sdk/index.html ----- sdk 包把这两个包放在同一目录下。... 阅读全文
posted @ 2013-09-30 16:06 camera&tunning 阅读(1373) 评论(0) 推荐(0) 编辑
摘要: 在qual的Android系统中,通过USB 连接主机后,只能够看到移动盘符,而不能读取设备内容! QualComm的平台提供了两个移动磁盘设备,在Qphone上分别对应文件 /sys/devices/platform/usb_mass_storage/lun0 /sys/devices/platform/usb_mass_storage/lun1 如果要将SD卡或者其他的分区指定挂载为第一个对应的移动磁盘,则配置的实际指令如下(假设当前插入的SD卡对应的设备文件是 /dev/block/mmcblk0p1): echo /... 阅读全文
posted @ 2012-08-29 10:25 camera&tunning 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 1staticintandroid_readwrite_file(constA_CHAR*filename,A_CHAR*rbuf,constA_CHAR*wbuf,size_tlength)2{3intret=0;4structfile*filp=(structfile*)-ENOENT;5mm_segment_toldfs;6oldfs=get_fs();7set_fs(KERNEL_DS);8do{9intmode=(wbuf)?O_RDWR:O_RDONLY;10filp=filp_open(filename,mode,S_IRUSR);11if(IS_ERR(filp)||!filp 阅读全文
posted @ 2012-08-15 10:17 camera&tunning 阅读(622) 评论(0) 推荐(0) 编辑
摘要: 这个文件详细记录了系统中init的wakelock的使用情况以下是一个例子echotest_wakelock> sys/power/wake_lock然后 cat /proc/wakelocks 可获得当前状态下面是摘除的部分namecountexpire_countwake_countactive_sincetotal_timesleep_timemax_timelast_change"deleted_wake_locks"1500018116665148333180283320"test_wakelock"1001368319490313683 阅读全文
posted @ 2012-08-13 12:30 camera&tunning 阅读(1417) 评论(0) 推荐(0) 编辑
摘要: 这篇随笔将记录我对linux gpio库的实现分析及使用,作为备忘, 实例代码为高通8660,linux内核3.0。关于gpio库的文档,kernel 中有一个文档。位于documentation 下的gpio.txthttp://www.linuxidc.com/Linux/2011-07/39632.htm这个链接是一个网友对这个文档的翻译。可以参考gpiolib.c中提供了gpio管理的框架。driver/gpio一 实现自己的gpio库。在8660 中gpio库的实现在gpio-v2.c中。我们来看一下是如何做的。postcore_initcall(msm_gpio_init);这行代 阅读全文
posted @ 2012-07-11 16:54 camera&tunning 阅读(2258) 评论(0) 推荐(0) 编辑
摘要: •bootloader 通过tags传递配置参数到linux kernel •tags的定义: •Tag以tagcore开始,以null结束 • 如 unsigned * ptr=tags (tags是存放tag的物理地址) • Ptr++=2; • Ptr++=ATAG_CORE; • 以上是开始 • ……………………………其他tag • Tag是这样的一个结构体。第一个偏移是tag的大小,第二个是tag的号。接下来就是tag大小-2的tag数据。注意tag中的每一项都是4字节对齐的。 • • Ptr++=0; • Ptr++=0; •以上是结束 下面是一个例子1voidboot_linu. 阅读全文
posted @ 2012-07-10 14:32 camera&tunning 阅读(1381) 评论(0) 推荐(0) 编辑
摘要: 前面一篇随笔大略的分析了led class设备。其中关于trigger的部分提了一下就略过了。现在具体的做个分析,ledtrigger比led class dev 要复杂的多。做点笔记记录下来以备以后用到。 trigger 中文的翻译叫做触发。既然叫trigger,一定有一个事件或条件达到时led出现一个状态(点亮,亮度改变,闪烁)。做个事件可以来自userspace的请求,或kenel产生的事件,如休眠,cpu空闲等。而这些事件或条件就是我们要注册的trigger。每个led可以由有若干了trigger。可以在注册led设备时指定默认的trigger ,也可以由userspace指定,切换。 阅读全文
posted @ 2012-07-10 14:00 camera&tunning 阅读(3466) 评论(0) 推荐(0) 编辑
摘要: led class 设备驱动是linux的光学设备驱动,通过sys/class/leds/ 提供节点给用户空间。一般用在手机等系统中控制三色指示灯,键盘,背光等设备。以下就android 手机系统为例做一分析1 userspace how to use 内核模块注册了led class 设备后,会在sys/class/leds/ 目录下生成注册时所用的名字的文件节点。 进入adb shell ,ls 一下camera:flash0camera:flash1gpio24_redgpio26_bluelcd-backlightled_drv0led_drv1led_drv2:greenled_ps 阅读全文
posted @ 2012-06-30 15:51 camera&tunning 阅读(2712) 评论(0) 推荐(0) 编辑