More documentation changes for better module-level documentation rather than file-level documentation.

This commit is contained in:
Dean Camera
2009-04-17 05:04:21 +00:00
parent 6380d057f8
commit d38fa49cb6
61 changed files with 414 additions and 322 deletions
@@ -28,6 +28,10 @@
this software.
*/
#include "../HighLevel/USBMode.h"
#if defined(USB_CAN_BE_HOST)
#include "ConfigDescriptor.h"
uint8_t USB_Host_GetDeviceConfigDescriptor(uint16_t* const ConfigSizePtr, void* BufferPtr)
@@ -138,3 +142,5 @@ uint8_t USB_Host_GetNextDescriptorComp_P(uint16_t* BytesRem, uint8_t** CurrConfi
return Descriptor_Search_Comp_EndOfDescriptor;
}
#endif
+8 -7
View File
@@ -33,7 +33,14 @@
* USB Human Interface Device (HID) Class report descriptor processing routines. This file allows for the easy
* parsing of the complex HID report descriptor, which describes the data that the device transmits to the host.
*
* The processed report is presented back to the user application as a flat structure containing each report
*/
/** \ingroup Group_USB
* @defgroup Group_HIDParser HID Report Parser
*
* Functions, macros, variables, enums and types related to the parsing of HID class device report descriptors.
*
* The processed HID report is presented back to the user application as a flat structure containing each report
* item's IN, OUT and FEATURE (if desired) items along with each item's attributes.
*
* This library portion also allows for easy setting and retrieval of data from a HID report, including devices
@@ -43,12 +50,6 @@
* to save on memory. This can be overridden by defining the HID_ENABLE_FEATURE_PROCESSING or
* HID_INCLUDE_CONSTANT_DATA_ITEMS tokens in the user project makefile, passing them to the compiler via the -D
* switch.
*/
/** \ingroup Group_USB
* @defgroup Group_HIDParser HID Report Parser
*
* Functions, macros, variables, enums and types related to the parsing of HID class device report descriptors.
*
* @{
*/
+7 -10
View File
@@ -28,22 +28,19 @@
this software.
*/
/** Library events module. This module contains macros and functions relating to the management of library
* events, which are small pieces of code similar to ISRs which are run when a given condition is met. Each
* event can be fired from multiple places in the user or library code, which may or may not be inside an ISR,
* thus each handler should be written to be as small and fast as possible to prevent possible problems.
/** \ingroup Group_USB
* @defgroup Group_Events USB Events
*
* This module contains macros and functions relating to the management of library events, which are small
* pieces of code similar to ISRs which are run when a given condition is met. Each event can be fired from
* multiple places in the user or library code, which may or may not be inside an ISR, thus each handler
* should be written to be as small and fast as possible to prevent possible problems.
*
* Events can be hooked by the user application using the EVENT_HANDLER() and HANDLES_EVENT() macros. If an
* event with no associated handler is fired within the library, it by default fires an internal empty stub
* function. This is achieved through the use of the GCC compiler's "alias" attribute.
*
* Each event must only have one associated event handler, but can be raised by multiple sources.
*/
/** \ingroup Group_USB
* @defgroup Group_Events USB Events
*
* Functions, macros, variables, enums and types related to the management of events from the USB kernel.
*
* @{
*/
+2 -7
View File
@@ -28,7 +28,8 @@
this software.
*/
/** \file
/** \ingroup Group_USB
* @defgroup Group_Descriptors USB Descriptors
*
* Standard USB device descriptor defines and retrieval routines, for USB devices. This module contains
* structures and macros for the easy creation of standard USB descriptors in USB device projects.
@@ -42,12 +43,6 @@
* descriptors will contain elements named identically to the official USB specification. The alternately
* named descriptor elements are placed in the same order inside the descriptor structures as their officially
* named counterparts, thus they can be correlated easily with the official USB specification.
*/
/** \ingroup Group_USB
* @defgroup Group_Descriptors USB Descriptors
*
* Functions, macros, variables, enums and types related to standard USB descriptors.
*
* @{
*/
+2 -7
View File
@@ -28,16 +28,11 @@
this software.
*/
/** \file
*
* Contains definitions for the various control request parameters, so that the request details (such as data
* direction, request recipient, etc.) can be extracted via masking.
*/
/** \ingroup Group_USB
* @defgroup Group_StdRequest Standard USB Requests
*
* Functions, macros, variables, enums and types related to standard USB requests to USB devices.
* This module contains definitions for the various control request parameters, so that the request
* details (such as data direction, request recipient, etc.) can be extracted via masking.
*
* @{
*/
+3 -8
View File
@@ -27,18 +27,13 @@
arising out of or in connection with the use or performance of
this software.
*/
/** \file
*
* Macros and enums for the stream callback routines in Endpoint.h and Pipe.c. This module contains the
* code required to easily set up stream callback functions which can be used to force early abort of a
* stream read/write process.
*/
/** \ingroup Group_USB
* @defgroup Group_StreamCallbacks Endpoint and Pipe Stream Callbacks
*
* Functions, macros, variables, enums and types related to endpoint and pipe stream callback functions.
* Macros and enums for the stream callback routines in Endpoint.h and Pipe.c. This module contains the
* code required to easily set up stream callback functions which can be used to force early abort of a
* stream read/write process.
*
* @{
*/
+3 -7
View File
@@ -28,16 +28,12 @@
this software.
*/
/** \file
*
* Main USB interrupt vector handler. This file manages the main USB interrupt vector, for handling such
* events as VBUS interrupts (on supported USB AVR models), device connections and disconnections, etc.
*/
/** \ingroup Group_USB
* @defgroup Group_USBInterrupt Endpoint and Pipe Interrupts
*
* Functions, macros, variables, enums and types related to endpoint and pipe interrupts.
* Main USB interrupt vector handler. This file manages the main USB interrupt vector, for handling such
* events as VBUS interrupts (on supported USB AVR models), device connections and disconnections, etc.
* as well as providing easy to use macros for the management of the Endpoint/Pipe interrupt vector.
*
* @{
*/
-6
View File
@@ -27,12 +27,6 @@
arising out of or in connection with the use or performance of
this software.
*/
/** \file
*
* Main library USB management task for both Host and Device mode operations. This contains the master
* USB_USBTask task which should be periodically run to service both host and device USB projects.
*/
#ifndef __USBTASK_H__
#define __USBTASK_H__
-8
View File
@@ -28,14 +28,6 @@
this software.
*/
/** \file
*
* Module for device mode request processing. This module allows for the processing of standard control
* requests to the default control endpoint while in device mode.
*
* \see Chapter 9 of the USB 2.0 specification.
*/
#ifndef __DEVCHAPTER9_H__
#define __DEVCHAPTER9_H__
+2 -7
View File
@@ -27,17 +27,12 @@
arising out of or in connection with the use or performance of
this software.
*/
/** \file
*
* USB Device mode related macros and enums. This module contains macros and enums which are used when
* the USB controller is initialized in device mode.
*/
/** \ingroup Group_USB
* @defgroup Group_Device Device Management
*
* Functions, macros, variables, enums and types related to the management of a USB device when in Device mode.
* USB Device mode related macros and enums. This module contains macros and enums which are used when
* the USB controller is initialized in device mode.
*
* @{
*/
+2 -7
View File
@@ -28,17 +28,12 @@
this software.
*/
/** \file
/** \ingroup Group_USB
* @defgroup Group_EndpointManagement Endpoint Management
*
* Functions, macros and enums related to endpoint management when in USB Device mode. This
* module contains the endpoint management macros, as well as endpoint interrupt and data
* send/recieve functions for various data types.
*/
/** \ingroup Group_USB
* @defgroup Group_EndpointManagement Endpoint Management
*
* Functions, macros, variables, enums and types related to the setup and management of endpoints while in USB Device mode.
*
* @{
*/
+2 -7
View File
@@ -28,16 +28,11 @@
this software.
*/
/** \file
*
* USB Host mode related macros and enums. This module contains macros and enums which are used when
* the USB controller is initialized in host mode.
*/
/** \ingroup Group_USB
* @defgroup Group_Host Host Management
*
* Functions, macros, variables, enums and types related to the management of a USB host when in Host mode.
* USB Host mode related macros and enums. This module contains macros and enums which are used when
* the USB controller is initialized in host mode.
*
* @{
*/
-8
View File
@@ -28,14 +28,6 @@
this software.
*/
/** \file
*
* Module for host mode request processing. This module allows for the transmission of standard, class and
* vendor control requests to the default control endpoint of an attached device while in host mode.
*
* \see Chapter 9 of the USB 2.0 specification.
*/
#ifndef __HOSTCHAPTER9_H__
#define __HOSTCHAPTER9_H__
-6
View File
@@ -28,12 +28,6 @@
this software.
*/
/** \file
*
* Main low level USB driver. This module manages the low level initialization and shut down of the USB AVR's
* USB interface in either device or (if supported) host mode.
*/
/** \ingroup Group_USB
* @defgroup Group_USBManagement USB Interface Management
*
+3 -9
View File
@@ -27,19 +27,13 @@
arising out of or in connection with the use or performance of
this software.
*/
/** \file
*
* Macros for embedded USB hosts with dual role On The Go capabilities, for managing role exchange. OTG
* is a way for two USB dual role devices to talk to one another directly without fixed device/host roles.
*
* \note These macros are only for AVRs which support the OTG protocol, and do not exist for device-only AVRs.
*/
/** \ingroup Group_USB
* @defgroup Group_OTGManagement USB On The Go (OTG) Management
*
* Functions, macros, variables, enums and types related to the setup and management of dual role devices.
* This module contains macros for embedded USB hosts with dual role On The Go capabilities, for managing role
* exchange. OTG is a way for two USB dual role devices to talk to one another directly without fixed device/host
* roles.
*
* @{
*/
+8 -10
View File
@@ -27,18 +27,13 @@
arising out of or in connection with the use or performance of
this software.
*/
/** \file
*
* Functions, macros and enums related to pipe management when in USB Host mode. This
* module contains the pipe management macros, as well as pipe interrupt and data
* send/recieve functions for various data types.
*/
/** \ingroup Group_USB
* @defgroup Group_PipeManagement Pipe Management
*
* Functions, macros, variables, enums and types related to the setup and management of pipes while in USB Device mode.
* This module contains functions, macros and enums related to pipe management when in USB Host mode. This
* module contains the pipe management macros, as well as pipe interrupt and data send/recieve functions
* for various data types.
*
* @{
*/
@@ -55,8 +50,11 @@
/** @defgroup Group_PipeControlReq Pipe Control Request Management
*
* Functions, macros, variables, enums and types related to control request management of pipes.
*/
* Module for host mode request processing. This module allows for the transmission of standard, class and
* vendor control requests to the default control endpoint of an attached device while in host mode.
*
* \see Chapter 9 of the USB 2.0 specification.
*/
#ifndef __PIPE_H__
#define __PIPE_H__
+16 -3
View File
@@ -33,13 +33,26 @@
* Master include file for the library USB functionality. This file should be included in all user projects making
* use of the USB portions of the library, instead of including any headers in the USB/LowLevel or USB/HighLevel
* directories.
*
* Class specific utility files in USB/Class/ must still be included manually, as they are not normally part of
* the USB library unless desired by the library user.
*/
/** @defgroup Group_USB USB - LUFA/Drivers/USB/USB.h
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/LowLevel/DevChapter9.c
* - LUFA/Drivers/USB/LowLevel/Endpoint.c
* - LUFA/Drivers/USB/LowLevel/Host.c
* - LUFA/Drivers/USB/LowLevel/HostChapter9.c
* - LUFA/Drivers/USB/LowLevel/LowLevel.c
* - LUFA/Drivers/USB/LowLevel/Pipe.c
* - LUFA/Drivers/USB/HighLevel/Events.c
* - LUFA/Drivers/USB/HighLevel/StdDescriptors.c
* - LUFA/Drivers/USB/HighLevel/USBInterrupt.c
* - LUFA/Drivers/USB/HighLevel/USBTask.c
* - LUFA/Drivers/USB/Class/ConfigDescriptor.c
* - LUFA/Drivers/USB/Class/HIDParser.c
*
* \section Module Description
* Functions, macros, variables, enums and types related to the management of USB communications.
*/