我用的是友善之臂的tiny6410开发板,我做好了usb芯片cy7c68013的驱动,然后在Fedora14下在Android-2.3.4源码中进行HAL和JNI的操作。
该操作是在Android-2.3.4/hardware/libhardware/include/hardware下增加了usb68013.h文件,在Android-2.3.4/hardware/libhardware/modules/usb下增加了usb68013.c和Android.mk,执行命令mmm hardware/libhardware/modules/usb,在out/target/product/mini6410/system/lib/hw/下生成usb68013.default.so 
在Android-2.3.4/frameworks/base/services/jni下增加了com_android_server_Usb68013Service.cpp文件,并修改了该目录下的onload.cpp和Android.mk文件,执行命令mmm frameworks/base/services/jni/,在out/target/product/mini6410/system/lib/下生成libandroid_servers
然后按照Tiny6410 Android开发指南中执行./genrootfs.sh,然后再制作UBIFS格式的文件系统映像,用此映像烧录到开发板,开发板无法启动,停留在android-处,串口一直打印如下信息:
request_suspend_state: wakeup (3->0) at 94354547550 (2012-05-15 16:00:46.2637528
11 UTC)
init: untracked pid 1132 exited
init: untracked pid 1139 exited
request_suspend_state: wakeup (0->0) at 108931597414 (2012-05-15 16:01:00.840802
270 UTC)
init: untracked pid 1245 exited
init: untracked pid 1246 exited
request_suspend_state: wakeup (0->0) at 123233166647 (2012-05-15 16:01:15.142372
120 UTC)
init: untracked pid 1263 exited
init: untracked pid 1262 exited
request_suspend_state: wakeup (0->0) at 137924853384 (2012-05-15 16:01:29.834058
496 UTC)
init: untracked pid 1280 exited
init: untracked pid 1279 exited
request_suspend_state: wakeup (0->0) at 152415065369 (2012-05-15 16:01:44.324270
300 UTC)
init: untracked pid 1297 exited
init: untracked pid 1296 exited如果我只是更改了源码中hardware下的内容,这样生成的系统映像烧录到开发板中是能够启动的,并且在开发板的/system/lib/hw下有usb68013.default.so 但是一旦把frameworks下的内容更改了,生成的系统映像则无法启动开发板另外,如果我使用友善提供的映像启动开发板后,把在out/target/product/mini6410/system/lib/下生成的libandroid_servers.so文件复制到开发板的/system/lib目录下,在应用程序中加载这个库,是能够实现数据传输的。但是如果开发板断电后,再想启动就启动不了了,同样是停在android-处,串口一直打印如下类似信息:
request_suspend_state: wakeup (3->0) at 94354547550 (2012-05-15 16:00:46.2637528
11 UTC)
init: untracked pid 1132 exited
init: untracked pid 1139 exited
request_suspend_state: wakeup (0->0) at 108931597414 (2012-05-15 16:01:00.840802
270 UTC)
init: untracked pid 1245 exited
init: untracked pid 1246 exited
request_suspend_state: wakeup (0->0) at 123233166647 (2012-05-15 16:01:15.142372
120 UTC)
init: untracked pid 1263 exited
init: untracked pid 1262 exited
request_suspend_state: wakeup (0->0) at 137924853384 (2012-05-15 16:01:29.834058
496 UTC)
init: untracked pid 1280 exited
init: untracked pid 1279 exited
request_suspend_state: wakeup (0->0) at 152415065369 (2012-05-15 16:01:44.324270
300 UTC)
init: untracked pid 1297 exited
init: untracked pid 1296 exited请问是不是我修改frameworks/base/services/jni时哪里出了问题?请各位不吝赐教!谢谢了!