1096 Commits

Author SHA1 Message Date
Gavin Li
8fe887198b Add tx callback to cdc device
Useful for continuous transmission of data, which is difficult currently
because there is no notification of tx completion.
2020-06-18 01:13:44 -07:00
Mengsk
57b553e023 Fix IAR warnings.
Pa039 : use of address of unaligned structure member.
Pe188: enumerated type mixed with another type.
2020-06-17 10:08:33 +02:00
Reinhard Panhuber
bc7e24b659 Fix wrong comment for IAD checks. 2020-06-14 14:22:10 +02:00
Reinhard Panhuber
b25bbf4776 Fix alignment. 2020-06-14 12:58:16 +02:00
Reinhard Panhuber
3012175351 Fix alignment. 2020-06-14 12:57:00 +02:00
Reinhard Panhuber
48b2e6cf78 Fix too strict checks on subclass and interface of iad descriptor. 2020-06-13 13:51:50 +02:00
Ha Thach
5efeaf2ac1
Merge pull request #413 from kasjer/kasjer/ble-over-usb
Bluetooth HCI transport over USB
2020-05-31 15:07:56 +07:00
hathach
d6d29897f3 add get device qualifier descriptor 2020-05-28 23:16:16 +07:00
Jerzy Kasenberg
56d46483e4 Add bt hci device class
Code implements USB transport for bluetooth HCI.
2020-05-28 10:58:49 +02:00
Jerzy Kasenberg
077437b3dc Add non standard request handling in class
For some reason bluetooth stack implementations send class requests
to device instead of interface.
To implement HCI interface over USB non device addressed requests
for class need to be handled.
2020-05-28 10:11:37 +02:00
hathach
53b749fd72 check max_len for vendor and hid 2020-05-28 14:44:26 +07:00
hathach
fb214f7cf7 rename to drv_len to be consistent 2020-05-28 13:57:49 +07:00
hathach
10cd3f24bf initial transfer failed in open() shouldn't cause the driver open to fail. 2020-05-28 13:48:02 +07:00
hathach
c1db36a15c
update vendor open() 2020-05-28 12:19:06 +07:00
hathach
bec5b5f9da
update usbtmc open() 2020-05-28 12:13:48 +07:00
hathach
13860e9f94
update net open() 2020-05-28 11:51:25 +07:00
hathach
8f560bf275
update midi open() 2020-05-28 11:41:37 +07:00
hathach
89a3d1f6d1
update hid open() 2020-05-28 11:19:12 +07:00
hathach
7a15d2e0d2
improve msc 2020-05-28 00:56:33 +07:00
hathach
2eeeda1bcf
change signature for dfu runtime 2020-05-28 00:46:32 +07:00
hathach
e340404968
changing usbd driver open() return type, add max_len
only done with cdc and msc, push this interim for feedback first
2020-05-27 19:01:59 +07:00
hathach
ff9994116e fix nrf hanged (blocking wait) when called within critical section 2020-05-21 21:22:12 +07:00
hathach
8b66098335 fix freeRTOS logic 2020-05-20 15:21:11 +07:00
hathach
a0fe3a80e7 remove queue lock/unlock per review 2020-05-20 15:09:46 +07:00
hathach
d8a15aca77 remove osal_queue_t const qhdl from osal API
since it doesn't make any differences.
2020-05-20 14:38:34 +07:00
hathach
88a455a9b9 added tud_task_event_ready()
to check if there is pending events in the tud task without executing
it. Useful to check before entering low power mode with WFI/WFE
2020-05-20 14:31:45 +07:00
hathach
4e8d414bc6 added osal_queue_empty() API
ported for osal none/freertos/mynewt
2020-05-20 13:38:41 +07:00
hathach
550746097b fix cast-align warning for nuc505 2020-05-18 13:03:41 +07:00
hathach
1a8ce043ed enable -Wcast-align
suppress vendor sdk driver at board.mk
2020-05-17 14:24:15 +07:00
hathach
b0d49e55de refactor copy to and from fifo 2020-05-14 14:24:55 +07:00
Mengsk
46875a3912 Optimize FIFO for byte transfer.
Signed-off-by: Mengsk <admin@hifiphile.com>
2020-05-13 23:54:23 +02:00
Ha Thach
4e6aa0d81d
Merge pull request #390 from hathach/detect-nrf-softdevice
detect if SD is actually present on the flash using SD magic
2020-05-12 14:35:45 +07:00
Mengsk
f02ad1d0dc Add IAR compiler attribute and endian support. 2020-05-08 13:29:33 +02:00
hathach
eeb076454b add CFG_TUSB_DEBUG_PRINTF() for log retargeting 2020-05-08 12:56:32 +07:00
Ha Thach
f9f0873b72
Merge pull request #393 from xobs/fix-debug-warning
device: fix build warning when CFG_TUSB_DEBUG >= 2
2020-05-08 12:38:50 +07:00
Sean Cross
63bd8d2e44 device: fix build warning when CFG_TUSB_DEBUG >= 2
The function is defined inside of a function body which generates a
warning.  Circuit Python treats these warnings as errors, and so
refuses to build with debugging enabled:

    ../../lib/tinyusb/src/device/usbd_control.c: In function 'usbd_control_xfer_cb':
    ../../lib/tinyusb/src/device/usbd_control.c:195:19: error: nested extern declaration of 'usbd_driver_print_control_complete_name' [-Werror=nested-externs]
      195 |       extern void usbd_driver_print_control_complete_name(bool (*control_complete) (uint8_t, tusb_control_request_t const *));
          |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    cc1: all warnings being treated as errors
    make: *** [../../py/mkrules.mk:55:
    build-simmel/lib/tinyusb/src/device/usbd_control.o] Error 1

Move the declaration to the top of the function to silence this warning.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-07 19:03:40 +08:00
hathach
58b99e59d4 detect if SD is actually present on the flash using SD magic
even with SOFTDEVICE_PRESENT defined, SD may not be present on actual
flash.
2020-05-05 23:07:56 +07:00
Ha Thach
101f234a16
Merge pull request #387 from duempel/redesign_transmit_synopsys
Redesign of Synopsys device transmission
2020-05-04 14:41:20 +07:00
Jan Dümpelmann
fd69cc3dcc clean up
renaming function and variables
changing indent size
2020-05-04 07:59:13 +02: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
Jan Dümpelmann
59ff208c65 Changed switch into if statements 2020-04-29 12:37:29 +02:00
Jan Dümpelmann
3e6feb7f6d Redesign of Synopsys device transmission
Changes:
  - checking if tx buffer empty interrupt is masked
  - process more than one packet in isr
  - mask tx buffer empty just after all bytes were written
  - use of transmit_fifo_packet instead of transmit_packet
2020-04-29 11:32:22 +02:00
hathach
6f4b6a1d03 remove the use of TU_VERIFY_HDLR 2020-04-29 11:31:27 +07:00
Ha Thach
d4511186a2
Merge pull request #383 from kasjer/kasjer/fox-busy-flag-race-condition
Fix endpoint busy flag race condition
2020-04-29 10:12:31 +07:00
hathach
fcdb22b2f9 fix typo 2020-04-28 10:53:43 +07:00
Jerzy Kasenberg
63cefb7615 Fix endpoint busy flag race condition
Busy flag was set to true after call to dcd_edpt_xfer().
In some cased it was possible that transfer finished before function
ended.
In this case busy flag could be set to false before it was set to
true.
Then setting it to true after dcd_edpt_xfer() made edpoint busy forever.

This change marks endpoint as busy before transfer is started to
avoid race condition.
2020-04-27 16:42:35 +02:00