Commit Graph

528 Commits

Author SHA1 Message Date
hathach 5f8f046eaa refractor remove tusbh_msc_is_failed
increase usbh enum task from 150 to 200 due to stack overflow when mounting msc device
added task for msc host freeRTOS with stack = 300 (still cannot execute copy command)
2014-02-28 18:42:33 +07:00
hathach da6b2fbef8 EHCI: immediately reset port when device connected. This proves to help prevent duplication connection event (also with OHCI)
increase delay after reset to 100 ms (NXP's EHCI does not work with 50ms)

--> fix all duplication connection with OHCI & EHCI
2014-02-28 17:08:47 +07:00
hathach a1978e20fe merge common define in osal/osal_cmsis_rtx.h & osal/osal_freeRTOS.h 2014-02-28 15:50:04 +07:00
hathach 856be67189 keil support for lpc17xx host 2014-02-20 16:31:34 +07:00
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 533c8d2eed use hcd_pipe_is_busy instead of hcd_pipe_is_idle
remove hcd_pipe_is_idle
2014-02-20 10:41:31 +07:00
hathach bbe26facb3 some code clean up
NOTE: host on ea4357 does not work anymore
2014-02-19 15:29:29 +07:00
hathach a982a52ab3 refractor __n2be_16 2014-01-24 21:51:24 +07:00
hathach 275e834bbe add device_os_none keil project for all boards 2013-12-27 13:40:59 +07:00
hathach 8de6ee22dc move device app code 2013-12-24 16:15:18 +07:00
hathach d020c2f609 remove immediately reset when device plug.
check to make sure device is still plug after initial delay (200ms) before reset
remove blocking waiting when reset in ehci.c
2013-12-19 13:55:22 +07:00
hathach cfcef0558a fix plug & unplug issue by reseting port immediately instead of waiting for usbh enumeration task to do so 2013-12-19 12:43:22 +07:00
hathach fce6252456 hub works with ohci as well. There is some problem when plug & unplug device hmm 2013-12-19 12:21:40 +07:00
hathach cc736fd45e able to run ohci hid mouse demo
- an old mouse cause double plug event
- an old mouse failed to response the first get 8 byte device descriptor
2013-12-19 11:59:19 +07:00
hathach eaacbd4a36 able to run MSC host demo on lpc17xx
implement walk around for halted ED in OHCI
2013-12-18 14:57:34 +07:00
hathach 75ffc0bfec implement ohci
- hcd_port_reset
- hcd_port_connect_status
- hcd_port_speed_get
- hcd_pipe_control_open
- hcd_pipe_control_xfer
- done_queue_isr for control xfer

able to go through enumeration with MSC device
2013-12-16 12:35:05 +07:00
hathach 30c8f68930 able to get connect status change interrupt occured 2013-12-13 12:26:37 +07:00
hathach 4d14e2ac50 add structure & define for ohci 2013-12-11 14:31:27 +07:00
hathach b35d2c8f43 add lpc17xx build config for host demo 2013-12-11 12:13:22 +07:00
hathach 8bd6440547 fix error in dcd_lpc175x_6x (still has problem with control transfer)
fix build error for host
start to add keil support for device
opt out pca9532.c when ea4357 is not the selected board
2013-12-11 11:31:09 +07:00
hathach e320659f8a add keyboard led mask
make usbd control request to subtask
add get/set report via control pipe to hidd
enforce soft DMA to control pipe for lpc11u (lpc17xx not yet)
temp add led_blinking_set_interval to change led blinking interval
refractor dcd_pipe_control_xfer to have interrupt on complete option
add get/set report support of moused_app and keyboardd_app, keyboard LED will make LED blink faster
2013-12-09 11:15:13 +07:00
hathach 1ad78f104e refractor hid device driver 2013-12-02 14:17:51 +07:00
hathach 2c8b8ea529 add board lpclink2, able to run device stack without any problems 2013-12-02 00:40:10 +07:00
hathach 24e92f79e7 adjust packet per TD for lpc13u is 1023, 11u is 64 2013-12-01 16:11:41 +07:00
hathach a9a5146108 correct stall & clear stall behavior for non-control pipe
fix data_residue when read10, write10 return 0 (no need for BE conversion)
2013-12-01 15:48:49 +07:00
hathach edb4226f23 change class_ixr to class_cb
use IAD whenever enable CDC to make sure windows driver can detect
change keyboard, mouse send report to int_on_complete = true
2013-12-01 13:53:36 +07:00
hathach d2f91af6b3 add some document for msc_device API 2013-12-01 12:18:26 +07:00
hathach 6e30a068d2 completely change the dcd for lpc11u & lpc13u to overcome the fact that lpc11u dma cannot transfer more than 64 bytes
each buffer. This implement an soft DMA for lpc11u & lpc13u (previously 1023 max) queued transfer
2013-11-30 22:29:37 +07:00
hathach af87e231c5 house keeping 2013-11-26 14:17:58 +07:00
hathach 47d8af7111 complete msc demo with lpc13uxx with readonly flash 2013-11-26 13:58:13 +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 51def3f7ed refractor usbd task
move control request data into task event
adding tusbd_msc_read10_cb, tusbd_msc_write10_cb (not fully supported)
2013-11-25 16:42:04 +07:00
hathach a5ba283557 change MCU to TUSB_CFG_MCU 2013-11-25 12:48:27 +07:00
hathach 41ffcaf4a5 temp fix for dcd 43xx suspend detection (disconnection does not generate interrupt) 2013-11-22 16:10:05 +07:00
hathach 83f1d660ce clean up
add some doxygen work
finalize device disconnection & suspend
- suspend & resume & remote wake up is not supported yet
2013-11-22 15:16:24 +07:00
hathach d1ef89a154 fixed lpc11u/13u VBUS (P0_3) with pulldown resistor for USB_VBUS_DEBOUNCED is correct
added disconnect callback for lpc11u/13u
2013-11-21 15:24:02 +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 c461c72ac2 clean up 2013-11-21 13:20:46 +07:00
hathach 6887e5e642 refractor usbd-dcd callback, add bus event isr 2013-11-21 12:47:55 +07:00
hathach d94efa60d6 fixed dcd lpc17xx queue transfer & IOC handling
able to run MSC demo
2013-11-20 15:34:49 +07:00
hathach 850fcf03f0 refractor descriptor 2013-11-20 12:52:07 +07:00
hathach 2dafeee585 complete dcd for lpc175x_6x
cdc device demo can work but there is hardfault with dma descriptor with fast typing
2013-11-19 16:41:30 +07:00
hathach 94854f805a get lpc17xx running through enumeration (with control data < 64) 2013-11-18 17:29:12 +07:00
hathach b104d21e71 fix dcd_pipe_control_xfer for dcd43xx
refractor tusb_descriptors.h
2013-11-16 22:16:03 +07:00
hathach 672057de5a IAD support 2013-11-15 17:20:40 +07:00
hathach 6e463caec0 add semaphore for control xfer for > 64 support for some mcu such as lpc11u/lpc17xx 2013-11-15 16:47:26 +07:00
hathach fc68439b74 add usbd_task to handle event task eg setup received 2013-11-15 12:30:22 +07:00
hathach ba49d26e19 fix build error with device 43xx
refractor mscd ramdisk demo
2013-11-15 00:01:07 +07:00
hathach 6e8440afe5 complete double buffering for queueing xfer for lpc11u/13u requried by msc device 2013-11-14 14:12:07 +07:00
hathach 7d84139bd4 fix potential issue with stall endpoints
NOTE: cannot able to STALL control OUT endpoints --> unsupported with data out request may got to an issue.
clean up configure, add max string descriptor configure as windows sometimes ask for string @ index 238 !!!
2013-11-13 14:00:39 +07:00
hathach 92d9c36dbc able to build and run cdc device demo on lpc11uxx 2013-11-13 12:40:11 +07:00
hathach d8f32a79fc technically, mouse + keyboard device demo also work on lpc13uxx 2013-11-11 14:02:55 +07:00
hathach 9a81cbcd59 remove xfer_type in endpoint_handle_t
cdc device demo runs on lpc13uxx
2013-11-11 13:52:31 +07:00
hathach f00a4b448d adding support for lpc13uxx 2013-11-11 12:48:21 +07:00
hathach 9cb99d3716 house keeping 2013-11-08 19:37:26 +07:00
hathach 7ff0dbb64c add tusbd_cdc_is_busy
enhance cdc serial device demo
refractor fifo.c
2013-11-08 14:46:48 +07:00
hathach 15d3a418bd add windows driver for cdc
add simple echo cdc serial demo
add cdc device send/receive API
refractor descriptor
refractor cdc.h
add usbd driver function
- init
- bus_reset
2013-11-08 12:03:32 +07:00
hathach 3945869cc2 refractor tusb_descriptor, adding support for cdc descriptor 2013-11-07 12:28:10 +07:00
hathach 8c9def8618 clean up tusb_descriptors 2013-11-07 11:51:39 +07:00
hathach f1d47702e8 refractor mouse dev app 2013-11-06 20:06:28 +07:00
hathach 9171d106bc added hid device hidd_isr callback
refractor keyboard dev demo app
2013-11-06 19:55:48 +07:00
hathach 60d444b452 fix a bug with USB1, but still cannot get interrupt occurred on USB1 2013-11-06 14:53:18 +07:00
hathach 58b41a05db refractor for device able to work on usb1 of lpc43xx. But could not get it work on EA4357 2013-11-06 14:20:45 +07:00
hathach b2b53e61fb refractor dcd_controller_reset & hcd_controller_reset to hal_controller_reset 2013-11-06 12:15:11 +07:00
hathach 024858a605 complete msc device demo with 8KB ram disk 2013-11-05 14:55:58 +07:00
hathach 83d9ececfb msc add support
- SCSI_CMD_MODE_SELECT_6
- SCSI_CMD_MODE_SENSE_6
- SCSI_CMD_PREVENT_ALLOW_MEDIUM_REMOVAL

fix msc device bug with no data unsupported command
complete msc device demo with ram disk of 8KB
2013-11-05 13:02:15 +07:00
hathach d02ef07337 added support for
- sense data scsi_sense_fixed_data_t
- read format capacity scsi_read_format_capacity_data_t

change msc device callback to support actual response
fix dcd_pipe_clear_stall also reset toggle
2013-11-01 22:00:39 +07:00
hathach f2ae5b541f add dcd pipe clear stall
- tusb_error_t dcd_pipe_clear_stall(uint8_t coreid, uint8_t edpt_addr) but does not take endpoint_handle_t as input
complete msc device driver
add usbd clear stall endpoint
2013-11-01 14:44:14 +07:00
hathach f797c4e02a rename device project 2013-11-01 12:17:54 +07:00
hathach 077b6defe9 rename device project 2013-11-01 12:13:31 +07:00
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