转自:http://blog.csdn.net/voice_shen/article/details/6020108
When we develop the Android, maybe we will change the USB Vendor ID and Product ID according the chip provider. After we change it, the driver provided by Google won't work with it. So, we need some other operation.
Please take the following information as a reference.
Android 2.1_r2 with Linux 2.6.30
In drivers/usb/gadget/android.c, it will define the VID and PID as following.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/* Default vendor and product IDs, overridden by platform data */
#define VENDOR_ID 0x18D1
#define PRODUCT_ID 0x0001
#define ADB_PRODUCT_ID 0x0002
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Maybe you will change to other value for VID and PID. Taking following as a reference.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/* Changed vendor and product IDs, overridden by platform data */
#define VENDOR_ID 0x2020
#define PRODUCT_ID 0x0018
#define ADB_PRODUCT_ID 0x0019
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
After you do like this, you need to modify the default adb driver in android_winusb.inffile. Add the following lines
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
;Test
%SingleAdbInterface% = USB_Install, USB/VID_2020&PID_0019
%CompositeAdbInterface% = USB_Install, USB/VID_2020&PID_00019&MI_01
%SingleBootLoaderInterface% = USB_Install, USB/VID_2020&PID_0FFF
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
After this, I think the device can be detected in windows. Then if you want it work with Android SDK, you still need one more step.
Enter the Android SDK tools directory and execute android.bat update adb. after this operation, you will get the .android folder with android_usb.ini file under C:/Documents and Settings/<login_name>. Then add the test USB vendor ID in it. After editing it, it looks like
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x2020
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Then the Adb can work well.