Nathan Conrad
de208b31cf
edpt_close: Remove item from queue instead of modifying it.
2020-04-13 11:05:34 -04:00
Nathan Conrad
f8e7487355
edpt_close: Updated based on feedback.
2020-04-13 09:51:46 -04:00
hathach
f4df829399
lpc17xx move set configdevice into set address
...
for removing dcd_set_config()
2020-04-13 17:04:18 +07:00
Nathan Conrad
0eeaccaf46
Skeleton, and initial stm32fsdev implementation (that leaks memory)
2020-04-12 21:27:27 -04:00
Peter Lawrence
bb3bbcc00b
usbnet: OS-agnostic (Windows/Linux/macOS) network driver
2020-04-12 15:41:18 -05:00
Ha Thach
07809d03a7
Merge pull request #332 from pigrew/stm32fsdev-dcdconnect
...
stm32fsdev: Implement dcd_connect.
2020-04-11 13:20:31 +07:00
hathach
1b3d1b52c9
fix uint32_t format with log
2020-04-10 13:54:50 +07:00
Nathan Conrad
715c4dbbf8
stm32fsdev: Implement dcd_connect.
2020-04-09 17:03:12 -04:00
hathach
c026236824
house keeping
2020-04-06 16:33:04 +07:00
hathach
4f871063fd
Merge branch 'master' into cr1901-msp430f5529
2020-03-22 17:19:57 +07:00
hathach
7aa5a53652
fix log printf
2020-03-08 13:26:36 +07:00
Peter Lawrence
fee79d7466
add CDC-ECM/RNDIS/CDC-EEM network device class with example
2020-03-02 21:15:01 -06:00
Chang Feng
b8ea0f0a6b
Add langid support to descriptor string callback.
...
Signed-off-by: Chang Feng <chang_196700@hotmail.com>
2020-02-26 13:07:15 +08:00
Nathan Conrad
25c1bea782
Normalize line endings
2020-01-15 14:47:43 -05:00
Ha Thach
d6a8d42bd6
Merge pull request #254 from majbthrd/multi-setconfig
...
gracefully handle multiple SET_CONFIGURATION requests
2020-01-05 17:48:55 +07:00
Jeremy Herbert
db24b2f372
Let device respond to endpoint requests on EP0 ( #251 )
...
Since endpoint 0 is used for control requests, it doesn't have a class driver attached to it. As such, the corresponding `_usbd_dev.ep2drv` entry points to driver `0xFF`, which is invalid and this makes the `TU_ASSERT(drvid < USBD_CLASS_DRIVER_COUNT);` line fail, and eventually causes an endpoint stall. So as-is the stack cannot respond to any endpoint requests on endpoint 0.
However, standard requests on endpoint 0 do not need a class driver to produce a valid response. This commit changes the order of execution so that the assert is only checked if the endpoint is not 0.
2019-12-30 10:58:06 +07:00
Peter Lawrence
e7bf66b29e
gracefully handle multiple SET_CONFIGURATION requests
2019-12-28 16:49:52 -06:00
hathach
bbada1d3e6
adding lookup table for debugging
...
add msc scsi command list
2019-12-23 18:54:06 +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
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
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
8a1b6327ba
extract code to invoke_class_control()
...
- also rename usbd_class_drivers to _usbd_driver
2019-11-27 12:12:52 +07:00
hathach
1ab3a1035c
Merge branch 'master' into cr1901-msp430f5529
2019-11-05 10:17:36 +07:00
hathach
3c49ff153e
Merge pull request #149 from pigrew/ZLP_Request2
...
Zlp request2
2019-11-05 00:05:21 +07:00
Nathan Conrad
8d0fa158d7
Change one more TU_ASSERT to TU_VERIFY in usbd.
2019-11-04 11:33:14 -05:00
hathach
2727983a2d
fix #211
2019-11-04 22:52:29 +07:00
Nathan Conrad
a94fe05ecb
usbd: Change TU_ASSERT to TU_VERIFY as the assertion can be hit when bad data is sent from host.
2019-11-04 08:59:29 -05:00
hathach
62f8c14fae
add a bit of log1 for debugging
2019-11-03 14:08:38 +07:00
hathach
1b51b78eaf
hack the request length for the first get device descriptor if EP0 size =8 or 16
...
to prevent usbd control send out ZLP
2019-11-03 00:17:17 +07:00
hathach
a0cffdc843
Merge branch 'pigrew-ZLP_Request2' into cr1901-msp430f5529
2019-11-02 23:29:35 +07:00
hathach
cacbb80a90
zlp should work with control in, tested with Unity framework
2019-10-31 21:14:06 +07:00
hathach
6de9eb4b1a
add more tests, fix an issue with tud_descriptor_configuration_cb() return NULL
2019-10-31 13:06:57 +07:00
hathach
4d329d46cc
Merge pull request #206 from hathach/develop
...
Added a couple of unit testing with Ceedling/Cmock/Unity
2019-10-31 08:29:11 +07:00
hathach
a0002cc709
rename usbd_init() to tud_init()
2019-10-30 23:26:34 +07:00
hathach
880ac1e398
move dcd event helper to be dcd.h as inline function
2019-10-30 11:35:25 +07:00
hathach
f6a65720e5
should fix #184
...
only response up to EP0 size with get device descriptor if not
addressed.
2019-10-29 16:25:32 +07:00
hathach
78523301bb
Merge pull request #202 from smunaut/dfu-rt
...
Add support for DFU Runtime class for devices
2019-10-28 22:56:14 +07:00
Sylvain Munaut
ec4ecfa817
Add support for DFU Runtime class for devices
...
This is really just a few descriptors and then answering to the
request from the host to reboot into DFU mode.
That latter part is delegated to the app since this is platform
specific.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-10-28 16:11:08 +01:00
hathach
6ab0663c1a
adding more log
2019-10-24 12:00:06 +07:00
hathach
661515a807
adding debug log function
2019-10-23 21:18:46 +07:00
hathach
204791b3e7
2nd attempt to fix #161
2019-10-01 22:19:04 +07:00
hathach
12609f818b
fix #161 added volatile for ep_busy_map/ep_stall_map
2019-10-01 14:43:34 +07:00
Nathan Conrad
2aa10daf26
Merge branch 'clear_feature_ordering' into usbtmc
2019-09-21 21:39:25 -04:00
Nathan Conrad
9498adef71
Changing the bitwise to a logical OR created a huge hard to find bug. It shortcutted the call to the class function,
...
so, lets use shortcutting anyway?
2019-09-21 19:29:57 -04:00
Nathan Conrad
fbb8520acd
logical or.
2019-09-21 14:34:29 -04:00
Nathan Conrad
37b52e354f
Correct wording of comment on handling EP requests.
2019-09-21 12:17:17 -04:00
Nathan Conrad
a187f0268c
When unstalling, EP must be marked as not busy. Also, mark EP as busy when stalling as xfer requests should fail.
2019-09-21 12:05:57 -04:00
Nathan Conrad
be28a05409
Make type casting explicit
2019-09-21 12:05:46 -04:00
Nathan Conrad
55abb3d717
Calling EP open with bad parameters should be considered a bug.
2019-09-21 12:02:52 -04:00
Nathan Conrad
aebecf169a
Reorder handling of EP control requests,
2019-09-21 12:02:06 -04:00
Nathan Conrad
2a7ca15e2c
Rename functions to include tud_ and _cb
2019-09-19 20:43:49 -04:00
Nathan Conrad
7e0490bbf3
Move descriptors to usbd.h
2019-09-19 19:51:37 -04:00
Nathan Conrad
ac2c9ff02f
Merge branch 'master' into usbtmc
2019-09-17 13:31:53 -04:00
hathach
9c5ae0369b
follow up to suggestion to pr 155
2019-09-16 11:13:17 +07:00
Nathan Conrad
1cae96951f
Add usbtmc class driver.
2019-09-14 13:35:08 -04:00
hathach
ac8c343fef
fix #154 forward all endpoint recipeint request to class driver
...
fix typo
remove magic number 0xff of driver id
2019-09-13 22:16:24 +07:00
hathach
064adebbd0
fix #152 , potential memory issue
2019-09-13 14:03:59 +07:00
hathach
c3598f0301
fix #139 , correct usbd request intepreting, Non-STD request to Interface must be forward to class driver
2019-09-13 13:03:11 +07:00
hathach
cdaf455461
fix stall response with SET_INTERFACE/GET_INTERFACE
...
webusb work with linux & macos
2019-07-26 20:14:56 +07:00
hathach
d2b60b6755
webusb work great with linux
2019-07-26 11:36:30 +07:00
hathach
2a543c0e79
update vendor device similar to cdc read/write
...
maybe refactor later
2019-07-24 23:07:30 +07:00
hathach
c63f2b30cb
rename tud_control_vendor_request_cb/complete_cb to tud_vendor_control_request_cb/complete_cb
2019-07-24 09:45:32 +07:00
hathach
33de35504a
more house keeping
2019-07-19 20:20:13 +07:00
hathach
ae5dc435cb
house keeping
2019-07-19 16:49:04 +07:00
hathach
b0678e1050
rename CFG_TUD_CUSTOM_CLASS to CFG_TUD_VENDOR
2019-07-19 16:23:56 +07:00
hathach
036e858543
add tud_control_vendor_request_cb()/tud_control_vendor_complete_cb(), expose usbd control transfer
...
rename usbd_control_transfer/status to tud_control_transfer/status
2019-07-16 18:14:47 +07:00
hathach
cb4e6837e9
clean up, rename internal driver control_request_complete to simply control_complete
2019-07-12 22:03:40 +07:00
hathach
164b26ee6b
change TUD_HID_INOUT_DESCRIPTOR epout & epin order
...
clean up, adding template for BOS & BOS platform descriptor
2019-07-12 14:53:11 +07:00
hathach
e74aa41552
added tud_descriptor_bos_cb(), add support for BOS get descriptor
2019-07-12 00:12:14 +07:00
hathach
7156bfb54d
fix build error with midi, use usbd_edpt_xfer/busy for midi to replace dcd_*
2019-06-10 18:46:00 +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
a0307bafda
added usbd_edpt_xfer/usbd_edpt_busy to replace dcd_edpt_transfer/dcd_edpt_busy()
...
- improve fifo write/read_n with only one lock
- use usbd_edpt_xfer/usbd_edpt_busy for hid/cdc/msc class driver
- replace cdc read's pending_read_from_host by usbd_edpt_busy()
2019-05-29 16:55:15 +07:00
hathach
8ccecde18e
lpc1769 work with makefile
2019-05-15 12:57:31 +07:00
hathach
3e6d911ce9
more clean up use inline bit funciton instead of macros
2019-05-14 12:54:29 +07:00
hathach
61ec407752
update license year to 2019
2019-05-14 11:48:05 +07:00
hathach
f3a5ea65a9
add index to tud_descriptor_configuration_cb()
2019-05-12 19:55:15 +07:00
hathach
1174949308
change tud_descriptor_string_cb() to be consistent with other descriptor callback
2019-05-12 15:38:15 +07:00
hathach
ba2136486c
add tud_hid_descriptor_report_cb()
...
- remove tud_desc_set.hid_report
- remove tud_desc_set_t
2019-05-12 14:09:35 +07:00
hathach
de56a0ca89
add tud_descriptor_string_cb() for getting string descriptor from application
...
- remove tud_desc_set.string_arr/string_count
2019-05-11 16:31:52 +07:00
hathach
77bc421359
fix clear stall usage, fix reset data toggle with dcd_clear_stall for nrf52
2019-05-09 23:31:18 +07:00
hathach
c006f3dbce
adding optional ep out for hid
...
refactor usbd_open_edpt_pair
2019-05-01 19:29:56 +07:00
hathach
23bcf1cc7a
remove auto descriptor and its option CFG_TUD_DESC_AUTO
2019-04-18 23:59:21 +07:00
hathach
72575534f8
remove auto device descriptor
...
Application should declare its own device descriptor
2019-04-11 00:51:28 +07:00
hathach
491b5936d5
usbd better support suspend/resume
2019-04-02 01:30:01 +07:00
hathach
eabfc53f38
added tud_suspended() and tud_ready()
2019-03-30 23:01:23 +07:00
hathach
f3a954e7de
self powered and remote wakeup support are from configuration descriptor attribute
2019-03-30 17:38:00 +07:00
hathach
b28cc6ddb1
added dcd_remote_wakeup() stub for all ports
2019-03-30 14:47:11 +07:00
hathach
cabf6abb4f
added tud_set_self_powered(), fix #50 reponse to GET_STATUS request
2019-03-30 14:34:38 +07:00
hathach
d9682f8240
replaced config_num by configured
2019-03-30 13:48:15 +07:00
hathach
93a853cd5b
usbd add connected, suspended, remote_wakeup
...
- remove use of osal_queue_reset
2019-03-30 02:26:15 +07:00
hathach
7d9b68a7b9
clean up control req a bit
2019-03-29 16:55:58 +07:00
hathach
3a38cde53d
support set/clear feature Device_remote_wakeup
2019-03-29 16:37:08 +07:00
hathach
1c2beba85c
working on suspend and resume
...
change dcd_init signature
2019-03-29 16:23:00 +07:00
hathach
0bdd4bd550
added Suspend and Resume event for nrf5x port
...
also rename DCD_EVENT_SUSPENDED to DCD_EVENT_SUSPEND
2019-03-29 01:34:53 +07:00
hathach
8fb9fbb0b1
add tud_mounted() check in tud_cdc_connected()
...
mark device as disconnected immed with DCD_EVENT_UNPLUGGED
2019-03-27 23:58:24 +07:00
hathach
da452d4ba6
cleanup, remove the use of _TINY_USB_SOURCE_FILE_
2019-03-27 17:48:42 +07:00
hathach
f26fbaf404
clean up remove usbd_control_stall()
2019-03-27 16:26:52 +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
c211ee19dd
migrate license from BSD 3 clause to MIT
2019-03-20 16:11:42 +07:00