Commit Graph

134 Commits

Author SHA1 Message Date
Reinhard Panhuber 126e46e38a Fix not increment xfer->buffer if xfer->buffer == NULL in dcd_samg.c 2021-02-13 17:37:13 +01:00
Reinhard Panhuber 7ab389db21 Implement dcd_edpt_iso_xfer() for dcd_samg.c. NOTE: ISO EP not supported 2021-02-13 16:36:32 +01:00
hathach 6e6e6265e4 use dcd_event_bus_reset() with speed to replace bus_signal 2021-01-08 22:34:36 +07:00
hathach 3e1d85eed2 comment clean up 2021-01-08 11:43:26 +07:00
hathach cc5dfd03cd update comment and correct the size to 8+2 2021-01-08 11:21:26 +07:00
hathach 60620dca42 walkround for samd21 setup_packet overflow
increase setup packet size from 8 to 12, since USB DMA controller is
suspected to overflow the buffer with 2 extra bytes
2021-01-08 01:21:03 +07:00
hathach 9d3a9cf546 add OPT_MCU_SAMD11
skip ci build for example that need more ROM/RAM could fit into SAMD11
2020-08-22 18:46:19 +07:00
hathach acde49ccc9
enable pull-up in dcd_init() instead of usbd 2020-08-01 20:14:58 +07:00
hathach 0407cfe16c fix samd21 race condition with setup packet
reproduced with Adafruit_TinyUSB_ArduinoCore port commit 11d669b4d2a40eb2fc5e51b2a9707a6de9d42363 and SAMD BSP 1.6.1
2020-07-23 01:39:15 +07:00
Jeff Epler b2ef8cdd42 dcd_samd: Provide implementation for OPT_MCU_SAME5X 2020-06-25 18:51:04 -05:00
hathach d4d6e06c1d added OPT_MCU_SAME5X option 2020-06-24 00:53:17 +07:00
hathach 0e30afa691 abstract all UDP_CSR 2020-05-02 18:24:23 +07:00
hathach 3ad0cd041b clean up 2020-05-02 16:29:22 +07:00
hathach ac3c645dc1 fix EP0 data toggle issue 2020-05-02 16:09:28 +07:00
hathach 2a479175ae remove toggle walkaround, fix control stall race condition 2020-05-02 14:51:21 +07:00
hathach a74a823b0a fix dcd samd race condition with setup packet
setup packet can complete together with previous status (in & out).
Always make sure to prepare valid buffer for holding setup packet when
queuing control status.
2020-04-30 00:29:47 +07:00
hathach 6f9c256ad0
complete remove dcd_set_config(), fix unit test 2020-04-17 13:52:34 +07:00
hathach 50be9d7c3a
mass rename tud/dcd_irq_handler to tud/dcd_init_handler 2020-04-17 12:27:53 +07:00
hathach 36d4efa077
samg implement dcd connect/disconnect 2020-04-16 22:59:19 +07:00
Ha Thach 04a06ec401
Merge branch 'master' into refactor-irqhandler 2020-04-11 15:49:34 +07:00
hathach c1f3fbbc03 implement dcd connect/disconnect for samd and nrf 2020-04-09 11:47:02 +07:00
hathach fb05451a26 mass rename dcd_isr() to dcd_irq_handler() 2020-04-06 17:24:22 +07:00
hathach 2d6d298302 move irqhandler to application
tud_isr() must be called by application to forward the irqhandle to the
stack
2020-04-06 14:11:45 +07:00
hathach 46f22860fb correct waklaround with only status IN
correct usb descriptor msc dual example to work with samg
2020-02-07 22:13:38 +07:00
hathach 02b2c60231 samg55 work with cdc msc example 2020-02-07 17:39:20 +07:00
hathach 9ca6311ac4 implement walkaround for incorrect DATA Toggle for status control. 2020-02-07 16:46:18 +07:00
hathach 89f3ad59da
fix #247 2019-12-27 09:42:57 +07:00
hathach 0da45c2e78
clean up 2019-12-26 22:31:29 +07:00
hathach b5684c5c10
merge dcd_samd51 & dcd_samd21 into dcd_samd 2019-12-26 21:46:59 +07:00
hathach 49b316143a
improve samd, fix missing setup packet occasionally 2019-12-26 17:11:24 +07:00
hathach 5690e7b304
fix samd51 setup packet handling
issue occur due to race condition
https://github.com/adafruit/Adafruit_TinyUSB_Arduino/issues/37
2019-12-25 23:47:47 +07:00
hathach bbada1d3e6 adding lookup table for debugging
add msc scsi command list
2019-12-23 18:54:06 +07:00
hathach 421221baa5
making more progress, but failed with WRITE10
incorrect queue 448 bytes instead of 512
2019-12-21 23:51:57 +07:00
hathach 050fa2fd39
able to response to scsi inquiry, but failed to response to test unit ready 2019-12-21 19:33:41 +07:00
hathach 752aea7d72 enhance samg 2019-12-09 23:58:13 +07:00
hathach fa96078882 clear data toggle in clear stall, also set config bit 2019-12-09 23:21:06 +07:00
hathach 75a2157715 fix samd using TUSB_REQ_SET_ADDRESS in dcd_edpt0_status_complete 2019-12-09 23:20:21 +07:00
hathach 0316e0ecd4 update descriptor, enhance ep in transfer 2019-12-09 22:48:35 +07:00
hathach 759fa76280 implementing dcd_edpt_open 2019-12-09 21:36:15 +07:00
hathach 208a77678c clean up, switch and update submodule samd to circuitpython branch 2019-12-09 18:37:54 +07:00
hathach e9725dcdbe use dcd_edpt0_status_complete() to prepare for setup packet for samd21/samd51 2019-11-28 13:48:55 +07:00
hathach d7558e8a0f use dcd_edpt0_status_complete() to set address without blocking for samd21/samd51/stm32_fsdev 2019-11-28 13:39:29 +07:00
hathach ac701c398b clean up 2019-11-28 12:18:56 +07:00
hathach 552cc3ef33 implement dcd_edpt_stall 2019-11-28 11:56:35 +07:00
hathach 5dc04887e2 get passed set address 2019-11-28 11:48:08 +07:00
hathach 40b454cf28 get passed first get device descriptor 2019-11-27 23:20:48 +07:00
hathach 6225d5bcfd able to handle setup packet 2019-11-27 16:01:25 +07:00
hathach bc21714c7e detect bus reset 2019-11-27 14:49:19 +07:00
hathach 745f0b4521 clean up 2019-11-27 11:02:24 +07:00
hathach c691dc4cb2 update 2019-11-25 10:42:32 +07:00
hathach 58e8265964 usb hw init OK 2019-11-24 23:46:28 +07:00
hathach f16ebd512b indent clean up 2019-07-04 18:45:10 +07:00
hathach 73d7ab201e
remove dcd_edpt_busy() 2019-06-10 22:29:18 +07:00
hathach 13e01c7dca
add TU_ prefix to compiler ATTR to prevent name conflict with application 2019-06-06 10:39:37 +07:00
hathach 667133304b fix samd dcd_clear_stall also reset data toggle 2019-05-10 00:10:18 +07:00
hathach dd9c441a61
samd support suspend and resume. Though cannot distinguish between Suspend and Disconnect
should work with #47
2019-04-02 02:14:22 +07:00
hathach b28cc6ddb1 added dcd_remote_wakeup() stub for all ports 2019-03-30 14:47:11 +07:00
hathach 1c2beba85c working on suspend and resume
change dcd_init signature
2019-03-29 16:23:00 +07:00
hathach 1e9848d917
replace dcd_edpt_(clear)stall by usbd_edpt_(clear)stall
- remove dcd_edpt_stalled() from dcd porting
2019-03-27 16:09:49 +07:00
hathach 4722376654 remove dcd_get_frame_number() 2019-03-27 01:01:48 +07:00
hathach c211ee19dd migrate license from BSD 3 clause to MIT 2019-03-20 16:11:42 +07:00
hathach eda56769b9 dcd_set_address include status response, usbd control stall both control in and out 2019-03-13 23:14:48 +07:00
hathach bd53256126
fix #32 2019-01-23 19:06:37 +07:00
hathach 6f17b4e019 change to dcd_get_frame_number 2018-12-21 12:46:20 +07:00
hathach 426064201a fix samd build 2018-12-19 13:16:42 +07:00
hathach 902697ca07 add dcd_get_microframe() 2018-12-17 12:14:11 +07:00
hathach 6d86db3977
rename edpt_dir/number/addr to tu_edpt_* 2018-12-12 11:51:31 +07:00
hathach a73017fdc2
hal clean up
- replace tusb_hal_int_enable/disable to dcd_int_enable/disable,
hcd_int_enable/disable
- remove tusb_hal_init(), this will be part of dcd_init/hcd_init,
anything beyond dcd/hcd should be inited by bsp
2018-12-05 13:20:25 +07:00
hathach 6048a3bff4
remove dcd_connect/disconnect since there is no usage now 2018-12-05 12:22:33 +07:00
hathach 064eec5dd8
clean up warnings 2018-11-26 12:29:55 +07:00
Scott Shawcroft bf70f89240
Introduce a Makefile for the OS_NONE device example
It currently supports the SAMD21 and SAMD51 only. More will be
added later.
2018-11-25 11:46:06 -08:00
Scott Shawcroft bf8c4612dc
Make sure OUT endpoint 0 on the SAMDs always has a valid buffer to store
a SETUP token into.
2018-11-23 11:20:23 -08:00
Scott Shawcroft 6aa0146c72
Reset USB peripheral and wait for startup 2018-11-23 11:15:39 -08:00
hathach f196b24dce
rename DCD_XFER_SUCCESS to XFER_RESULT_SUCCESS 2018-11-23 15:22:46 +07:00
hathach 1d6fc49fa9
clean up 2018-11-21 17:03:39 +07:00
hathach 3cad1d1134
samd21 work well with cdc 2018-11-21 15:00:36 +07:00
hathach a30dfa3324
clean up 2018-11-21 13:11:19 +07:00
hathach a0ce92bcfd
update dcd samd21 2018-11-21 13:01:39 +07:00
hathach 155edc7b00
fix ses irq vector 2018-11-21 12:36:28 +07:00
hathach d036f62b0e samd51 fix stable issue with dcd 2018-11-20 17:25:41 +07:00
hathach c503d48ec4 clean up 2018-11-20 01:20:39 +07:00
hathach 5732be224c update example for PR. correct share_control definition
- rename dcd,hal to dcd_samd51, hal_samd51 since some IDE has issue with
duplicated names (e.g keil, ses).
2018-11-14 16:03:58 +07:00
Scott Shawcroft 537a29273c
Exempt from strict warnings for struct packing and add MCU options 2018-11-09 00:10:44 -08:00
Scott Shawcroft c582c0fda9
Add SAMD21 and SAMD51 support for CircuitPython.
The ProtoThreads style subtasks were removed because it led to
extremely unclear control flow. RTOSes can be used if threading is
needed.

Also added some additional functionality to MSC to support dynamic
LUNs and read-only LUNs.
2018-11-07 12:02:28 -08:00