move MCU define to tusb_option.h, fix the ATTR with USB RAM

hack: add delay before the very first xfer when enumerating (finalize later
after reading USB 2.0 specs)
This commit is contained in:
hathach 2013-04-08 03:45:31 +07:00
parent 95df92055c
commit ef850984da
6 changed files with 17 additions and 15 deletions

View File

@ -3,7 +3,6 @@
<name>host</name>
<comment></comment>
<projects>
<project>tinyusb</project>
</projects>
<buildSpec>
<buildCommand>

View File

@ -46,9 +46,7 @@
//--------------------------------------------------------------------+
// INTERNAL OBJECT & FUNCTION DECLARATION
//--------------------------------------------------------------------+
//TUSB_CFG_ATTR_USBRAM
__attribute__ ((section(".data.$RAM3"))) // TODO hack for USB RAM
tusb_keyboard_report_t keyboard_report;
tusb_keyboard_report_t keyboard_report TUSB_CFG_ATTR_USBRAM;
//--------------------------------------------------------------------+
// IMPLEMENTATION

View File

@ -46,9 +46,7 @@
//--------------------------------------------------------------------+
// INTERNAL OBJECT & FUNCTION DECLARATION
//--------------------------------------------------------------------+
//TUSB_CFG_ATTR_USBRAM
__attribute__ ((section(".data.$RAM3"))) // TODO hack for USB RAM
tusb_mouse_report_t mouse_report;
tusb_mouse_report_t mouse_report TUSB_CFG_ATTR_USBRAM;
//--------------------------------------------------------------------+
// IMPLEMENTATION

View File

@ -273,6 +273,13 @@ OSAL_TASK_DECLARE(usbh_enumeration_task)
TASK_ASSERT_STATUS( usbh_pipe_control_open(0, 8) );
usbh_devices[0].state = TUSB_DEVICE_STATE_ADDRESSED;
#ifndef _TEST_
// TODO finalize delay after reset, hack delay 100 ms, otherwise speed is detected as LOW in most cases
volatile uint32_t delay_us = 10000;
delay_us *= (SystemCoreClock / 1000000) / 3;
while(delay_us--);
#endif
//------------- Get first 8 bytes of device descriptor to get Control Endpoint Size -------------//
OSAL_SUBTASK_INVOKED_AND_WAIT(
usbh_control_xfer_subtask(

View File

@ -51,13 +51,6 @@
#ifndef _TUSB_MCU_CAPACITY_H_
#define _TUSB_MCU_CAPACITY_H_
#define MCU_LPC13UXX 1
#define MCU_LPC11UXX 2
#define MCU_LPC43XX 3
#define MCU_LPC18XX 4
#define MCU_LPC175X_6X 5
#define MCU_LPC177X_8X 6
#ifdef __cplusplus
extern "C" {
#endif

View File

@ -59,9 +59,16 @@
#define TUSB_VERSION_NAME "alpha"
#define TUSB_VERSION XSTRING_(TUSB_VERSION_YEAR) "." XSTRING_(TUSB_VERSION_MONTH)
#define MCU_LPC13UXX 1
#define MCU_LPC11UXX 2
#define MCU_LPC43XX 3
#define MCU_LPC18XX 4
#define MCU_LPC175X_6X 5
#define MCU_LPC177X_8X 6
/// define this symbol will make tinyusb look for external configure file
#include "tusb_config.h"
#include "mcu_capacity.h"
#include "tusb_config.h"
//--------------------------------------------------------------------+
// CONTROLLER