Remove warnings in the documentation for the library class drivers about sequential pipe/endpoint allocation, as by default this is no longer as issue (unless ORDERED_EP_CONFIG is specified).

pull/1469/head
Dean Camera 14 years ago
parent e572ee7ff2
commit 34164a5550

@ -114,10 +114,6 @@
* \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration containing the * \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration containing the
* given Audio interface is selected. * given Audio interface is selected.
* *
* \note The endpoint index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or endpoint bank corruption will occur. Gaps in the allocated endpoint numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved endpoint indexes.
*
* \param[in,out] AudioInterfaceInfo Pointer to a structure containing an Audio Class configuration and state. * \param[in,out] AudioInterfaceInfo Pointer to a structure containing an Audio Class configuration and state.
* *
* \return Boolean \c true if the endpoints were successfully configured, \c false otherwise. * \return Boolean \c true if the endpoints were successfully configured, \c false otherwise.

@ -141,10 +141,6 @@
* \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration containing * \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration containing
* the given CDC interface is selected. * the given CDC interface is selected.
* *
* \note The endpoint index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or endpoint bank corruption will occur. Gaps in the allocated endpoint numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved endpoint indexes.
*
* \param[in,out] CDCInterfaceInfo Pointer to a structure containing a CDC Class configuration and state. * \param[in,out] CDCInterfaceInfo Pointer to a structure containing a CDC Class configuration and state.
* *
* \return Boolean \c true if the endpoints were successfully configured, \c false otherwise. * \return Boolean \c true if the endpoints were successfully configured, \c false otherwise.

@ -126,10 +126,6 @@
* \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration * \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration
* containing the given HID interface is selected. * containing the given HID interface is selected.
* *
* \note The endpoint index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or endpoint bank corruption will occur. Gaps in the allocated endpoint numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved endpoint indexes.
*
* \param[in,out] HIDInterfaceInfo Pointer to a structure containing a HID Class configuration and state. * \param[in,out] HIDInterfaceInfo Pointer to a structure containing a HID Class configuration and state.
* *
* \return Boolean \c true if the endpoints were successfully configured, \c false otherwise. * \return Boolean \c true if the endpoints were successfully configured, \c false otherwise.

@ -105,10 +105,6 @@
* \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration * \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration
* containing the given MIDI interface is selected. * containing the given MIDI interface is selected.
* *
* \note The endpoint index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or endpoint bank corruption will occur. Gaps in the allocated endpoint numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved endpoint indexes.
*
* \param[in,out] MIDIInterfaceInfo Pointer to a structure containing a MIDI Class configuration and state. * \param[in,out] MIDIInterfaceInfo Pointer to a structure containing a MIDI Class configuration and state.
* *
* \return Boolean \c true if the endpoints were successfully configured, \c false otherwise. * \return Boolean \c true if the endpoints were successfully configured, \c false otherwise.

@ -114,10 +114,6 @@
* \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration * \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration
* containing the given Mass Storage interface is selected. * containing the given Mass Storage interface is selected.
* *
* \note The endpoint index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or endpoint bank corruption will occur. Gaps in the allocated endpoint numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved endpoint indexes.
*
* \param[in,out] MSInterfaceInfo Pointer to a structure containing a Mass Storage Class configuration and state. * \param[in,out] MSInterfaceInfo Pointer to a structure containing a Mass Storage Class configuration and state.
* *
* \return Boolean \c true if the endpoints were successfully configured, \c false otherwise. * \return Boolean \c true if the endpoints were successfully configured, \c false otherwise.

@ -116,10 +116,6 @@
* \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration * \ref EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration
* containing the given RNDIS interface is selected. * containing the given RNDIS interface is selected.
* *
* \note The endpoint index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or endpoint bank corruption will occur. Gaps in the allocated endpoint numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved endpoint indexes.
*
* \param[in,out] RNDISInterfaceInfo Pointer to a structure containing a RNDIS Class configuration and state. * \param[in,out] RNDISInterfaceInfo Pointer to a structure containing a RNDIS Class configuration and state.
* *
* \return Boolean \c true if the endpoints were successfully configured, \c false otherwise. * \return Boolean \c true if the endpoints were successfully configured, \c false otherwise.

@ -120,11 +120,6 @@
* device. This should be called once after the stack has enumerated the attached device, while the host state * device. This should be called once after the stack has enumerated the attached device, while the host state
* machine is in the Addressed state. * machine is in the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
* \n\n
*
* \param[in,out] AudioInterfaceInfo Pointer to a structure containing an Audio Class host configuration and state. * \param[in,out] AudioInterfaceInfo Pointer to a structure containing an Audio Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor.

@ -151,10 +151,6 @@
* This should be called once after the stack has enumerated the attached device, while the host state machine is in * This should be called once after the stack has enumerated the attached device, while the host state machine is in
* the Addressed state. * the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
*
* \param[in,out] CDCInterfaceInfo Pointer to a structure containing an CDC Class host configuration and state. * \param[in,out] CDCInterfaceInfo Pointer to a structure containing an CDC Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor.

@ -148,11 +148,6 @@
* device. This should be called once after the stack has enumerated the attached device, while the host state * device. This should be called once after the stack has enumerated the attached device, while the host state
* machine is in the Addressed state. * machine is in the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
* \n\n
*
* \note Once the device pipes are configured, the HID device's reporting protocol <b>must</b> be set via a call * \note Once the device pipes are configured, the HID device's reporting protocol <b>must</b> be set via a call
* to either the \ref HID_Host_SetBootProtocol() or \ref HID_Host_SetReportProtocol() function. * to either the \ref HID_Host_SetBootProtocol() or \ref HID_Host_SetReportProtocol() function.
* *

@ -120,10 +120,6 @@
* This should be called once after the stack has enumerated the attached device, while the host state machine is in * This should be called once after the stack has enumerated the attached device, while the host state machine is in
* the Addressed state. * the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
*
* \param[in,out] MIDIInterfaceInfo Pointer to a structure containing an MIDI Class host configuration and state. * \param[in,out] MIDIInterfaceInfo Pointer to a structure containing an MIDI Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor.

@ -137,10 +137,6 @@
* is found within the device. This should be called once after the stack has enumerated the attached device, while * is found within the device. This should be called once after the stack has enumerated the attached device, while
* the host state machine is in the Addressed state. * the host state machine is in the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
*
* \param[in,out] MSInterfaceInfo Pointer to a structure containing an MS Class host configuration and state. * \param[in,out] MSInterfaceInfo Pointer to a structure containing an MS Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] ConfigDescriptorData Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorData Pointer to a buffer containing the attached device's Configuration Descriptor.

@ -114,24 +114,12 @@
}; };
/* Function Prototypes: */ /* Function Prototypes: */
/** General management task for a given Printer host class interface, required for the correct operation of
* the interface. This should be called frequently in the main program loop, before the master USB management task
* \ref USB_USBTask().
*
* \param[in,out] PRNTInterfaceInfo Pointer to a structure containing a Printer Class host configuration and state.
*/
void PRNT_Host_USBTask(USB_ClassInfo_PRNT_Host_t* const PRNTInterfaceInfo) ATTR_NON_NULL_PTR_ARG(1);
/** Host interface configuration routine, to configure a given Printer host interface instance using the /** Host interface configuration routine, to configure a given Printer host interface instance using the
* Configuration Descriptor read from an attached USB device. This function automatically updates the given Printer * Configuration Descriptor read from an attached USB device. This function automatically updates the given Printer
* instance's state values and configures the pipes required to communicate with the interface if it is found within * instance's state values and configures the pipes required to communicate with the interface if it is found within
* the device. This should be called once after the stack has enumerated the attached device, while the host state * the device. This should be called once after the stack has enumerated the attached device, while the host state
* machine is in the Addressed state. * machine is in the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
*
* \param[in,out] PRNTInterfaceInfo Pointer to a structure containing a Printer Class host configuration and state. * \param[in,out] PRNTInterfaceInfo Pointer to a structure containing a Printer Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor.
@ -142,6 +130,14 @@
uint16_t ConfigDescriptorSize, uint16_t ConfigDescriptorSize,
void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3); void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
/** General management task for a given Printer host class interface, required for the correct operation of
* the interface. This should be called frequently in the main program loop, before the master USB management task
* \ref USB_USBTask().
*
* \param[in,out] PRNTInterfaceInfo Pointer to a structure containing a Printer Class host configuration and state.
*/
void PRNT_Host_USBTask(USB_ClassInfo_PRNT_Host_t* const PRNTInterfaceInfo) ATTR_NON_NULL_PTR_ARG(1);
/** Configures the printer to enable Bidirectional mode, if it is not already in this mode. This should be called /** Configures the printer to enable Bidirectional mode, if it is not already in this mode. This should be called
* once the connected device's configuration has been set, to ensure the printer is ready to accept commands. * once the connected device's configuration has been set, to ensure the printer is ready to accept commands.
* *

@ -131,10 +131,6 @@
* This should be called once after the stack has enumerated the attached device, while the host state machine is in * This should be called once after the stack has enumerated the attached device, while the host state machine is in
* the Addressed state. * the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
*
* \param[in,out] RNDISInterfaceInfo Pointer to a structure containing an RNDIS Class host configuration and state. * \param[in,out] RNDISInterfaceInfo Pointer to a structure containing an RNDIS Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] DeviceConfigDescriptor Pointer to a buffer containing the attached device's Configuration Descriptor.

@ -133,10 +133,6 @@
* found within the device. This should be called once after the stack has enumerated the attached device, while * found within the device. This should be called once after the stack has enumerated the attached device, while
* the host state machine is in the Addressed state. * the host state machine is in the Addressed state.
* *
* \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
* interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
* within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
*
* \param[in,out] SIInterfaceInfo Pointer to a structure containing a Still Image Class host configuration and state. * \param[in,out] SIInterfaceInfo Pointer to a structure containing a Still Image Class host configuration and state.
* \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor.
* \param[in] ConfigDescriptorData Pointer to a buffer containing the attached device's Configuration Descriptor. * \param[in] ConfigDescriptorData Pointer to a buffer containing the attached device's Configuration Descriptor.

@ -84,7 +84,9 @@
* <b>ORDERED_EP_CONFIG</b> - (\ref Group_EndpointManagement , \ref Group_PipeManagement) - <i>AVR8 Only</i> \n * <b>ORDERED_EP_CONFIG</b> - (\ref Group_EndpointManagement , \ref Group_PipeManagement) - <i>AVR8 Only</i> \n
* The USB AVRs do not allow for Endpoints and Pipes to be configured out of order; they <i>must</i> be configured in an ascending order to * The USB AVRs do not allow for Endpoints and Pipes to be configured out of order; they <i>must</i> be configured in an ascending order to
* prevent data corruption issues. However, by default LUFA employs a workaround to allow for unordered Endpoint/Pipe initialization. This compile * prevent data corruption issues. However, by default LUFA employs a workaround to allow for unordered Endpoint/Pipe initialization. This compile
* time token may be used to restrict the initialization order to ascending indexes only in exchange for a smaller compiled binary size. * time token may be used to restrict the initialization order to ascending indexes only in exchange for a smaller compiled binary size. Use
* caution when applied to applications using the library USB Class drivers; the user application must ensure that all endpoints and pipes are
* allocated sequentially.
* *
* <b>USE_STATIC_OPTIONS</b>=<i>x</i> - (\ref Group_USBManagement) - <i>All Architectures</i> \n * <b>USE_STATIC_OPTIONS</b>=<i>x</i> - (\ref Group_USBManagement) - <i>All Architectures</i> \n
* By default, the USB_Init() function accepts dynamic options at runtime to alter the library behaviour, including whether the USB pad * By default, the USB_Init() function accepts dynamic options at runtime to alter the library behaviour, including whether the USB pad

Loading…
Cancel
Save