xref: /aosp_15_r20/development/host/windows/usb/readme.txt (revision 90c8c64db3049935a07c6143d7fd006e26f8ecca)
1*90c8c64dSAndroid Build Coastguard Workerandroid_winusb.inf file contained in this folder must be used to install
2*90c8c64dSAndroid Build Coastguard WorkerWinUsb framework on customers machines. In order to build installation
3*90c8c64dSAndroid Build Coastguard Workerpackage that is compliant with android_winusb.inf, you need to create
4*90c8c64dSAndroid Build Coastguard Workerthe following tree:
5*90c8c64dSAndroid Build Coastguard Worker
6*90c8c64dSAndroid Build Coastguard WorkerRoot of the installation folder must contain:
7*90c8c64dSAndroid Build Coastguard Worker  * File android_winusb.inf - Installation file
8*90c8c64dSAndroid Build Coastguard Worker  * File androidwinusb86.cat - Signed catalog for 32-bit package
9*90c8c64dSAndroid Build Coastguard Worker  * File androidwinusba64.cat - Signed catalog for AMD 64-bit package
10*90c8c64dSAndroid Build Coastguard Worker  * Subfolder i386 containing files for 32-bit installation:
11*90c8c64dSAndroid Build Coastguard Worker    * WdfCoInstaller01007.dll
12*90c8c64dSAndroid Build Coastguard Worker    * WinUSBCoInstaller.dll
13*90c8c64dSAndroid Build Coastguard Worker    * WUDFUpdate_01007.dll
14*90c8c64dSAndroid Build Coastguard Worker  * Subfolder amd64 containing files for AMD 64-bit installation:
15*90c8c64dSAndroid Build Coastguard Worker    * WdfCoInstaller01007.dll
16*90c8c64dSAndroid Build Coastguard Worker    * WinUSBCoInstaller.dll
17*90c8c64dSAndroid Build Coastguard Worker    * WUDFUpdate_01007.dll
18*90c8c64dSAndroid Build Coastguard Worker
19*90c8c64dSAndroid Build Coastguard WorkerFile contained in i386 and amd64 subfolders are Microsoft distributives needed
20*90c8c64dSAndroid Build Coastguard Workerto install WinUsb framework. These files can be obtained from WDK 'redist'
21*90c8c64dSAndroid Build Coastguard Workerfolder, respectively to the OS: copy x86 files to i386 subfolder, and amd64
22*90c8c64dSAndroid Build Coastguard Workerfiles to amd64 subfolder.
23*90c8c64dSAndroid Build Coastguard Worker
24*90c8c64dSAndroid Build Coastguard Workerandroid_winusb.inf file can be modified in order to provide support for the
25*90c8c64dSAndroid Build Coastguard Workerdevices that were not available when Android SDK was shipped. To do that,
26*90c8c64dSAndroid Build Coastguard Workermodify [Google.NTx86], [Google.NTamd64], and [Strings] sections of .inf
27*90c8c64dSAndroid Build Coastguard Workerfile to add descriptions for new devices and interfaces. Note that when .inf
28*90c8c64dSAndroid Build Coastguard Workerfile is modified, .cat files must be rebuilt and resigned in order to keep
29*90c8c64dSAndroid Build Coastguard Workerintegrity of the installation. Failure to rebuild and resign .cat files will
30*90c8c64dSAndroid Build Coastguard Workernot break the installation, but it will cause security warnings (that can be
31*90c8c64dSAndroid Build Coastguard Workerdismissed) to pop up at the installation time.
32*90c8c64dSAndroid Build Coastguard Worker
33*90c8c64dSAndroid Build Coastguard WorkerAs an alternative to modification, android_winusb.inf file can be used as a
34*90c8c64dSAndroid Build Coastguard Workertemplate to create new .inf file for new devices. Note that you also need
35*90c8c64dSAndroid Build Coastguard Workerto build and sign new .cat files for that custom .inf file of yours.
36*90c8c64dSAndroid Build Coastguard Worker
37*90c8c64dSAndroid Build Coastguard WorkerThe simplest way to create .cat files would be using inf2cat.exe utility,
38*90c8c64dSAndroid Build Coastguard Workeravailable in WDK at bin\SelfSign folder. To use this utility you will need to
39*90c8c64dSAndroid Build Coastguard Workercreate an installation folder a sdesribed at the beginning of this document,
40*90c8c64dSAndroid Build Coastguard Workerand run inf2cat.exe on .inf file at the root of installation folder.
41