共 33 篇文章 |
|
则需要先确认数据格式是否正确,然后确认fb里的数据是否正常,有以下几种方法确认fb里的数据i)cat /dev/graphics/fb0 >/sdcard/fb0,然后将/sdcard/fb0 >到另一台相同分辨率及相同格式的手机上,看图片显示是否正常 ii)使用irfanview软件显示cat /dev/graphics/fb0出来的raw数据,注意要正确设置分辨率及格式,否则显示花屏 iii)如果adb... 阅869 转5 评0 公众公开 12-10-16 19:47 |
[z]基于USB控制功能的Android设备硬件接口设计。这可能对工程师们更加可行,尤其是对那些在Android操作系统或Android USB应用程序接口经验少或者没有经验的工程师。由于这一限制, 谷歌开发了一个API用于Android通过USB设备端口与外部USB通信。Android平板和Vinculum II之间的连接,是使用新发布的Android USB 主控API来维护的。Android上的JAV... 阅759 转4 评0 公众公开 12-07-30 18:31 |
[z]android按键驱动开发实例2(增加一个新按键)android按键驱动开发实例2(增加一个新按键)本实例通过给开发板加入一个全新的按键,因为该按钮是自已搭的电路外接到开发板上的,开发板的源码中并没有相关的原码,所以要使这个按键能正常工作那就得真刀真枪地往按键驱动中添加相关代码来实现,这样能读者知道要驱动一个按键要涉及到哪些部份,... 阅598 转1 评0 公众公开 12-06-21 15:39 |
> +#define MX53_LOCO_DA9052_IRQ(6*32 + 11)/* GPIO7_11 */> +> +static int __init loco_da9052_init(struct da9052 *da9052)> +{> +/* Configuring for DA9052 interrupt servce */> +/* s3c_gpio_setpull(DA9052_IRQ_PIN, S3C_GPIO_PULL_UP); 阅393 转0 评0 公众公开 12-05-27 02:06 |
[转]Android Recovery 工作流程09年初写的Android Recovery.Recovery的log输出,在recovery运行过程中,stdout及stderr会重定位到/tmp/recovery.log文件,Recovery退出之前会将其转储到/cache/recovery/log中,也就是cache分区的recovery/log。Android Recovery: 总体流程。根据Recovery的initrc,kernel启动完成后,启动recovery服务,这是一... 阅19100 转119 评1 公众公开 12-05-02 14:52 |
kthreadd khelper 内核线程。可以调用kthread_create创建一个kthread,它会被加入到kthread_create_list链表中,同时kthread_create会weak up kthreadd_task。kthreadd在执行kthread会调用老的接口——kernel_thread运行一个名叫“kthread”的内核线程去运行创建的kthread,被执行过的kthread会从kthread_create_list链表中删除,并且kthreadd... 阅43 转自Liucw2012 公众公开 12-04-07 16:34 |
boot_cpu_init();这个解析的过程也是在setup.c里面进行的,它首先查找.early_param.init段里面注册的结构体,通过__early_param将early_param结构体注册到这些段里面,实际这个early_param很简单一个就是类似于"initrd="的字符串,用来与command_line里面的字符进行匹配,如果匹配到了就执行early_param里面的那个函数,并将匹配到的... 阅243 转3 评0 公众公开 12-04-07 16:16 |
cmp r5, #ATAG_CORE_SIZE cmpne r5, #ATAG_CORE_SIZE_EMPTY bne 1f ldr r5, [r2, #4] ldr r6, =ATAG_CORE cmp r5, r6 bne 1f mov pc, lr @ atag pointer is ok 1: mov r2, #0 mov pc, lr ENDPROC(__vet_atags) __vet_atags: tst r2, #0x3 @ aligned? 阅138 转1 评0 公众公开 12-04-07 16:16 |
cmp r5, #ATAG_CORE_SIZE cmpne r5, #ATAG_CORE_SIZE_EMPTY bne 1f ldr r5, [r2, #4] ldr r6, =ATAG_CORE cmp r5, r6 bne 1f mov pc, lr @ atag pointer is ok 1: mov r2, #0 mov pc, lr ENDPROC(__vet_atags) __vet_atags: tst r2, #0x3 @ aligned? 阅252 转4 评0 公众公开 12-04-07 16:15 |
= 0)** 2. second is optional (second_size == 0 -> no second)** 3. load each element (kernel, ramdisk, second) at** the specified physical address (kernel_addr, etc)** 4. prepare tags at tag_addr. kernel_args[] is** appended to the kernel commandline in the tags.** 5. r0 = 0, r1 = MACHINE_TYPE, r2 = tags_addr** 6. i... 阅235 转5 评0 公众公开 12-04-07 16:11 |