//***************************************************************************** // // usbhandler.c - General USB handling routines. // // Copyright (c) 2007-2012 Texas Instruments Incorporated. All rights reserved. // Software License Agreement // // Texas Instruments (TI) is supplying this software for use solely and // exclusively on TI's microcontroller products. The software is owned by // TI and/or its suppliers, and is protected under applicable copyright // laws. You may not combine this software with "viral" open-source // software in order to form a larger program. // // THIS SOFTWARE IS PROVIDED "AS IS" AND WITH ALL FAULTS. // NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT // NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR // A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. TI SHALL NOT, UNDER ANY // CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL // DAMAGES, FOR ANY REASON WHATSOEVER. // // This is part of revision 9453 of the Stellaris USB Library. // //***************************************************************************** #include "inc/hw_memmap.h" #include "inc/hw_types.h" #include "driverlib/rom.h" #include "driverlib/rom_map.h" #include "driverlib/usb.h" #include "usblib/usblib.h" #include "usblib/device/usbdevice.h" #include "usblib/device/usbdevicepriv.h" #include "usblib/usblibpriv.h" //***************************************************************************** // //! \addtogroup device_api //! @{ // //***************************************************************************** //***************************************************************************** // //! The USB device interrupt handler. //! //! This the main USB interrupt handler entry point for use in USB device //! applications. This top-level handler will branch the interrupt off to the //! appropriate application or stack handlers depending on the current status //! of the USB controller. //! //! Applications which operate purely as USB devices (rather than dual mode //! applications which can operate in either device or host mode at different //! times) must ensure that a pointer to this function is installed in the //! interrupt vector table entry for the USB0 interrupt. For dual mode //! operation, the vector should be set to point to \e USB0DualModeIntHandler() //! instead. //! //! \return None. // //***************************************************************************** void USB0DeviceIntHandler(void) { unsigned long ulStatus; // // Get the controller interrupt status. // ulStatus = MAP_USBIntStatusControl(USB0_BASE); // // Call the internal handler. // USBDeviceIntHandlerInternal(0, ulStatus); } //***************************************************************************** // // Close the Doxygen group. //! @} // //*****************************************************************************