Commit Graph

256 Commits

Author SHA1 Message Date
hathach 85511e288d rename to hal_dcd_control_xfer() and hal_dcd_control_stall() 2018-03-06 15:46:48 +07:00
hathach 84bce659b8 reame SUBTASK_EXIT to SUBTASK_RETURN 2018-03-05 13:25:24 +07:00
hathach 185b240f03 rename usbd_dcd_bus_event_isr to hal_dcd_bus_event 2018-03-03 16:24:43 +07:00
hathach 394302c8cb rename usbd_setup_received_isr to hal_dcd_setup_received 2018-03-03 14:45:29 +07:00
hathach f6137903bc cleanup SUBTASK macros 2018-03-03 12:30:38 +07:00
hathach fe0e79864b add config number 2018-03-02 22:53:26 +07:00
hathach 9208570d3a rename dcd_controller_* to hal_dcd_* 2018-03-02 22:50:59 +07:00
hathach 33d348c288 rename dcd_init to hal_dcd_init() 2018-03-02 22:46:36 +07:00
hathach 381caaff1c rename hal_init() to hal_usb_init() 2018-03-02 21:41:38 +07:00
hathach bc9274591f clean up compiler 2018-03-02 19:00:03 +07:00
hathach 7ee801a209 rename hal.h to tusb_hal.h 2018-03-02 18:50:30 +07:00
hathach 2580b4c6a7 add tud_mount_cb, tud_umount_cb
remove device class/interface callback
2018-03-02 00:18:21 +07:00
hathach 0afa0ce4cc rename tud_configured() to mounted() 2018-03-01 23:43:03 +07:00
hathach 9a2924fb36 device API rename 2018-03-01 12:51:19 +07:00
hathach 2806120400 more clean up 2018-03-01 12:20:35 +07:00
hathach 7add7337ba osal macro clean up 2018-03-01 12:14:44 +07:00
hathach 40935fc01c more osal clean up 2018-03-01 11:42:13 +07:00
hathach 329fdc026c change osal_task_create signature 2018-03-01 11:28:26 +07:00
hathach a789fad4b7 clean up osal semaphore/queue/mutex 2018-03-01 11:17:11 +07:00
hathach 30124b9b02 refactor osal queue API 2018-02-28 16:45:54 +07:00
hathach 9b7cd608aa osal clean up
- task create, task def macros
2018-02-28 14:21:43 +07:00
hathach 820afdc7bf clean up 2017-08-03 21:45:16 +07:00
hathach 62ae417add formatting 2015-05-01 18:45:22 +07:00
hathach c73907f831 formatting 2015-05-01 18:37:58 +07:00
hathach 9218d1e8bb replace ATTR_PACKED_STRUCT by simply ATTR_PACKED (drop IAR support)
remove "primitive_types.h" by simply include stdbool.h, stdint.h
2015-05-01 18:34:08 +07:00
hathach 74fd9de3af add lpcxpresso spifi flash setting 2014-05-13 10:37:28 +07:00
hathach d00655f598 cdc device app rename CDCD_APP_BUFFER_SIZE to SERIAL_BUFFER_SIZE
cdc host app add SERIAL_BUFFER_SIZE for buffer constant, add cdc data receive if cb with TUSB_EVENT_XFER_ERROR
minor change to keyboard & mouse host app
add ASSERT_FAILED & ASSERT_FAILED_MSG
add cast to fix IAR build error with dcd_lpc43xx.c

FreeRTOS
- merge FreeRTOSConfig for m0, m3, m4
- re-implement application hook
- support portmacro.h for m0
2014-04-25 15:16:52 +07:00
hathach dbf276ad6f added all assert check to osal_queue_send and osal_semaphore_post 2014-04-24 23:57:21 +07:00
hathach 6804fee0fa correct dcd_pipe_is_busy to use list_qtd_idx[] instead of qtd_overlay
flush usbd_queue_hdl when bus_reset
add assert check for osal_queue_send
increase ENUM_QUEUE_DEPTH for usbh
change osal_freeRTOS.h implementation to
- correctly waiting forever for semaphore wait, queue & mutex
- not use ISR safe version since it is not as generic as we want
2014-04-24 23:40:28 +07:00
hathach d656a0e3f8 clean up code at usbd_setup_received_isr 2014-04-21 22:03:08 +07:00
hathach dfae1904d5 minor adjustment to dcd_lpc43xx.c
usbd still defer setup received and handle in usbd task since the problem is caused by usb mini otg on the board EA4357.
2014-04-21 21:55:17 +07:00
hathach 4091ddc4fc move osal_queue_send of osal_none to osal_none.c 2014-04-18 14:45:21 +07:00
hathach 06bb9ad7a7 move STRING & XSTRING & STATIC_ASSERT to compiler.h
disable test for a class of cdc host
temporarily disable test for test_osal_none.c
change include in some core files
remove osal.h from common.h
2014-04-17 22:57:11 +07:00
hathach 44b36d74f2 clean up STATIC_VAR 2014-04-17 18:02:51 +07:00
hathach c7ac55aebc remove OSAL_VAR for the simplicity
clean up osal.h
2014-04-09 22:29:38 +07:00
hathach 68a56e52a2 remove RF1GHZNODE from board/readme.md
dcd_lpc43xx.c
- assign ENDPTPRIME with = instead of |=
- fix bug with control transfer the determination of complete transferred --> fix keyboard + msc causes fast blinking

add osal_semaphore_reset(usbd_control_xfer_sem_hdl) when bus_reset
2014-04-04 12:22:33 +07:00
hathach 124dffd2cd refractor usbd_task as wrapper for body task
IAR device_freertos works well except for CDC with typing many characters (like Keil)
2014-03-31 13:12:51 +07:00
hathach 45aef4c04c more doxygen stuffs 2014-03-25 13:11:22 +07:00
hathach 7d53564755 doxygen 2014-03-24 13:19:17 +07:00
hathach 68d96edc13 more doxygen works 2014-03-24 13:06:40 +07:00
hathach a8406060d1 doxygen documenting 2014-03-24 12:35:44 +07:00
hathach a8d32d81b3 tested with IAR & keil for device ea4357, fix some warnings 2014-03-23 17:33:58 +07:00
hathach 5d5aa9b213 clean IAR warning 2014-03-23 17:17:26 +07:00
hathach 58892299f3 use internal buffer for hid report descriptor as well. 2014-03-23 16:57:39 +07:00
hathach e0fd3efa70 finished using usbd_enum_buffer for all std descriptors 2014-03-23 15:39:55 +07:00
hathach 1af381c2de remove TUSB_CFG_DEVICE_STRING_DESCRIPTOR_COUNT
refractor descriptor to array of pointer, adding interface descriptor as well
2014-03-23 14:14:00 +07:00
hathach e28170db2f adding usbd_enum_buffer to usbd
remove string descriptor USB RAM requirement
2014-03-23 10:15:32 +07:00
hathach 3a8dce013d remove IAD_DESC_REQUIRED
add compiler guard for exceeding number of endpoints for lpc11/13u
2014-03-23 00:00:23 +07:00
hathach 1cdca167cd rename dcd_11u_13u_qhd_t::total_bytes to nbytes to prevent confusion
introduce scsi_data to mscd_interface_t to make tusbd_msc_scsi_cb buffer's address no longer to be required in USB ram section --> save usb ram for lpc11/13u
2014-03-22 22:50:08 +07:00
hathach 7c5b386130 clean ATTR_USB_MIN_ALIGNMENT on application and most of device except the msc_device.c 2014-03-21 19:23:19 +07:00
hathach b349121c09 some doxygen 2014-03-21 16:59:34 +07:00
hathach d2d0d0a6d5 clean up some device warnings
move led_blinking_task and led_blinking_set_interval to board.c
2014-03-21 16:32:39 +07:00
hathach 61657f6751 change OSAL_TASK_FUNCTION to adapt with cmsis rtx 2014-03-19 16:50:49 +07:00
hathach cf82b13a0e finish descriptor refractor for hid keyboard & mouse 2014-03-18 18:38:15 +07:00
hathach eab4f9642c refractor descriptor passing for device with user-friendly structures 2014-03-18 18:07:48 +07:00
hathach 34756f3862 app descriptor rename 2014-03-18 16:58:24 +07:00
hathach e73667c078 clean up tusb_descriptors 2014-03-18 16:23:23 +07:00
hathach d1d4ddd856 doxygen document 2014-03-16 22:20:33 +07:00
hathach 18d577abfb fix out of range array in usbd 2014-03-14 17:32:01 +07:00
hathach eff1fe99f8 clean all device os none warnings 2014-03-14 17:24:30 +07:00
hathach 4cdebe2e76 fix warning for device os none 2014-03-14 17:18:05 +07:00
hathach 8fbafc460c fix a problem with dcd 13uxx dcd_pipe_clear_stall that should clear toggle for buffer0 (instead of active buffer)
as the next transfer is always forced to be happened on buffer0
2014-03-13 17:06:18 +07:00
hathach 1e957bb672 change dcd 176x alignment placement to work with IAR 2014-03-12 15:11:48 +07:00
hathach 0f0d9d127b able to build lpc11u with IAR
clean ending warming with IAR
2014-03-12 14:43:58 +07:00
hathach 9ba209cda0 IAR line ending warning 2014-03-12 14:10:38 +07:00
hathach 8f03dea95a fix iar warning 2014-03-12 14:03:17 +07:00
hathach c92b03edfb added scatter file for lpc11u & lpc13u for it to run with keil 2014-03-12 12:49:59 +07:00
hathach 6a736db159 try to port lpc11uxx device demo with IAR 2014-03-10 15:31:12 +07:00
hathach b586fe632a change desc_str_table to array of pointer of uint8_t* to be compatible with IAR (lack of support for VLA initialization)
IAR device os none works with ea4357
2014-03-10 14:20:38 +07:00
hathach ad72db5aea change IAR TUSB_CFG_ATTR_USBRAM to _Pragma("location=\".ahb_sram1\"") instead of @ .ahb_sram1 so that we can place it before the variable for a cleaner code
change pipe xfer API buffer from void* to uint8_t*
change FIFO_DEF to have a separated buffer to be compatible with IAR\
refractor IAR data alignment pragma
2014-03-10 13:13:13 +07:00
hathach d5f278bbf0 clean up dcd_lpc175x_6x.c 2014-03-10 11:36:19 +07:00
hathach a609cffda2 refractor dcd_lpc175x_6x
- remove dd allocation table and use fixed 2 dd for each endpoints
- change dd::used to dd::int_on_complete
--> fixed all the bugs with lpc175x_6x with MSC device & CDC device
2014-03-10 11:18:50 +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 03ad1afef9 clean up warnings 2014-01-24 22:04:59 +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 a40d20387d complete dcd 17xx control xfer with soft DMA
keyboard LED set report run ok with lpc17xx
there is problem with cdc set line encoding
2013-12-09 16:11:10 +07:00
hathach b08ecda657 house keeping, lpc43xx works okie 2013-12-09 11:57:09 +07:00
hathach 2af9ecbed5 refractor dcd lpc43xx control xfer (with int on complete) 2013-12-09 11:49:34 +07:00
hathach 055285c559 minor refractor 2013-12-09 11:28:11 +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 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 e0db04e6b4 tested with lpc13u 2013-12-01 00:34:18 +07:00
hathach 864935fbe8 code clean up 2013-11-30 22:38:15 +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 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 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 dbfad50d43 house keeping 2013-11-20 12:21:29 +07:00
hathach d284ecaccb add sw int_on_complete support for dcd lpc17xx 2013-11-20 12:03:04 +07:00