aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2009-08-17 12:38:24 +0000
committerDean Camera <dean@fourwalledcubicle.com>2009-08-17 12:38:24 +0000
commitecd82778cf9a53e34f13d9ce6dcd7e1a4cf76b70 (patch)
treec9c4a38b9a264ea77f4a18b64b3da51560d7f079 /LUFA
parent09bedd6555a72c70f6d6bfb965225d44dec171cd (diff)
downloadlufa-ecd82778cf9a53e34f13d9ce6dcd7e1a4cf76b70.tar.gz
lufa-ecd82778cf9a53e34f13d9ce6dcd7e1a4cf76b70.tar.bz2
lufa-ecd82778cf9a53e34f13d9ce6dcd7e1a4cf76b70.zip
Added beginnings of a new AVRISP-MKII clone project.
Added new Endpoint_SetEndpointDirection() macro to set the current endpoint direction for bidirectional endpoints. Renamed internal USB_INT_ENDPOINT_SETUP macro to USB_INT_RXSTPI to fit in with the rest of the interrupt vector macros.
Diffstat (limited to 'LUFA')
-rw-r--r--LUFA/Drivers/USB/HighLevel/USBInterrupt.c4
-rw-r--r--LUFA/Drivers/USB/HighLevel/USBInterrupt.h2
-rw-r--r--LUFA/Drivers/USB/LowLevel/Endpoint.h8
-rw-r--r--LUFA/ManPages/ChangeLog.txt2
-rw-r--r--LUFA/ManPages/FutureChanges.txt3
5 files changed, 15 insertions, 4 deletions
diff --git a/LUFA/Drivers/USB/HighLevel/USBInterrupt.c b/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
index a8083c92a..f58e67010 100644
--- a/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
+++ b/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
@@ -148,7 +148,7 @@ ISR(USB_GEN_vect, ISR_BLOCK)
ENDPOINT_BANK_SINGLE);
#if defined(INTERRUPT_CONTROL_ENDPOINT)
- USB_INT_Enable(USB_INT_ENDPOINT_SETUP);
+ USB_INT_Enable(USB_INT_RXSTPI);
#endif
EVENT_USB_Device_Reset();
@@ -236,7 +236,7 @@ ISR(USB_COM_vect, ISR_BLOCK)
USB_USBTask();
- USB_INT_Clear(USB_INT_ENDPOINT_SETUP);
+ USB_INT_Clear(USB_INT_RXSTPI);
Endpoint_SelectEndpoint(PrevSelectedEndpoint);
}
diff --git a/LUFA/Drivers/USB/HighLevel/USBInterrupt.h b/LUFA/Drivers/USB/HighLevel/USBInterrupt.h
index 14f693050..5407e7d37 100644
--- a/LUFA/Drivers/USB/HighLevel/USBInterrupt.h
+++ b/LUFA/Drivers/USB/HighLevel/USBInterrupt.h
@@ -72,7 +72,7 @@
#define USB_INT_HSOFI UHIEN, (1 << HSOFE) , UHINT , (1 << HSOFI)
#define USB_INT_RSTI UHIEN , (1 << RSTE) , UHINT , (1 << RSTI)
#define USB_INT_SRPI OTGIEN, (1 << SRPE) , OTGINT, (1 << SRPI)
- #define USB_INT_ENDPOINT_SETUP UEIENX, (1 << RXSTPE) , UEINTX, (1 << RXSTPI)
+ #define USB_INT_RXSTPI UEIENX, (1 << RXSTPE) , UEINTX, (1 << RXSTPI)
/* Function Prototypes: */
void USB_INT_ClearAllInterrupts(void);
diff --git a/LUFA/Drivers/USB/LowLevel/Endpoint.h b/LUFA/Drivers/USB/LowLevel/Endpoint.h
index a9ec122a2..e27ac50a6 100644
--- a/LUFA/Drivers/USB/LowLevel/Endpoint.h
+++ b/LUFA/Drivers/USB/LowLevel/Endpoint.h
@@ -331,6 +331,12 @@
* \return The currently selected endpoint's direction, as a ENDPOINT_DIR_* mask.
*/
static inline uint8_t Endpoint_GetEndpointDirection(void);
+
+ /** Sets the direction of the currently selected endpoint.
+ *
+ * \param DirectionMask New endpoint direction, as a ENDPOINT_DIR_* mask.
+ */
+ static inline void Endpoint_SetEndpointDirection(uint8_t DirectionMask);
#else
#if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR) || defined(__DOXYGEN__)
#define Endpoint_BytesInEndpoint() UEBCX
@@ -399,6 +405,8 @@
#define Endpoint_ResetDataToggle() MACROS{ UECONX |= (1 << RSTDT); }MACROE
#define Endpoint_GetEndpointDirection() (UECFG0X & ENDPOINT_DIR_IN)
+
+ #define Endpoint_SetEndpointDirection(dir) MACROS{ UECFG0X = ((UECFG0X & ~ENDPOINT_DIR_IN) | dir); }MACROE
#endif
/* Enums: */
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index 8952337ba..e2f6841ea 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -13,6 +13,8 @@
* - Added flag to the HID report parser to indicate if a device has multiple reports
* - Added new EVENT_USB_Device_StartOfFrame() event, controlled by the new USB_Device_EnableSOFEvents() and
* USB_Device_DisableSOFEvents() macros to give bus-synchronised millisecond interrupts when in USB device mode
+ * - Added new Endpoint_SetEndpointDirection() macro for bi-directional endpoints
+ * - Added new AVRISP project, a LUFA clone of the Atmel AVRISP-MKII programmer
*
* <b>Changed:</b>
* - SetIdle requests to the HID device driver with a 0 idle period (send changes only) now only affect the requested
diff --git a/LUFA/ManPages/FutureChanges.txt b/LUFA/ManPages/FutureChanges.txt
index daabcea4e..5511d6405 100644
--- a/LUFA/ManPages/FutureChanges.txt
+++ b/LUFA/ManPages/FutureChanges.txt
@@ -12,9 +12,10 @@
* or post your suggestion as an enhancement request to the project bug tracker.
*
* <b>Targeted for This Release:</b>
- * - Host Mode Class Drivers
+ * - Finish Host Mode Class Drivers
* - Add overviews of each of the officially supported boards to the manual
* - Add hub support to match Atmel's stack
+ * - Finish AVRISP Project
*
* <b>Targeted for Future Releases:</b>
* - Add standardized descriptor names to device and host class driver structures