Commit Graph

282 Commits

Author SHA1 Message Date
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 44ad683bd6 fix tud_control_status() didn't update request 2019-11-04 11:21:57 +07:00
hathach 65e96e5d52 added optional dcd_control_status_complete() 2019-11-03 18:00:07 +07:00
hathach 62f8c14fae add a bit of log1 for debugging 2019-11-03 14:08:38 +07:00
hathach 7bf01e218d make control buf static 2019-11-03 11:43:07 +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 164d0db825
Merge branch 'ZLP_Request2' into pigrew-ZLP_Request2 2019-11-01 10:16:59 +07:00
Nathan Conrad d35f86993f Merge remote-tracking branch 'origin/master' into ZLP_Request2 2019-10-31 12:23:54 -04: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 d9ba4d90a8
move function around, more rename 2019-10-31 12:26:36 +07:00
hathach 0029b58417
rename 2019-10-31 12:18:41 +07:00
hathach e6857d8ee0
clean up 2019-10-31 11:25:41 +07:00
hathach 8a57997c0f Merge branch 'master' into pigrew-ZLP_Request2 2019-10-31 09:57:52 +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 16665672a4 initally adding test_usbd.c 2019-10-30 12:24:07 +07:00
hathach 880ac1e398 move dcd event helper to be dcd.h as inline function 2019-10-30 11:35:25 +07:00
hathach a29eb87c38 Merge branch 'ZLP_Request2' of https://github.com/pigrew/tinyusb into pigrew-ZLP_Request2 2019-10-29 18:19:10 +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 4e8c57171c Merge branch 'master' into cr1901-msp430f5529 2019-10-25 21:20:05 +07: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
William D. Jones a01b0a73c1 Remove accidentally-commited debug var. 2019-10-03 23:59:22 -04:00
William D. Jones 432e9dcd2e Merge remote-tracking branch 'pigrew/ZLP_Request2' into msp430f5529 2019-10-03 23:50:55 -04:00
hathach 7fd68efe7b couldn't get 32L4 running with crystal less mode 2019-10-03 13:37:10 +07:00
William D. Jones 5ee1070c16 Merge remote-tracking branch 'origin' into msp430f5529 2019-10-02 23:18:49 -04:00
William D. Jones b0b737b42a usbd_control.c: Decide whether a control transfer has a data stage
based on setup packet wLength.
2019-10-02 23:02:55 -04:00
Nathan Conrad cef388b7bd Merge branch 'master' into ZLP_Request2 2019-10-02 01:15:47 -04: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 4ea2a4ed60 Github's web interface changed line endings without asking me. Oops. 2019-09-29 10:45:13 -04:00
Nathan Conrad 0078be9c24
Merge branch 'master' into ZLP_Request2 2019-09-29 09:52:53 -04:00
Nathan Conrad c4483d244b Fix typo of CFG_TUD_ENDOINT0_SIZE. 2019-09-27 21:22:19 -04:00
Nathan Conrad 4ccdc5522d Fix typo of CFG_TUD_ENDOINT0_SIZE. 2019-09-27 12:41:46 -04:00
Nathan Conrad 91fa24d99c Merge branch 'master' into ZLP_Request2 2019-09-27 00:37:21 -04: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 b6590490a8 USB Control: Pointer arithmetic on void* is forbiden 2019-09-21 12:00:52 -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
Nathan Conrad 340dcb81bf For control transfers, compare the transmitted length against the requested length to know if a ZLP needs to happen. (fixes #139) 2019-09-12 16:06:45 -04:00
Nathan Conrad 4517d504b8 Fix typo of ENDOINT 2019-09-09 13:34:30 -04:00
hathach 48c7b80c57 fix warnings of template descriptor 2019-08-23 13:33:40 +07:00
hathach 30de17a830 clean up
- remove TUD_WEBUSB_URL_DESCRIPTOR to avoid flexible array member (C++
forbid in strict mode)
- remove unused TUD_DESC_STRLEN/TUD_DESC_STR_HEADER/TUD_DESC_STR_HEADER
2019-08-01 13:20:00 +07:00
hathach bd08d0edc9 add vendor peek, change cdc peek signature, change cdc read_char() return from signed char to int32_t 2019-08-01 10:46:27 +07:00
hathach af3c301ea5 added BOS MS OS 2.0 descriptor to webusb example, it work with windows 2019-07-30 00:34:25 +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 8ba71be6ee more webusb + vendor 2019-07-25 16:52:20 +07:00
hathach caf2b6d463 move tud_vendor_control_* to usbd.h 2019-07-24 23:12:31 +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 2b7acd554a updating webusb with cdc 2019-07-12 19:38:04 +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 64e9c11b41 fix incorrect midi descriptor template 2019-07-09 10:40:14 +07:00
hathach 216ccc6e93 midi only use audio 1.0 without IAD 2019-07-05 16:46:11 +07:00
hathach 57433135ce fix midi template 2019-07-01 23:19:14 +07:00
hathach 6991b28532 improving midi support, adding midi exmaple
rename TUSB_DESC_CLASS_SPECIFIC to TUSB_DESC_CS_INTERFACE
2019-07-01 22:38:06 +07:00
hathach 73d7ab201e
remove dcd_edpt_busy() 2019-06-10 22:29:18 +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 f9d9eebfe1 support hid generic inout #58
- add report descriptor template TUD_HID_REPORT_DESC_GENERIC_INOUT
- add TUD_HID_INOUT_DESCRIPTOR & TUD_HID_INOUT_DESC_LEN
- add hid_generic_inout example
2019-05-02 14:30:49 +07:00
hathach c006f3dbce adding optional ep out for hid
refactor usbd_open_edpt_pair
2019-05-01 19:29:56 +07:00
hathach ff8fe28c98
move interface descriptor template to usbd.h, update exmaple 2019-04-19 13:16:06 +07:00
hathach 23bcf1cc7a
remove auto descriptor and its option CFG_TUD_DESC_AUTO 2019-04-18 23:59:21 +07:00