Commit Graph

126 Commits

Author SHA1 Message Date
hathach
4b6c6929cb fix the duplicated plug connection status change with lpc17xx by using immediate reset on isr. However Khanh's G5 mouse is not enumerated !!
remove TUSB_CFG_CONFIGURATION_MAX from config file
fix some warning
2014-02-20 16:06:31 +07:00
hathach
8f70a6a886 change endian conversion to native to be & be to native
completely deferred xfer isr event to usbd task
complete read10, write10 sequence for large data transfer
2013-11-26 13:15:40 +07:00
hathach
c303154b7a add class mounted callback for hid mouse/keyboard & refractor mouse/keyboard app 2013-11-21 13:54:29 +07:00
hathach
05c439e45a refractor usbd, first step to make get configuration as sub task 2013-11-15 13:26:12 +07:00
hathach
fc68439b74 add usbd_task to handle event task eg setup received 2013-11-15 12:30:22 +07:00
hathach
318a058d3c static assert to check OSAL_QUEUE_DEF's queue_depth parameter < 256
enable HOST_HCD_XFER_INTERRUPT by default (previously only enabled with HID), as it is widely used
implement tusbh_cdc_is_busy
add compilation switch in usbh enumeration for hub
rewrite CDC serial application to address usb-serial race condition
2013-10-27 19:34:36 +07:00
hathach
0d9e1163df fix osal_none timeout, instant return with OSAL_TIMEOUT_NOTIMEOUT 2013-10-27 16:48:09 +07:00
hathach
5f23653c69 more doxygen work 2013-10-25 13:45:57 +07:00
hathach
b71ffe3d5a change TUSB_CFG_CONTROLLER0/1_MODE to TUSB_CFG_CONTROLLER_0/1_MODE for clearance
adding configuration docs for tinyusb_config.h
document HID mouse & keyboard API
2013-10-24 15:32:54 +07:00
hathach
bbfa85aa08 allow a limited model to deal with stalled pipe/transaction
added stall clear & able to mount the stupid toshiba thumb drive

add HCD pipe API
- bool hcd_pipe_is_busy(pipe_handle_t pipe_hdl);
- bool hcd_pipe_is_stalled(pipe_handle_t pipe_hdl);
- uint8_t hcd_pipe_get_endpoint_addr(pipe_handle_t pipe_hdl);
- tusb_error_t hcd_pipe_clear_stall(pipe_handle_t pipe_hdl);

remove tusbh_device_mount_failed_cb (not neccessary for user)
2013-09-24 18:23:34 +07:00
hathach
61c591b9ac clean up warnings 2013-09-18 23:34:03 +07:00
hathach
e32e901cd1 increase usb transaction time-out as host_cmsis_rtx easily timeouted 2013-09-14 00:00:05 +07:00
hathach
0d279facbb fix cmsis rtx tick configuration
everything should work
TODO: remove static for variable error in control xfer subtask
2013-09-13 23:32:07 +07:00
hathach
67453b89f0 fix task def with cmsis rtx 2013-09-13 23:01:43 +07:00
hathach
ad0ef2e266 all project can run ok 2013-09-13 22:30:11 +07:00
hathach
c71f5c6f1b integrate & able to run cmsis-rtx with current code base 2013-09-13 16:53:17 +07:00
hathach
14a8e26697 able to get blinky + greeting 2013-09-10 10:43:24 +07:00
hathach
e4ae45359d fix bug with RNDIS class open using non-static variable p_cdc
fix bug with SUBTASK_EXIT with single if (add do while wrapper)
add payloay message
able to send initialize & wait on notification pipe & get initialize cmpt
2013-07-05 20:21:24 +07:00
hathach
c08c655fd1 implementing initializing for RNDIS 2013-07-05 11:46:12 +07:00
hathach
97cbb39f6f port osal_mutex to freeRTOS, able to mount mouse & cdc device
tinyusb host stack overflow though
2013-07-04 13:24:54 +07:00
hathach
a943cce991 test refractor 2013-06-29 21:00:33 +07:00
hathach
9e607f6dee add SUBTASK_EXIT in osal.h for TDD project 2013-06-29 16:20:24 +07:00
hathach
a07ff5a3ce use SUBTASK_EXIT to restart & exit task without "assert" 2013-06-27 16:32:54 +07:00
hathach
3bca56665c add mutex support for osal
add test for mutex in test_osal_none.c
implement usbh_control_xfer using mutex to get access to queue xfer on control pipe
(while semaphore is used to sync with hcd DMA)
failed to issue control xfer: set idle & get report descriptor in hidh_open_subtask (more to work on)
2013-06-27 16:19:22 +07:00
hathach
c81c4bb817 add set idle request for hidh_open_subtask
add interface number to hidh_interface_info_t
refractor hidh_open_subtask to be a true subtask
cannot run with set idle code ON because of semaphore misuse
2013-06-27 03:20:14 +07:00
hathach
d7ae21203c fix issue with osal_none queue def 2013-05-21 17:57:21 +07:00
hathach
63add70139 test clean up 2013-05-09 12:49:52 +07:00
hathach
120db28a17 change format of file header & license spacing 2013-05-06 12:50:19 +07:00
hathach
38172d3d3c fix bug with osal_queue for freeRTOS
implement process mouser report to clarify mouse app task
2013-04-27 16:40:18 +07:00
hathach
8bd077fa5c fix bug (wrong logic) with osal_task_delay in non OS configure
complete keyboard app with key state & event TODO handle & check for non-printable(control) keycode
add unit test for osal_task_delay for non OS
2013-04-27 00:24:15 +07:00
hathach
c0104b996e implement hcd_port_speed_get
move port reset & speed detection from isr context to usbh enumeration task
- decrease time in isr significantly from 50 ms to 580us
fix bug with osal_task_delay for freeRTOS buil
2013-04-25 17:48:55 +07:00
hathach
3763e22c9a change OSAL_TASK_DEF to decouple variable name with task name
implement osal_task_delay for freeRTOS & non_os
getting both no_os & freertos running with mouse + keyboard
2013-04-25 16:41:00 +07:00
hathach
92994c8192 add attribute warn unused result for osal_create_* function
taskify keyboard_app mouse_app & led_blinking
2013-04-25 11:55:24 +07:00
hathach
e9dbce5f1b add TUSB_CFG_OS_TASK_PRIO to mandatory option for using an RTOS
using plain char for error enum character
increase freeRTOS configMAX_PRIORITIES to 16
house keeping & clean up compiler warning
2013-04-25 11:00:56 +07:00
hathach
d4a2600ecc - change OSAL_TASK_FUNCTION to have void* parameter (to be consistent with most popular RTOS)
- add new error enum TUSB_ERROR_OSAL_TASK_CREATE_FAILED
- move usbh_enumeration_task prototype to usbh.h
- change OSAL_SUBTASK_INVOKED_AND_WAIT behavior, will not "return" in calling task when subtask got error status.
calling task need to do that after the call
- osal_queue_receive signature from uint32_t* to void*

- implement osal_freertos.h for FreeRTOS 7.3 --> able to compile & build host_freertos
+ OSAL_TASK_FUNCTION
+ turn on FPU for M4 in both host_os_none & host_freertos (freertos requires FPU to be on to compile)
+ osal_task_create
+ OSAL_SUBTASK_INVOKED_AND_WAIT
+ SUBTASK_ASSERT
+ osal_semaphore_reset
+ osal_queue_flush
+ adding heap_1.c for memory management
2013-04-24 17:53:43 +07:00
hathach
574710dde5 move main work in usbh_enumeration_task to its body subtask for task_assert style 2013-04-24 13:45:42 +07:00
hathach
d312be7006 fix potential error with usbh_control_xfer_subtask in subtask_assert
change back to use task_assert style in usbh_enumeraion
change test to task->subtask->subtask style in test/test_osal_none.c
2013-04-24 12:20:56 +07:00
hathach
73d5f00a40 rename OSAL_TASK_DECLARE to OSAL_TASK_FUNCTION
removing TASK_ASSERT to avoid using goto/continue statement with rtos configure
2013-04-23 15:35:27 +07:00
hathach
357888a5e5 rename nxp_sof_received to nxp_int_sof
implementing freeRTOS integration
change get_period_frame_list from using lst_idx to hostid (fix bug)
adding polling interval supported for interrupt: 1ms, 2ms, 4ms, 8ms
- add interval_ms to get_period_head function
- add bInterval to qhd_init
- add support for sub-frame (less than 8 micro frames) interval
- add bunch of test for interrupt different intervals
2013-04-21 00:28:25 +07:00
hathach
a9010c1786 getting build with freertos & host demo 2013-04-16 16:48:19 +08:00
hathach
e14aa4197d change osal_queue_send(osal_queue_handle_t const queue_hdl, uint32_t data) signature to osal_queue_send(osal_queue_handle_t const queue_hdl, const void * data)
- support any size queue message (instead of fixed uint32_t)
2013-04-10 01:18:32 +07:00
hathach
1776bb53f6 add hal init for USB1 and trying to get USB1 working
add hack delay 100 ms after a port reset (huge) for correct speed detection
2013-04-07 03:40:24 +07:00
hathach
fcb8e295ec clean up, update tests for hcd_port_reset after 8 byte descriptor & set configure before open class driver 2013-03-29 23:37:59 +07:00
hathach
56cd8be75e change website from tinyusb.net to tinyusb.org 2013-03-25 11:46:30 +07:00
hathach
453ea39865 add project file for keil
fix binary.h compiler specific
add hal_init code to reset & set usbmode --> able to get USB ISR
remove const qualifier from return function of
- get_operational_register
- get_period_frame_list
- get_async_head
- get_period_head
- get_control_qhd
add stub for
- hcd_port_connect_status
- hcd_port_speed
2013-03-12 12:06:40 +07:00
hathach
38ff7123b4 add semaphore reset & queue flush API for osal
add semaphore reset when opening control pipe
2013-03-12 00:10:52 +07:00
hathach
8eaad2326b add semphore reset & queue flush API
modify test to check control pipe semaphore created with usbh_init
2013-03-11 12:00:25 +07:00
hathach
f56f6b6749 add timeout_timer.h to provide real tick timeout service for blocking control 2013-02-27 20:58:11 +07:00
hathach
594fc6771c make osal_tick_get, osal_tick_tock static inline 2013-02-27 20:13:49 +07:00
hathach
49da210860 add osal subtask support
add usbh_control_xfer_subtask as xfer and wait
fix potential error when update device info & open control pipe for new address
fix build error with hal_****.c
add STATIC_ASSSERT to perform compile time checking with sizeof later
update osal_queue_receive and osal_semaphore_wait for osal_none to support subtask
2013-02-26 17:28:05 +07:00