Commit Graph

458 Commits

Author SHA1 Message Date
hathach 3a54ad4c0d implement msc device class
usbd auto stall control for not supported return from class control request
usbd implement xfer isr callback mechanism
DCD
- implement dcd multiple qtd support
- dcd dcd_pipe_stall
- implement dcd_pipe_queue_xfer
- xfer_complete_isr
- flush control endpoint if received new setup while previous transfer is not complete
change msc_cmd_block_wrapper_t flags field to dir
force full speed for easy testing

NOTEs: somehow unable to get endpoint IN interrupt with ioc
2013-11-01 12:11:26 +07:00
hathach d67a7b7959 fix dcd_data declared with TUSB_CFG_ATTR_USBRAM
fix lpc43xx UM: non-control unused endpoint type should be set to different than control in ENDPTCTRL
add hid mouse device
fix mouse descriptor with vertical wheel support
2013-10-30 12:20:00 +07:00
hathach d9ce879df8 able to enumerate mouse + keyboard (missing timing at set configured though) 2013-10-29 17:16:41 +07:00
hathach cb0a02f8c9 change device driver init to open (when configured)
fix HID_REQUEST_CONTROL_SET_REPORT handle
2013-10-29 16:29:48 +07:00
hathach 5ab195a73d temporarily implementation of dcd_pipe_is_busy 2013-10-29 15:09:16 +07:00
hathach db986b3107 able to fully enumerated with keyboard 2013-10-29 14:19:56 +07:00
hathach 357813f171 implementing sw device stack 2013-10-29 11:27:25 +07:00
hathach d925026089 make device keyboard buildable & runnable with ea4357 2013-10-27 21:33:06 +07:00
hathach a98bae0d19 enhance serial host app 2013-10-27 20:56:41 +07:00
hathach 1d28b2bd10 refractor cdc serial host app.
fix RTOS cdc_serial_app_task executing forever
2013-10-27 20:44:06 +07:00
hathach 064d0cf5a9 document cdc 2013-10-27 19:59:06 +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 0d00742cf0 more doxygen work
rename tusb_mouse_report_t (keyboard) to hid_mouse_report_t (keyboard)
2013-10-25 17:28:31 +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 15c80a9580 clean up 2013-10-16 12:35:55 +07:00
hathach 86b3e3174d refine mouse demo 2013-10-16 12:05:48 +07:00
hathach f28d2d1189 add supported class to greeting 2013-10-15 12:39:11 +07:00
hathach 6f9172c15f clean up warnings here and there 2013-10-02 14:20:05 +07:00
hathach 1263dbb122 enhacne msc demo, update IAR project file 2013-10-02 13:32:39 +07:00
hathach 5c8389b9ae update freertos project
temp hack to fix problem with no TD on status endpoint of hub in case of error
2013-10-02 11:01:28 +07:00
hathach ef83b8e10a wrap up msc demo 2013-10-01 17:05:02 +07:00
hathach fffd613897 enhance cd command 2013-10-01 16:36:52 +07:00
hathach 18b3179bc6 refractor msc host app examples 2013-10-01 16:11:34 +07:00
hathach 640b0ec546 - move disconnection handle to enum task --> move tusbh_xxx_unmount is invoked in non-isr context 2013-10-01 13:53:54 +07:00
hathach 4da3b03430 refractor hub 2013-10-01 12:12:35 +07:00
hathach 93821c55ce hack ehci advance async to handle disconnect via hub 2013-09-30 18:40:20 +07:00
hathach 5fb22e3f34 refractor hub 2013-09-30 16:13:08 +07:00
hathach 821f85cb20 refractor hub 2013-09-30 15:34:22 +07:00
hathach 3cc169f2fd able to mount one device on the hub 2013-09-30 15:16:23 +07:00
hathach cb600ed988 clean up hid host (temp let test failed) 2013-09-28 01:01:44 +07:00
hathach bfa96ae9da fix an "extra" semaphore wait in msc host 2013-09-27 23:23:45 +07:00
hathach eb1a101667 house keeping 2013-09-27 22:38:23 +07:00
hathach 26f75d6cac house keeping 2013-09-26 15:35:15 +07:00
hathach 238afb474f house keeping 2013-09-26 15:15:16 +07:00
hathach a6726f7d39 added mkdir command 2013-09-26 15:08:49 +07:00
hathach 0268e0b787 added clear screen command 2013-09-26 15:04:02 +07:00
hathach 9d60db0f9f add scsi write10 & test unit ready
done copy command
implement get_fattime using __DATE__ and number of calls
2013-09-26 14:37:40 +07:00
hathach 4bdede53eb refractor cli error handling
add cat command
2013-09-26 11:27:48 +07:00
hathach f827750120 add cat command to cli 2013-09-26 01:14:27 +07:00
hathach b995e25308 enable long filename 2013-09-25 20:44:18 +07:00
hathach 89898acd5d almost complete cli for msc 2013-09-25 19:52:05 +07:00
hathach 1fee50b9fe add tusbh_msc_status
reanme PRINTF_TARGET_DEBUG_CONSOLE to PRINTF_TARGET_SEMIHOST
add read10 implementation
able to read fat root sector
2013-09-25 16:20:38 +07:00
hathach cf65f859be working on fatfs integration
fix retarget input for lpcxpresso
2013-09-25 11:23:53 +07:00
hathach bd9af2d57b added cli support 2013-09-24 21:04:56 +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 63b776f7cf add some tests support for msc host
refractor msch buffer for getting inital scsi like inquiry, read capacity
adding support for resovling stall on control pipe
2013-09-24 15:21:16 +07:00
hathach c4fef827b1 refractor, add wheel for mouse demo 2013-09-23 01:12:59 +07:00
hathach a8a10e8650 added read capacity 10 with hacking code 2013-09-22 23:54:44 +07:00
hathach cc91a73cdc fix pingstate for highspeed bulk out transfer
temp implementation of msc host --> can issue inquiry command
2013-09-22 18:44:55 +07:00
hathach 5708863859 house keeping, clean up warnings 2013-09-21 14:38:40 +07:00
hathach d15ba08fdc house keeping 2013-09-21 13:17:43 +07:00
hathach 2db5fcdf0a update keil project for freertos & cmsis 2013-09-21 01:05:54 +07:00
hathach 295612b48f remove ATTR_WEAK for all necessary driver callback
fix ceedling tests
2013-09-21 00:42:39 +07:00
hathach f8f398a681 start to add msc host, fix dangerous problem with unstable device when plugged --> 200 ms delay. 50ms delay after each port reset 2013-09-20 23:53:48 +07:00
hathach 52ae0afeb6 refine hid host driver 2013-09-20 16:20:28 +07:00
hathach d8907c9a2b IAR host none project working 2013-09-19 18:18:05 +07:00
hathach 86681fe442 starting to add support for IAR workbench 2013-09-19 16:11:11 +07:00
hathach 61c591b9ac clean up warnings 2013-09-18 23:34:03 +07:00
hathach 9d87a1c62b temporarily comment out all the lwip related code 2013-09-18 21:08:48 +07:00
hathach 1cd2d5cf36 able to build with newly added lwip folder 2013-09-16 16:38:46 +07:00
hathach 0c97131149 start to add lwip support 2013-09-14 15:24:59 +07:00
hathach 765ce19be1 update cmsis rtx keil project for LPC4357USB 2013-09-13 23:37:09 +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 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 1f573eecf2 added keil project for host_freertos 2013-09-12 15:55:54 +07:00
hathach 968c218f33 Merge branch 'master' of github.com:microbuilder/tinyusb
Conflicts:
	demos/host/host_os_none/host_os_none.uvopt
2013-09-12 14:44:02 +07:00
hathach ad5ce98c02 finshed upgrading lpc43xx cmsis 2013-09-12 14:42:08 +07:00
hathach 8a8537d7e5 updating lib *.c 2013-09-12 14:27:22 +07:00
hathach 239864c6cf update history & freertos project 2013-09-12 14:20:22 +07:00
hathach 0769643814 update header files 2013-09-12 14:06:59 +07:00
hathach dc6f6e3b3e rename lpc43 cmsis folder, preparing to upgrade cmsis from v2.10 to 3.01 2013-09-12 13:58:33 +07:00
hathach 09dd83c05b add set msg & get set cmplt for OID_GEN_CURRENT_PACKET_FILTER (default = 0 reject all) to
○ NDIS_PACKET_TYPE_DIRECTED
○ NDIS_PACKET_TYPE_MULTICAST
○ NDIS_PACKET_TYPE_BROADCAST
2013-09-11 15:03:37 +07:00
Kevin Townsend 50d0e9bb8d Apply power to USB 2013-09-10 09:20:59 +02:00
Kevin Townsend 3e54ab7c9e Added trace support for LPC4357USB boards 2013-09-10 09:09:22 +02:00
hathach 2d021e0728 added support for RETARGET SWO 2013-09-10 13:36:19 +07:00
hathach e823862ed1 clean up 2013-09-10 13:15:21 +07:00
hathach b0b56a417e added LPC4357_USB board 2013-09-10 12:30:41 +07:00
hathach 6916515612 complete porting to keil
- updated cgu
- require microlib for printf retarget
- cannot use fp enable option in keil (may require cmsis update)
2013-09-10 12:22:57 +07:00
hathach 9ed3e80582 keil project can mount mouse, but cannot mount rndis 2013-09-10 11:47:05 +07:00
hathach 14a8e26697 able to get blinky + greeting 2013-09-10 10:43:24 +07:00
hathach 7404894d6d rename startup 2013-09-10 10:26:15 +07:00
hathach 23cb79372d able to print hello world 2013-09-10 10:24:24 +07:00
hathach 1646fb2887 Merge branch 'master' of github.com:microbuilder/tinyusb
Conflicts:
	demos/bsp/boards/microbuilder/board_lpc4357usb.c
	demos/bsp/boards/microbuilder/board_lpc4357usb.h
2013-09-08 00:09:33 +07:00
hathach 25a22e169b try to add lpc4357usb board 2013-09-08 00:01:20 +07:00
Kevin Townsend 1231fae04c Added trace pin config 2013-07-31 23:30:17 +02:00
Kevin Townsend 781f8354ea Added LPC4357USB board 2013-07-31 22:03:48 +02:00
hathach d3e83bc802 print out mac address 2013-07-19 12:08:04 +07:00
hathach 23f4d7356f change printf retarget to make \n to \r\n automatically 2013-07-19 12:05:25 +07:00
hathach 6fbb906d1e add rndis_app files 2013-07-07 00:09:03 +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 9d50b0fa6a update docs 2013-07-04 16:08:33 +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 8c0bc38713 house keeping 2013-07-04 10:54:51 +07:00
hathach d3aed01874 add some printf when a class is mounted
add initial tests for rndis
2013-07-04 10:47:31 +07:00
hathach c5afb9d50f change class (hid/cdc) _mounted_isr to _mounted_cb 2013-07-04 09:45:20 +07:00
hathach 544b48183a opt out hardfault handler in board.c which causes problem in compiling with asm inline 2013-07-03 13:48:11 +07:00
hathach 4a8686e868 adding _mounted_isr & _umounted_isr callback for host keyboard & mouse
remove TUSB_EVENT_INTERFACE_OPEN & TUSB_EVENT_INTERFACE_CLOSE
2013-07-03 12:46:12 +07:00
hathach b0f45b3651 temporarily check cdc mounted by pipe_in & pipe_out
add tests for tusbh_cdc_xfer_isr
2013-07-03 12:06:07 +07:00
hathach 294ddd0acc complete CDC serial demo (in a quick hacking way) 2013-07-03 11:39:09 +07:00
hathach 1667ef5041 replace tusbh_cdc_isr by tusbh_cdc_xfer_isr with extra parameter as
- pipe id
- xferred_bytes

host_class_driver_t add xferred_bytes parameter
void (* const isr) (pipe_handle_t, tusb_event_t); -->   void (* const isr) (pipe_handle_t, tusb_event_t, uint32_t);

update hid_host & its tests
2013-07-03 11:36:08 +07:00
hathach b3f98bc15a rename cdc descriptor type
add tusbh_cdc_mounted_isr & tusbh_cdc_unmounted_isr
2013-07-03 10:53:16 +07:00
hathach e1ad7b62cf add way to calculate the actual byte transferred with ehci
add come callback for cdch
add code for cdc serial demo
2013-07-02 17:20:25 +07:00
hathach 6ce90e2bd8 add tusbh_cdc_send, t usbh_cdc_receive
add cdc_serial_app for virtual com demo
2013-07-02 16:41:13 +07:00
hathach e94ce81b04 fix compilation error 2013-07-01 10:43:55 +07:00
hathach a4f7dc1105 add & pass a first few test for cdc host
implement cdch_open_subtask
2013-07-01 10:35:37 +07:00
hathach a943cce991 test refractor 2013-06-29 21:00:33 +07:00
hathach 7e6e5cc356 [CDC]
- add configure option
- add include path
- add driver function table
2013-06-29 16:06:45 +07:00
hathach ea2e63a332 remove app_os_prio.h in os_none configure
remove instance_num in hidh API
temporarily pause device stack developement
should fix travis-ci build error
2013-06-26 18:00:05 +07:00
hathach c7f7bc9808 increase sequence each 64 byte packet 2013-06-23 14:26:56 +07:00
hathach a531d27a49 should fix problem with demo bulk out 2013-06-23 14:21:44 +07:00
hathach 2cc5df9b00 add custom bulk out test 2013-06-23 01:10:59 +07:00
hathach 34b4332ff4 remove redundant project files 2013-06-21 22:17:49 +07:00
hathach 4239da1188 add cmsis for lpc11u
remove app_os_prio.h in host_os_none demo
2013-06-21 21:03:23 +07:00
hathach 4f8faebbab add files for bulk custom test 2013-06-21 20:57:20 +07:00
hathach 3924764dff [host lpc43xx] adding support for host custom class
refractor usbh class driver indexing
opt out periodic list code in EHCI (need to refractor/group later)
[device lpc176x] rename dcd_endpoint_configure to dcd_pipe_open
add usbd_pipe_open to manage pipe
2013-06-21 13:11:45 +07:00
hathach 4103cc374f add coreid to hidd_init
temporarily implement hidd_init using dcd from lpc17xx
add more test for dcd lp176x
implement dcd_endpoint_configure
2013-06-12 21:06:43 +07:00
hathach ee57a6f13f clean up 2013-06-12 14:06:41 +07:00
hathach 503d279af5 ADDING LPC176X device
implementing dcd_lpc175x_6x.c
add usbd_dcd.h
add usbd_isr with TUSB_EVENT_SETUP_RECEIVED & TUSB_EVENT_BUS_RESET event
parameterize TUSB_CFG_DEVICE_CONTROL_PACKET_SIZE (replace USB_MAX_PACKET0)

--> able to get interrupt and receive setup packet, but SET ADDRESS (expected get device descriptor).
uncomment write zero length will cause issue, no more interrupt ?
2013-06-08 02:50:10 +07:00
hathach 3394b4beaa re-create ngx4330.h
remove some rom driver dependency on upper layer
introduce CAP_DEVICE_ROMDRIVER to overwrite TUSB_CFG_DEVICE_USE_ROM_DRIVER within the lib
add support for lpc175x_6x
- able to build and blink led on lpcxpresso1769 with device (without any class enabled)
2013-06-04 13:36:18 +07:00
hathach 7f8752b38b add LPC175x_6x cmiss (got from xpresso example)
add LPC175x_6x driver lib (got from http://git.lpcware.com//lpc175x_6x.git
2013-06-04 11:45:01 +07:00
hathach cdc830782f rename tusb_device_is_configured
remove dcd_lpc18xx_lpc43xx.h and dcd_lpc11uxx_lpc13xx move define to hal
2013-06-04 10:43:58 +07:00
hathach f982a10b6b house keeping 2013-06-03 16:04:03 +07:00
hathach 9f9adca03b add TUSB_CFG_PROUDCT_ID check
move USB_MAX_EP_NUM to device dependency
- lpc43 --> 6
- lpc11/13 --> 5
2013-06-03 15:56:14 +07:00
hathach 52f18f3784 refractor device mouse main.c & tusbd_hid_mouse_send_report 2013-06-03 14:37:41 +07:00
hathach b527e6ec4a refractor tusb_descriptors
usbd device_class_driver
added & tested HID mouse for device (work together with hid keyboard)
rename DEVICE_ROM_REG_BASE, DEVICE_ROM_DRIVER_ADDR
2013-06-03 14:31:17 +07:00
hathach 9e49056721 refractor change tusbd_hid_keyboard_send_report API 2013-05-31 21:24:40 +07:00
hathach 03d85acfc7 refractor string descriptors, allow one-stop configure descriptor for
- manufacturer, product etc ... (only english now)
2013-05-31 18:21:31 +07:00
hathach abf1054745 refractor & beautify string descriptors 2013-05-31 16:37:40 +07:00
hathach 376482558a clean up device main.c demo code 2013-05-31 14:53:26 +07:00
hathach ed64401e61 rename descriptor variables 2013-05-31 14:42:38 +07:00
hathach 3b9a616ca9 change at86rf to 1ghznode
rom device runs ok with lpc11uxx
2013-05-31 13:57:57 +07:00
hathach 04a641f067 ea4357 can be enumerated, but get setconfiugre value of 0 2013-05-29 16:56:15 +07:00
hathach d5836751d9 keyboard example works with lpc1347 xpresso 2013-05-29 15:23:07 +07:00
hathach dda0808ebb fix lpcxpresso1347 board_leds
temp change USBD_API to ROM_API
add lpc13xx device support
fix romdriver pointer
able to init rom driver
2013-05-29 14:39:14 +07:00
hathach 1e5bd82af2 rename NGX to ngx
add a bunch of stub header for dcd (175x_6x, 13xx, 18xx_43xx)
add dcd_nxp_romdriver for handling usb rom driver
add BIT_TEST_ in binary.h
remove mw_usbd_hid.h include due to lexical conflict
2013-05-28 15:24:27 +07:00
hathach 7ae986de95 move board files 2013-05-27 11:57:16 +07:00
hathach ed217948b8 rename descriptor type, hid descriptor type 2013-05-25 17:19:18 +07:00
hathach ae02263d81 add stub function to able to build device with EA4357
- dcd_controller_reset
- dcd_controller_connect
2013-05-25 16:03:40 +07:00
hathach 9b7f24bef2 add files for hitex4350 but fail to get it power on USB0 host connector 2013-05-23 17:19:28 +07:00
hathach c4e6eec4ac LED init for mcb4300 2013-05-23 15:14:57 +07:00
hathach 132c3996ea move scu_pinmux(0x2, 5, MD_PLN | MD_EZI | MD_ZI, FUNC2) to hal/hal_lpc43xx.c
dual host run without problem with mcb4300
2013-05-23 14:56:11 +07:00
hathach 8cb7818bcc - move CMSIS & driver lib for lpc13u to codebase bsp/lpc13xx
- change descriptor.c/h able to build device example
2013-05-23 13:22:46 +07:00
hathach d7ae21203c fix issue with osal_none queue def 2013-05-21 17:57:21 +07:00
hathach f4887b3981 adding support for keil's rtx cmsis-rtos 2013-05-15 13:39:28 +07:00
hathach 40503b913b abstract os priority for application tasks 2013-05-14 21:32:13 +07:00
hathach f8d1c3da3e rename tusbh_hid_keyboard/mouse_is_supported to tusbh_hid_keyboard/mouse_is_mounted 2013-05-14 03:03:54 +07:00
hathach 834869ffcd filter out unused driver files in CMSIS lpc43xxx 2013-05-13 01:21:57 +07:00
hathach 446038fd36 move cmsis to bsp/lpc43xx to keep all in repos for travis-ci run
update setting for all project file respectively
2013-05-09 15:23:04 +07:00
hathach fd49cff8e8 add stub for msc host & hub driver 2013-05-06 20:09:06 +07:00
hathach 4fa7f77ee2 adding keil mcb4300 support
- implement board_leds & board_uart routines
2013-05-06 15:06:08 +07:00
hathach 120db28a17 change format of file header & license spacing 2013-05-06 12:50:19 +07:00
hathach c202bfe556 move ngx4330 to ngx folder in boards 2013-04-29 20:43:16 +07:00
hathach c2b453c8a0 make NGX4330 build runs ok with host_freertos demo 2013-04-29 17:47:48 +07:00
hathach fdd98e2fa9 clean up main 2013-04-28 00:00:48 +07:00
hathach d68f882a25 refractor mouse & keyboard app 2013-04-27 16:50:58 +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 33feba5cbc add hid_keycode_to_ascii_tbl for hid class
improve keyboard_app, should display all displayable characters
improve the de-bouncing keyboard (still got some issues)
2013-04-26 02:08:22 +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 1ae5484320 finally able to get freeRTOS run with current mouse + keyboard example
NOTES: print_greeting if is executed before the start of freeRTOS scheduler --> hardfault
- print_greeting->vsprintf->systick -> bunch of ISR --> hardfault.

printf using serial after the start of scheduler is ok though
2013-04-25 15:43:33 +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 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 0b9f553f81 house keeping 2013-04-22 12:46:36 +07:00
hathach 8cc4c6f52d change the board_leds API to on_mask, off_mask
getting led toggling per second on host demo
add greeting message
2013-04-22 12:10:52 +07:00
hathach 799c709524 adding oem base board lib for ea4357 2013-04-22 11:22:56 +07:00
hathach ea1b5ec355 house cleaning 2013-04-22 11:16:12 +07:00
hathach 0d55f7d290 moving things around 2013-04-22 11:03:18 +07:00
hathach c20071c55c fix compiler error for USB1 to none in ehci.c
rename and moving bsp ea4357
2013-04-22 11:00:43 +07:00
hathach 3f9a73a34d change config to use USB0 only
fix some compiler warnings
2013-04-22 10:44:51 +07:00
hathach a493fab753 separate fake ehci's run async & period list
refractor list_find_previous_item & list_remove_qhd to act on ehci_link_t* instead of ehci_qhd_t*
fully support 1ms, 2ms, 4ms, 8ms for period list (each list has a dummy queue head)
- change period list structure
limit the maximum polling interval to 256 ms
add max_loop static MAX number of iteration for list_find_previous_item
add test for close 256ms polling interrupt
2013-04-21 15:09:54 +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 cb4981dd2d adding host_freertos configure & build etc 2013-04-16 16:30:36 +08:00
hathach 115c1f2552 create lpcxpresso project for host_freertos 2013-04-16 15:04:46 +08:00
hathach 528cadf3ff rename and "host" to "host_os_none" demo in prepare for creating host_freertos demo 2013-04-16 14:49:20 +08:00
hathach 91d64ebbb3 clear keyboard & mouse report 2013-04-15 18:04:26 +08:00
hathach 1821681816 move project files to os_none 2013-04-15 17:49:02 +08:00
hathach 54221bb73b move code in host demo to /src in prepare for support freeRTOS projects 2013-04-15 17:30:36 +08:00
hathach 2d7fbb5153 change keyboard_app.c & mouse_app.c from polling API to interrupt-based (callback isr)
and using OSAL for task-base demo
- fix ehci error with XFER_COMPLETE callback to usbh_isr, TD need to be freed & unlink before invoking
callback
- fix bug in usbh.c set device state to CONFIGURED right after SET_CONFIGURE control xfer
2013-04-10 02:34:40 +07: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 11dff6f978 add Lib_OemBaseBoard to bsp/board but current exclude from all builds (added when needed later) 2013-04-09 02:30:33 +07:00
hathach c036efff1d adding code to allow configure MIC2555 to pull down D+/D- (still need bit bangding I2C on PB_0 PB_1)
add back port reset after get 8 bytes of device descriptor
2013-04-09 02:13:18 +07:00
hathach b0a54cbf8f amend last commit 2013-04-08 15:01:04 +07:00
hathach 94e25880dc - add scu_pinmux(0x2, 5, MD_PLN | MD_EZI | MD_ZI, FUNC2); // USB1_VBUS monitor presence
- USB1 host run ok with NGX4330
2013-04-08 14:57:00 +07:00
hathach ef850984da 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)
2013-04-08 03:45:31 +07:00
hathach 95df92055c fix board uart init with NGX4330 (use UART0)
add USB1_PWR_EN (GPIO5[6])
2013-04-08 02:36:43 +07:00
hathach 4b63a2bc5c - fix HID_MOUSEBUTTON right & left
- add mouse app to mount mouse interface
2013-04-07 19:33:40 +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 e658e67ebe fix the damn bug within 10 line of code in keyboard_app.c 2013-03-29 00:20:27 +07:00
hathach d95c6cf2e0 quick fix for a bug in keyboard app.
still have unplug/plug event after receiving report from keyboard devices
2013-03-27 15:42:45 +07:00
hathach 7b5d9edc5a add test for pipe_interrupt_xfer
implement keyboard app code
- forcefully place keyboard_report in RAM section 3
change used bit in qtd from reserved in buffer[1] to alternate link
add code for fake ehci controller runs on period interrupt
change signature of tusbh_hid_keyboard_get_report
- tusb_keyboard_report_t* to uint8_t*
implement period (interrupt) complete isr processing
2013-03-27 11:51:44 +07:00
hathach 03d045ecde - put ATTR_UNUSED to hardfault handler variables to discard compiler warning
- change host_class_driver_t: open_subtask signature to accept tusb_descriptor_interface_t const * instead of uint8_t*
2013-03-26 12:14:04 +07:00
hathach c026a9f2e0 remove obsolete TUSB_CFG_HOST_HID_KEYBOARD_ENDPOINT_SIZE
temporarily ignore test for hid_host.c due to ceedling linking issue with weak symbol
implement hidh_open_subtask driver to subclass open
rename hidh_keyboard_install to hidh_keyboard_open_subtask
2013-03-25 16:02:24 +07:00
hathach 56cd8be75e change website from tinyusb.net to tinyusb.org 2013-03-25 11:46:30 +07:00
hathach c7c993d6cc refractor hidh keyboard
changing class hidh behavior
2013-03-24 21:40:49 +07:00
hathach a1b17be681 add class flags
change keyboard_info_pool to keyboard_data
2013-03-24 17:29:07 +07:00
hathach ce63980386 clean up:
- refractor tusb_handle_device_t device_hdl to uint8_t dev_addr

add keyboard_app.c/h
2013-03-24 15:50:49 +07:00
hathach 9c5ffa9932 house keeping 2013-03-24 14:32:54 +07:00
hathach ae9b9ead7a continue clean up ehci 2013-03-23 10:23:37 +07:00
hathach dbaf6c0d30 - fix bug when unplugged unmounted-already device (mostly plugged when power on)
- add hal_debugger_is_attached & hal_debugger_breakpoint
- assert will suspend (place breakpoint) if the condition is failed and debugger is attached. Otherwise, a message to uart is printed
- fix get control qhd function when dev_addr is not zero (shifted 1)
- fix wrong logic for unsupported class
2013-03-22 17:08:51 +07:00
hathach 97c9001d40 add hard fault handler to bsp.c
rename class_install_subtask to class_open_subtask
add class_close for unmount
adding code for usbh_device_unplugged_isr & invoke it in hcd_isr
2013-03-13 10:57:30 +07:00
hathach 79e277d323 go through all the enumeration (up to get full configuration)
- fix init_qhd for address 0 (clear queue head --> ehci controller halted)
- fix bug in usbh_init missing address0 for semaphore create

TUSB_CFG_DEBUG == 3: --> ATTR_ALWAYS_INLINE is null --> allow gcc to export "normal inline" function
2013-03-13 00:02:45 +07:00
hathach d2bd80109e add semaphore post in usbh_isr for control pipe
add osal_queue_send in usbh_device_plugged
add macro for placing breakpoint macros
fix ehci init:
- regs->cmd or (add run_stop)
- enable port power in portsc
add tusb_task_runner in main loop
2013-03-12 20:04:29 +07:00
hathach c6b220c327 update keil file 2013-03-12 15:08:35 +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 a259be6edf refractor
- remove TUSB_CFG_HOST_CONTROLLER_START_INDEX
2013-03-04 18:01:05 +07:00
hathach e1033b9b3c replace TUSB_CFG_HOST by MODE_HOST_SUPPORTED
move stuffs around
2013-03-04 17:07:14 +07:00
hathach 94c004724c allow configure host/device by controller basic
- make changes to adapt
add mcu_capacity.h
2013-03-04 16:21:41 +07:00
hathach 0c397c6b8d house keeping
- correct initialization call sequence
- move hcd_init to ehci.c
2013-02-27 18:49:28 +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
hathach 489b98cb93 add TUSB_CFG_HOST_CONTROLLER_START_INDEX
update usbh_init and test code for TUSB_CFG_HOST_CONTROLLER_START_INDEX
clean up some
2013-02-08 12:12:10 +07:00
hathach aeccdfde3f remove TUSB prefix for class enum definitions
add most of HID USAGE TABLE and definitions etc ...
2013-02-05 13:57:06 +07:00
hathach 9a1bda1633 house keeping 2013-01-27 16:19:18 +07:00
hathach 535f330026 update license year from 2012 to 2013 2013-01-27 13:50:40 +07:00
hathach 7edda37518 add more test code for keyboard hid application API
refractor, restructure, rename several thing regarding host, keyboard etc ...
2013-01-26 01:37:15 +07:00
hathach 38ce3f7534 start to support
- usbd host
- osal

some global define
#define TUSB_CFG_HOST_CONTROLLER_NUM
#define TUSB_CFG_HOST_DEVICE_MAX
#define TUSB_CFG_CONFIGURATION_MAX

rename & refractor HID type structure & enum

use CException to test asssertion library
add test for hid_host_keyboard with usbd configure get & osal queue get stubs
update test for assertion library
refractor ASSERT_STATUS in assertion library
update tusb_error_t values
rename usb basic type & enum in tusb_types.h and std_descriptors.h
2013-01-22 17:41:06 +07:00
hathach cfe7a3d23b change error type to lower case for more consistency
change Error Enum to TUSB prefix for more consistency
start to add check for OS configure
2013-01-19 00:57:58 +07:00
hathach d8c8b9e38a add ASSERT POINTER support
add hid host and separate hid host & device
update host project setting with EA4357 board
add para checking test for hid host
2013-01-18 14:39:42 +07:00
hathach 25f6cee73b add DEVICE_ROM_DRIVER_ADDR macro in hal to point to rom driver add
add TUSB_ATTR_RAM_SECTION in tinyusb_config.h to abtract usb ram placement to application
remove power_api.h (mcu dependency)
2013-01-18 11:49:51 +07:00
hathach c16632da0b add UART support for ea4357 (tested) 2013-01-17 14:40:46 +07:00
hathach 480ddb4fec start to add bsp and build configuration for embedded artist 4357 2013-01-17 11:03:43 +07:00
hathach 10009cba99 add initial support for output using ITM via SWO (not tested though) 2013-01-17 02:04:47 +07:00
hathach aae51e985f refractor board and start to add support for SWO retarget 2013-01-17 01:09:58 +07:00
hathach c004cd4387 add uart for lpc11uxx and retarget successfully 2013-01-16 12:43:17 +07:00
hathach 0cec7910a0 update project setting to have most warning option enable with simple switch on/off (off for faster compiling time) 2013-01-15 14:41:19 +07:00
hathach 6e0818c901 re-target printf to uart successful on LPCXpresso1347 2013-01-11 22:43:54 +07:00
hathach e935f29541 tested keyboard device with lpcXpresso1347 board 2013-01-11 20:49:46 +07:00
hathach d76df54003 add external configure file: tusb_config.h
rename the internal/default configure from tusb_cfg.h to tusb_option.h
2013-01-11 16:55:47 +07:00
hathach a6e5197b58 use X Macros to remove #undef in errors. 2013-01-11 16:28:57 +07:00
hathach 83bb44510a update makefile project
back to use lpcxpresso project file (instead of make target project)
2013-01-11 16:10:16 +07:00
hathach 1f3c9ed69d start add makefile for keyboard demo 2013-01-10 16:46:52 +07:00
hathach f4fa62e032 clean up 2012-12-27 02:33:51 +07:00
hathach a2e1fc4a73 fix device example build errors 2012-12-20 17:13:22 +07:00
hathach 8c2ec83c59 rename macro configure in examples 2012-12-20 16:59:43 +07:00
hathach ec4a3f6048 cleaning 2012-12-18 15:08:30 +07:00
hathach e4a69a6f71 running blinking example 2012-12-10 16:10:24 +07:00
hathach 4ec23ea786 add build and project settings for lpc43xx 2012-12-10 15:59:10 +07:00
hathach 3eb7465e5e abstract usb enable/disable interrupt to hal layer 2012-12-10 14:58:25 +07:00
hathach b52b3b1cef finalize building process. Now I can focus on developing the stack (finally) 2012-12-07 18:09:01 +07:00
hathach 70e3a13951 change building process yes, again 2012-12-07 17:59:46 +07:00
hathach cd74f4f0ed work with lpc11u37 (lpc11uxx) on kevin's board 2012-12-07 16:22:47 +07:00
hathach cc45f35d70 fix descriptors for device 2012-12-07 10:53:52 +07:00
hathach 6049b6d0df make fundamental changes in project building
add some makefile.defs
2012-12-07 01:31:09 +07:00
hathach f31ade6151 add board abstract layer
rename arch to mcu
2012-12-04 18:18:29 +07:00
hathach 8f00307986 fixed building errors with device example 2012-12-04 11:30:34 +07:00
hathach 6ea85a569a added IAD descriptor 2012-12-03 18:43:35 +07:00