2631 Commits

Author SHA1 Message Date
Gordon McNab
8c40a74f29 Sort out board settings. 2021-10-06 17:13:44 +01:00
Gordon McNab
9966b8a5d6 Change author in header to Bridgetek Pte Ltd. 2021-10-06 16:54:52 +01:00
Gordon McNab
37c5eeb51d Rename directories to indicate that FT930 and FT900 devices are both covered by the same SDK and src/portable code. Board makefile includes __FT900__ macro for FT90x and __FT930__ macro for boards with FT93x. 2021-10-06 16:50:55 +01:00
Gordon McNab
62c613f6d2 Add initial port for FT9xx series from Bridgetek.
Add FT90X and FT93X to the list of devices in tusb_option.h. 1700 for FT90x and 1701 for FT93x.
Set endpoint attributes for FT90x and FT93x in dcd_attr.h.
Add FT90x routines for USB device in src/portable/bridgetek/ft90x/dcd_ft90x.c
The location for hardware header files and libraries is hw/mcu/bridgetek/ft90x/hardware. There are no files in the repository, but files will be linked as a submodule in the future. The required files can be copied from or linked to the location "C:/Program Files(x86)/Bridgetek/FT9xx Toolchain/Toolchain/hardware" once the toolchain is installed.
Makefile for the MM900EV1B board for developing with an FT900 device is present. Use "BOARD=mm900ev1b".
2021-10-05 13:54:47 +01:00
hathach
431650fb7d
Merge branch 'j4cbo-ncm' into majbthrd-add_ncm 2021-10-05 16:32:37 +07:00
hathach
a867d87072
rename CFG_TUD_NET to CFG_TUD_ECM_RNDIS 2021-10-05 16:00:07 +07:00
hathach
31cfd5a684 Merge branch 'add_ncm' of https://github.com/majbthrd/tinyusb into majbthrd-add_ncm 2021-10-05 11:39:32 +07:00
Charlie Birks
aa97b419b2
Handle HID devices with OUT endpoint listed first
This happens on my PowerA wired Switch pro controller
2021-10-04 11:43:12 +01:00
Ha Thach
d9bda631d4
Merge pull request #1120 from hathach/enhance
house keeping update
2021-10-01 23:31:21 +07:00
hathach
fec2d15989
clean up vendor open 2021-10-01 23:00:09 +07:00
hathach
75ad0c7d31
clean up 2021-10-01 22:53:14 +07:00
hathach
fdd1e4fbf0
more usbd clean up 2021-10-01 21:52:29 +07:00
Ha Thach
c851229eea
Merge pull request #1063 from HiFiPhile/uac_fifo
UAC2: Add xfer_fifo support for dcd_transdimension.
2021-10-01 00:17:51 +07:00
hathach
7708997a67
change scsis status to phase error when total_bytes < block_count 2021-09-30 20:14:23 +07:00
hathach
14514d7087 Merge branch 'master' of https://github.com/szymonh/tinyusb into szymonh-master 2021-09-30 20:02:32 +07:00
kkitayam
4ca466b00b Update comments 2021-09-29 22:59:46 +09:00
kkitayam
9bcab53c2c Implement frame rate settings 2021-09-29 22:53:26 +09:00
kkitayam
dba5e7b17d Implement negotiation process for streaming parameters 2021-09-29 21:23:19 +09:00
kkitayam
0c89292a8d Fix transfer failure when reconnecting 2021-09-29 21:23:19 +09:00
kkitayam
a15c354329 Fix typo 2021-09-29 21:23:18 +09:00
kkitayam
f7bbdea0b8 Refactor application API parameters 2021-09-29 21:23:17 +09:00
kkitayam
0d6496886c Change frame buffer management 2021-09-29 21:23:17 +09:00
kkitayam
d88cc23ca5 Refactor packet handling 2021-09-29 21:23:17 +09:00
kkitayam
cd3f6eac2f Fix streaming payload handling 2021-09-29 21:23:16 +09:00
kkitayam
3cb4bb391d Separate a handling resource into controller and streaming 2021-09-29 21:23:16 +09:00
kkitayam
2b4e02f192 Implement some mandatory requests on streaming interface 2021-09-29 21:23:16 +09:00
kkitayam
4995d9cbd2 Fix handling for set_interface 2021-09-29 21:23:15 +09:00
kkitayam
20572a6ed2 Fix regarding standard video stream request 2021-09-29 21:23:15 +09:00
kkitayam
d026f17457 fix: configuration descriptor has incorrectly sizes
update some descriptors
2021-09-29 21:23:15 +09:00
kkitayam
019c1ab09e add tentative example 2021-09-29 21:23:14 +09:00
kkitayam
033d6b28ff moved ISO attributes from audio to common 2021-09-29 21:23:14 +09:00
kkitayam
e8de411322 cleanup open() 2021-09-29 21:23:14 +09:00
kkitayam
97d5d1e491 add files for video class device 2021-09-29 21:23:14 +09:00
hathach
1d5bdf7d39
add same7x to board list 2021-09-29 16:29:15 +07:00
hathach
0b31c40b9f Merge branch 'master' into enhance 2021-09-29 16:18:17 +07:00
hathach
2f2fb3d8d9
clean up 2021-09-29 16:18:11 +07:00
hathach
f3c1b2a60d
clean up 2021-09-29 15:31:03 +07:00
hathach
103309b88b
Merge branch 'master' of github.com:hathach/tinyusb into zhangslice-master
examples/device/hid_composite_freertos/src/FreeRTOSConfig/FreeRTOSConfig.h
2021-09-29 15:27:41 +07:00
szymonh
db862ae725 Assure msc device block size is not zero 2021-09-27 21:11:44 +02:00
Peter Lawrence
03d7988df3 add NCM driver in a compatible manner : hathach/tinyusb#550 2021-09-25 17:05:58 -05:00
Ha Thach
958cf2cfba
Merge pull request #1102 from kasjer/kasjer/usbd-small-ep0-enumeration-workaround
usbd: Workaround for non standard device descriptor request
2021-09-25 18:37:24 +07:00
hathach
73872a5df0 add CFG_TUSB_OS_INC_PATH for os include path
useful for freertos/ prefix with esp IDF
2021-09-25 16:16:55 +07:00
Scott Shawcroft
0a6ca65e3f
MMU works 2021-09-24 16:14:01 -07:00
Ha Thach
1c17cb1c45
Merge pull request #1103 from kasjer/kasjer/da146xx-close-cleanup
dcd_da146xx: Remove registers pointer from xfer_ctl_t
2021-09-24 20:55:16 +07:00
Ha Thach
cd865f896b
Merge pull request #1096 from kasjer/kasjer/da146xx-close-all
dcd_da146xx: Implement dcd_edpt_close_all()
2021-09-24 20:53:06 +07:00
Jerzy Kasenberg
c62c1433e7 usbd: Workaround for non standard device descriptor request
Windows and Linux host during enumeration requests device
descriptor with request size set to 64 bytes when device
was in default state (no address).
Those systems do not want 64 bytes though since usb descriptors is
only 18 bytes long so they silently expect that only one packet
will be received possibly 18 bytes for EPS > 16 or 8 or 16 bytes
for smaller EP0.

For devices with CFG_TUD_ENDPOINT0_SIZE size 8 or 16 there was
workaround that reduced request size to CFG_TUD_ENDPOINT0_SIZE
and that was enough to satisfy Windows and Linux hosts.

However USBCV testing application also requests device descriptor
but with size set to 18 bytes. Workaround for Window/Linux
prevented USBVC to tests devices with 8 bytes EP0 size since it
send only 8 bytes while application did wanted 18 bytes.

Solution that satisfies both cases it to check if in default state device
descriptor request wants more bytes than descriptor size (18).
If so host is expecting to receive less bytes then requested
and workaround would be applied since Linux/Windows only try
to read one packet.
If 18 bytes was requested as is the case for USBCV, core returns
descriptor in 2 or 3 packets as application expects.
2021-09-24 14:19:04 +02:00
Jerzy Kasenberg
fbac58e3e4 dcd_da146xx: Implement dcd_edpt_close_all()
Unconditionally disables all endpoints except EP0.
2021-09-24 10:46:16 +02:00
Jerzy Kasenberg
1503955860 dcd_da146xx: Clear transfer data on dcd_edpt_close
Closing endpoint clears data in affected xfer_ctl_t
2021-09-24 09:28:51 +02:00
Jerzy Kasenberg
f172c5ee13 dcd_da146xx: Remove registers pointer from xfer_ctl_t
Note: this commit does not change any logic.

xfer_ctl_t structure keeps all dynamic data connected with transfer.
It used to have pointer to register set that was constant and was there
for convenience only.
Removing register pointer from structure makes cleanup easier as whole
structure can be erased with memset like function.

In many cases functions were using local variable regs and xfer->regs which
were same, that could be confusing so this part is unified.

Few macros were added for easy conversion between epnum, xfer, and regs.
2021-09-24 09:28:51 +02:00
Jerzy Kasenberg
428eedcd04 dcd_da146xx: Update bus handling
So far bus reset was handled (with some holes in it).
Sleep and remote wakeup were not really tested and did not work.

With this change:
- bus reset is reworked
- remote wakeup works
- bus signal sleep is handled
2021-09-23 14:12:50 +02:00