1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

68 Commits

Author SHA1 Message Date
Marian Buschsieweke
edc43201db
tree-wide: fix typos in doc and comments
This should not change any generated binary
2023-10-16 12:17:48 +02:00
Joshua DeWeese
e92f9fc658 pkg/tinyusb: add missing include
The macro `AUTO_INIT_PRIO_MOD_TINYUSB` was being used, but not defined.
This patch includes the header where `AUTO_INIT_PRIO_MOD_TINYUSB` is
defined to fix the compiler error.
2023-08-21 10:12:21 -04:00
Marian Buschsieweke
500b4ebc28
pkg/tinyusb: fix compilation with clang 2023-07-18 12:24:10 +02:00
Gunar Schorcht
ec52057efc pkg/tinyusb/hw/hw_stm32_otg: set V_DDUSB for U5 2023-07-05 09:39:43 +02:00
Gunar Schorcht
1850f7a2c7 pkg/tinyusb/hw/hw_stm32_otg: fix disabling of V_BUS sensing 2023-07-05 09:34:33 +02:00
Gunar Schorcht
ff9059c661 pkg/tinyusb/hw/hw_stm32_otg: comments improved 2023-07-05 09:31:44 +02:00
3b505a2883
pkg/tinyusb: sys: fix stdio buffered inclusion in Kconfig 2023-06-17 15:12:31 +02:00
MrKevinWeiss
afd8152800
pkg/tinyusb: Rework the tinyUSB kconfig model 2023-05-31 12:55:52 +02:00
07d2e1c228
treewide: replace remaining occurrences of tests/pkg_* 2023-05-06 07:55:03 +02:00
Gunar Schorcht
f30abc4200 pkg/tinyusb/tinyusb_board_reset: define feature as RIOT internal
Defining the feature as RIOT internal avoids that the board has to set USB_VID and USB_PID explicit to USB_VID_TESTInG/USB_PID_TESTING if tinyUSB board reset feature is used.
2023-03-10 12:42:47 +01:00
bors[bot]
37b64912d4
Merge #19256
19256: pkg/tinyusb: add GD32VF103 support r=gschorcht a=gschorcht

### Contribution description

This PR provides the tinyUSB support for GD32VF103 and enables the `tinyusb_device` feature as well as `stdio_tinyusb_cdc_acm` for GD32VF103 boards.

### Testing procedure

```
BOARD=sipeeed-longan-nano make -C tests/shell flash term
```
should work

### Issues/PRs references


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-02-21 16:53:06 +00:00
Gunar Schorcht
dc7abdf723 pkg/tinyusb: add GD32V support 2023-02-21 15:04:13 +01:00
Benjamin Valentin
85ce068c45 pkg/tinyusb: bump to 0.15 2023-02-14 14:30:49 +01:00
Gunar Schorcht
295f8339d2 pkg/tinyusb: add tinyUSB netdev module 2023-02-01 21:58:01 +01:00
Gunar Schorcht
4e7bbb1bbe pkg/tinyusb: Kconfig support of network device class 2023-02-01 21:57:23 +01:00
Gunar Schorcht
5b6a88e070 pkg/tinyusb: enable network device class in makefiles 2023-02-01 21:57:18 +01:00
Gunar Schorcht
5da9b2951f pkg/tinyusb: support for network device class descriptors 2023-02-01 21:56:36 +01:00
Gunar Schorcht
014e090fbd pkg/tinyusb: support for network device configuration 2023-01-31 22:40:17 +01:00
bors[bot]
9ff9704fe5
Merge #19010 #19149
19010: bootloaders/riotboot: add tinyUSB DFU support r=benpicco a=gschorcht

### Contribution description

This PR provides
- the tinyUSB DFU and DFU Runtime support and
- the `riotboot_tinyusb_dfu` bootloader that uses the tinyUSB DFU mode to flash new application images.

~This PR includes PR #18983 for now to be compilable.~

### Testing procedure

1. Use any board that supports the `riotboot´ and `tinyusb_device` features and flash the bootloader first, for example
   ```
   BOARD=nucleo-f767zi make -C bootloaders/riotboot_tinyusb_dfu flash
   ```
   and check that the `riotboot_tinyusb_dfu` bootloader is in DFU mode:
   ```
   dfu-util --list
   ```
3. Flash a first application using the following command:
    ```
   FEATURES_REQUIRED=riotboot USEMODULE=tinyusb_dfu BOARD=nucleo-f767zi \
   make -C tests/saul PROGRAMMER=dfu-util riotboot/flash-slot0
   ```
   and check that the application starts and is seen as upgradable:
   ```
   dfu-util --list
   ```
4. Restart the node in bootloader DFU mode by:
   ```
   dfu-util -e
   ```
   Flash a second application, for example
   ```
   FEATURES_REQUIRED=riotboot USEMODULE=tinyusb_dfu BOARD=nucleo-f767zi \
   make -C tests/shell PROGRAMMER=dfu-util riotboot/flash-slot1
   ```
   and check that the second application starts and is seen as upgradable:
   ```
   dfu-util --list
   ```
   
### Issues/PRs references

~Depends on PR #18983~

19149: SECURITY: Describe that declassification is an option r=benpicco a=chrysn

### Contribution description

Our security policy does not contain provisions for the case when what is reported is not what we consider an actual security issue. As it is described now, everything reported through security@ would go through the full treatment, including a point release.

I'm not sure it belongs into the text itself (as it's more about how security reporters interact with the project than internals), but declassification should IMO be backed at least by 3 maintainers, and no strong NACK.

### Issues/PRs references

#19141 followed that procedure after some chat on it on the maintainers channel. (In the discussion, I proposed declassification, with 2.5 people supporting it and one "I was about to, but can we be sure nobody is using it?" voice).

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: chrysn <chrysn@fsfe.org>
2023-01-15 23:31:00 +00:00
Gunar Schorcht
37b151111f pkg/tinyusb: add DFU and DFU_RT device class implementation 2023-01-15 18:09:55 +01:00
Gunar Schorcht
7fa58f74dd pkg/tinyusb: add DFU and DFU_RT to descriptors 2023-01-15 18:09:55 +01:00
Gunar Schorcht
c254dc35fd pkg/tinyusb: add DFU and DFU_RT to configuration 2023-01-15 18:09:55 +01:00
Gunar Schorcht
815f20d2bf pkg/tinyusb/hw: use pm_block only if module pm_layered is enabled 2023-01-15 18:09:55 +01:00
bors[bot]
fb603f2660
Merge #18459 #18724 #19081 #19082 #19136
18459: makefiles/suit: make it possible to accept multiple SUIT keys r=miri64 a=benpicco



18724: nanocoap_sock: implement DTLS socket r=miri64 a=benpicco



19081: sys/stdio_udp: add stdio over UDP r=benpicco a=benpicco



19082: core/init: add early_init() r=benpicco a=benpicco



19136: CI: re-add "synchronize" event to check-labels r=miri64 a=kaspar030



Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Benjamin Valentin <benjamin.valentin@bht-berlin.de>
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2023-01-13 13:50:55 +00:00
Benjamin Valentin
81625fd5f2 doc: sort all stdio implementations into sys_stdio group 2023-01-13 11:08:22 +01:00
Benjamin Valentin
59f067171f core/init: call vfs_bind_stdio() in early_init() 2023-01-08 22:26:13 +01:00
Gunar Schorcht
c0d027156a pkg/tinyusb: board reset feature moved
The board reset function can be used on any CDC ACM interface. It is not necessary that the tinyUSB CDC ACM STDIO is used. Therefore, the board reset function is now a feature of the CDC ACM interface that don't require any other functionality.
2023-01-03 10:05:54 +01:00
Gunar Schorcht
7a65eea8d0 pkg/tinyusb: automatic use of tinusb_device for pure device classes 2022-12-06 18:41:59 +01:00
benpicco
0d64cc2fa5
Merge pull request #19006 from gschorcht/pkg/tinyusb_board_reset
pkg/tinyusb: add usb_board_reset support
2022-12-06 17:16:18 +01:00
benpicco
b0da17b4ef
Merge pull request #19007 from gschorcht/pkg/tinyusb_stdio_kconfig
pkg/tinyusb: add Kconfig support for stdio_tinyusb_cdc_acm
2022-12-06 17:16:09 +01:00
Gunar Schorcht
d66716fa38 pkg/tinyusb: support second device configuration descriptor
An alternative device configuration descriptor is required if multiple protocols, e.g. CDC ECM and RNDIS, should be used with same device interface. This commit is a prerequisite for the support of tinyusb netdev driver.
2022-12-04 17:06:48 +01:00
Gunar Schorcht
91c171a990 pkg/tinyusb: some cleanup of configuration and descriptors
The commit includes the following changes:
- Remaining CONFIG_* symbols are moved to tinyusb_descriptors.h to be visible in all source files.
- Debug output is added to some descriptor callbacks.
- The conditional definitions of CFG_* symbols are changed to unconditional definitions to ensure that Kconfig CONFIG_* symbols are always used.
2022-12-04 17:06:48 +01:00
Gunar Schorcht
bd5ce7b398 pkg/tinyusb: parameterized descriptor macros 2022-12-04 17:06:48 +01:00
Gunar Schorcht
6aa267c4b5 pkg/tinyusb/cdc_acm_stdio: support usb_board_reset 2022-12-04 16:55:16 +01:00
Gunar Schorcht
d6bbb6d664 pkg/tinyusb/cdc_acm_acm: enable stdio_available by default 2022-12-03 12:59:17 +01:00
Gunar Schorcht
d19fadd05b pkg/tinyusb: add Kconfig for cdc_acm_stdio 2022-12-03 12:56:40 +01:00
Gunar Schorcht
b97da1bfde pkg/tinyusb: use RIOT internal USB_VID/USB_PID 2022-12-03 12:05:32 +01:00
Gunar Schorcht
ed585cfc22 pkg/tinyusb: fix compilation with NDEBUG defined 2022-12-03 11:48:35 +01:00
Gunar Schorcht
fc1600252f pkg/tinyusb: fix reset for STM32 boards without internal D+ pullup
If the STM32 MCU does not have an internal D+ pullup and there is no dedicated GPIO on the board to simulate a USB disconnect, the D+ GPIO
has to be temporarily configured as an output and pushed down to simulate a disconnect/connect cycle to allow the host to recognize the device. This is done correctly in `cpu/stm32/periph/usbdev_fs.c` but not in tinyUSB STM32 hardware driver. That is, pressing the RESET button doesn't reset the USB connection.
fixup! pkg/tinyusb: fix reset for STM32 boards without internal D+ pullup
2022-11-30 15:17:51 +01:00
Gunar Schorcht
c42b6d601d pkg/tinyusb: fix CONFIG_CLOCK_HSE for STM32 2022-11-17 17:50:20 +01:00
Gunar Schorcht
4b7578b2eb pkg/tinyusb: fix USB speed selection for STM32 2022-11-17 14:07:38 +01:00
Gunar Schorcht
37f6720da3 pkg/tinyusb: fix CFG_TUD_MAX_SPEED
The commit 98478e02fe removed the setting of the CFG_TUD_MAX_SPEED define to OPT_MODE_DEFAULT_SPEED. This setting is usually not required since CFG_TUD_MAX_SPEED is determined from CFG_TUSB_RHPORT{0,1}_MODE. However, this does not work for STM32F429I-DISC1 where the HS port is used via the internal FS-PHY. Therefore the default speed setting is added again.
2022-11-14 22:11:08 +01:00
Gunar Schorcht
5905893c9d pkg/tinyusb: update doc for common descriptors
With PR #18835, the automatic generation of descriptors for the most common device classes and their handling was introduced. The update of the documentation was forgotten.
2022-11-13 11:33:24 +01:00
Gunar Schorcht
ad65ed6830 pkg/tinyusb: update doc for tusb_app_config.h
With PR #18804 the approach to override the default tinyUSB configuration was changed. The update of the documentation was forgotten.
2022-11-13 11:33:24 +01:00
Benjamin Valentin
03bbd6badf pkg/tinyusb: implement stdio via CDC ACM 2022-11-09 12:06:36 +01:00
Benjamin Valentin
5938bd815a pkg/tinyusb: provide common tusb_config.h 2022-11-09 12:06:36 +01:00
benpicco
e38e0b937c
Merge pull request #18835 from gschorcht/pkg/tinyusb_descriptors
pkg/tinyusb: add common USB descriptors implementation
2022-11-09 10:42:15 +01:00
Gunar Schorcht
028c22083b pkg/tinyusb: add Kconfig variables for common tinyUSB descriptors 2022-11-09 06:57:55 +01:00
Gunar Schorcht
ef5c4deb55 pkg/tinyusb: common descriptors implementation 2022-11-09 06:57:55 +01:00
Kevin "Tristate Tom" Weiss
19943d2aa8
Merge pull request #18787 from gschorcht/cpu/stm32/usbdev_synopsys_dwc_dependency
cpu/stm32: improvement of USB device driver selection
2022-11-04 07:57:28 +01:00