diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2013-05-19 17:06:53 +0200 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2013-05-19 17:06:53 +0200 |
commit | 44ecc034c1b773c619d12bc20ca3e757efec2520 (patch) | |
tree | 40b95067b5aea3898372931cbb55ff0da22fed9e /LUFA | |
parent | 91eb7c34c77a51b67abd9e360cb53adf4c749a93 (diff) | |
download | lufa-44ecc034c1b773c619d12bc20ca3e757efec2520.tar.gz lufa-44ecc034c1b773c619d12bc20ca3e757efec2520.tar.bz2 lufa-44ecc034c1b773c619d12bc20ca3e757efec2520.zip |
Add Windows INF driver templates and class driver OS support information to the documentation.
Diffstat (limited to 'LUFA')
-rw-r--r-- | LUFA/CodeTemplates/WindowsINF/CDC-ACM.inf | 61 | ||||
-rw-r--r-- | LUFA/CodeTemplates/WindowsINF/RNDIS.inf | 56 | ||||
-rw-r--r-- | LUFA/DoxygenPages/DevelopingWithLUFA.txt | 1 | ||||
-rw-r--r-- | LUFA/DoxygenPages/OSDrivers.txt | 111 |
4 files changed, 229 insertions, 0 deletions
diff --git a/LUFA/CodeTemplates/WindowsINF/CDC-ACM.inf b/LUFA/CodeTemplates/WindowsINF/CDC-ACM.inf new file mode 100644 index 000000000..34ae08ff5 --- /dev/null +++ b/LUFA/CodeTemplates/WindowsINF/CDC-ACM.inf @@ -0,0 +1,61 @@ +; Windows LUFA CDC ACM Setup File +; Copyright (c) 2000 Microsoft Corporation + +[Version] +Signature="$Windows NT$" +Class=Ports +ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} +Provider=%MFGNAME% +DriverVer=7/1/2012,10.0.0.0 + +[Manufacturer] +%MFGNAME%=DeviceList, NTx86, NTamd64, NTia64 + +[SourceDisksNames] + +[SourceDisksFiles] + +[DestinationDirs] +DefaultDestDir=12 + +[DriverInstall] +Include=mdmcpq.inf +CopyFiles=FakeModemCopyFileSection +AddReg=DriverInstall.AddReg + +[DriverInstall.Services] +Include=mdmcpq.inf +AddService=usbser, 0x00000002, LowerFilter_Service_Inst + +[DriverInstall.AddReg] +HKR,,EnumPropPages32,,"msports.dll,SerialPortPropPageProvider" + +;------------------------------------------------------------------------------ +; Vendor and Product ID Definitions +;------------------------------------------------------------------------------ +; When developing your USB device, the VID and PID used in the PC side +; application program and the firmware on the microcontroller must match. +; Modify the below line to use your VID and PID. Use the format as shown below. +; Note: One INF file can be used for multiple devices with different VID and PIDs. +; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line. +;------------------------------------------------------------------------------ +[DeviceList] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044 + +[DeviceList.NTx86] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044 + +[DeviceList.NTamd64] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044 + +[DeviceList.NTia64] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044 + +;------------------------------------------------------------------------------ +; String Definitions +;------------------------------------------------------------------------------ +;Modify these strings to customize your device +;------------------------------------------------------------------------------ +[Strings] +MFGNAME="http://www.lufa-lib.org" +DESCRIPTION="LUFA CDC-ACM Virtual Serial Port"
\ No newline at end of file diff --git a/LUFA/CodeTemplates/WindowsINF/RNDIS.inf b/LUFA/CodeTemplates/WindowsINF/RNDIS.inf new file mode 100644 index 000000000..2bb0b8f88 --- /dev/null +++ b/LUFA/CodeTemplates/WindowsINF/RNDIS.inf @@ -0,0 +1,56 @@ +; Windows LUFA RNDIS Setup File +; Copyright (c) 2000 Microsoft Corporation + +[Version] +Signature="$Windows NT$" +Class=Net +ClassGUID={4d36e972-e325-11ce-bfc1-08002be10318} +Provider=%MFGNAME% +DriverVer=7/1/2012,10.0.0.0 + +[Manufacturer] +%MFGNAME%=DeviceList, NTx86, NTamd64, NTia64 + +[ControlFlags] +ExcludeFromSelect=* + +[DriverInstall] +Characteristics=0x84 ; NCF_PHYSICAL + NCF_HAS_UI +BusType=15 +include=netrndis.inf +needs=Usb_Rndis.ndi +AddReg=Rndis_AddReg_Vista + +[DriverInstall.Services] +include=netrndis.inf +needs=Usb_Rndis.ndi.Services + +;------------------------------------------------------------------------------ +; Vendor and Product ID Definitions +;------------------------------------------------------------------------------ +; When developing your USB device, the VID and PID used in the PC side +; application program and the firmware on the microcontroller must match. +; Modify the below line to use your VID and PID. Use the format as shown below. +; Note: One INF file can be used for multiple devices with different VID and PIDs. +; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line. +;------------------------------------------------------------------------------ +[DeviceList] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C + +[DeviceList.NTx86] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C + +[DeviceList.NTamd64] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C + +[DeviceList.NTia64] +%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204C + +;------------------------------------------------------------------------------ +; String Definitions +;------------------------------------------------------------------------------ +;Modify these strings to customize your device +;------------------------------------------------------------------------------ +[Strings] +MFGNAME="http://www.lufa-lib.org" +DESCRIPTION="LUFA RNDIS USB Ethernet Adapter" diff --git a/LUFA/DoxygenPages/DevelopingWithLUFA.txt b/LUFA/DoxygenPages/DevelopingWithLUFA.txt index e669e284c..9a02f95b9 100644 --- a/LUFA/DoxygenPages/DevelopingWithLUFA.txt +++ b/LUFA/DoxygenPages/DevelopingWithLUFA.txt @@ -15,6 +15,7 @@ * \li \subpage Page_TokenSummary - Summary of Compile Time Tokens * \li \subpage Page_Migration - Migrating from an Older LUFA Version * \li \subpage Page_VIDPID - Allocated USB VID and PID Values + * \li \subpage Page_OSDrivers - Operating System Driver Information * \li \subpage Page_BuildLibrary - Building as a Linkable Library * \li \subpage Page_ExportingLibrary - Exporting LUFA for IDE Use * \li \subpage Page_WritingBoardDrivers - How to Write Custom Board Drivers diff --git a/LUFA/DoxygenPages/OSDrivers.txt b/LUFA/DoxygenPages/OSDrivers.txt new file mode 100644 index 000000000..28c1ca93a --- /dev/null +++ b/LUFA/DoxygenPages/OSDrivers.txt @@ -0,0 +1,111 @@ +/** \file + * + * This file contains special DoxyGen information for the generation of the main page and other special + * documentation pages. It is not a project source file. + */ + +/** \page Page_OSDrivers Operating System Drivers + * + * Most of the USB classes supported by LUFA are also supported natively in + * most operating systems, without extra drivers being required. However, in + * some cases, a driver file is required in order for the device to enumerate + * and function correctly. + * + * \section Sec_OSClassSupport Operating System USB Class Support + * The table below lists the supported LUFA USB classes, and their associated + * <i>native</i> support on modern operating systems. + * + * <table> + * <tr> + * <th width="200px">USB Class</th> + * <th width="200px">Android</th> + * <th width="200px">Windows</th> + * <th width="200px">Linux</th> + * <th width="200px">OS X</th> + * </tr> + * <tr> + * <td>Android Open Accessory</td> + * <td>2.3.4+</td> + * <td>N/A</td> + * <td>N/A</td> + * <td>N/A</td> + * </tr> + * <tr> + * <td>Audio 1.0</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * <tr> + * <td>CDC-ACM</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * <tr> + * <td>HID</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * <tr> + * <td>MIDI</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * <tr> + * <td>Mass Storage</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * <tr> + * <td>Printer</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * <tr> + * <td>RNDIS</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>N/A</td> + * </tr> + * <tr> + * <td>Still Image</td> + * <td>N/A</td> + * <td>XP+</td> + * <td>2.6.?+</td> + * <td>10.?+</td> + * </tr> + * </table> + * + * \section Sec_WinINFTemplates Windows INF Drivers + * Windows uses INF driver files to associate a USB device of a specific class, + * Vendor and Product ID, compatibility ID or other characteristic to a kernel + * driver. In most cases these files are build into the operating system, and + * no special user action or driver files are required for a device using a + * standard USB class to enumerate. However, for some classes, a specific INF + * driver must be created and given to the operating system for the device to + * enumerate. + * + * Those USB classes requiring a custom INF driver file in Windows are listed + * below, along with a basic INF template for each class. + * + * \subsection SSec_WinINF_CDC Windows CDC INF Template + * This template is required for all CDC-ACM devices on Windows XP or newer. + * \verbinclude WindowsINF/CDC-ACM.inf + * + * \subsection SSec_WinINF_RNDIS Windows RNDIS INF Template + * This template is required for all CDC-RNDIS devices on Windows XP or newer. + * \verbinclude WindowsINF/RNDIS.inf + */ + |