Skip to content

Commit 2fb4139

Browse files
authored
Merge pull request #52 from espressif/sync/upstream
Upstream synchronization
2 parents 4095aba + a163c17 commit 2fb4139

File tree

336 files changed

+9928
-4021
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

336 files changed

+9928
-4021
lines changed

.circleci/config2.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ commands:
121121
TOOLCHAIN_OPTION="--toolchain clang"
122122
elif [ << parameters.toolchain >> == arm-iar ]; then
123123
TOOLCHAIN_OPTION="--toolchain iar"
124+
echo IAR_LMS_CLOUD_URL=$IAR_LMS_CLOUD_URL
124125
iccarm --version
125126
elif [ << parameters.toolchain >> == arm-gcc ]; then
126127
TOOLCHAIN_OPTION="--toolchain gcc"

.github/workflows/build.yml

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,15 @@ jobs:
111111

112112
# ---------------------------------------
113113
# Build IAR on HFP self-hosted
114+
# Since IAR Token secret is not passed to forked PR, only build on PR from the same repo
114115
# ---------------------------------------
115116
arm-iar:
116117
if: github.repository_owner == 'hathach' && github.event_name == 'push'
117118
needs: set-matrix
118119
runs-on: [self-hosted, Linux, X64, hifiphile]
119120
env:
120121
BUILD_ARGS: ${{ join(fromJSON(needs.set-matrix.outputs.json)['arm-iar'], ' ') }}
122+
IAR_LMS_CLOUD_URL: ${{ vars.IAR_LMS_CLOUD_URL }}
121123
IAR_LMS_BEARER_TOKEN: ${{ secrets.IAR_LMS_BEARER_TOKEN }}
122124
steps:
123125
- name: Clean workspace
@@ -127,7 +129,9 @@ jobs:
127129
mkdir -p "${{ github.workspace }}"
128130
129131
- name: Toolchain version
130-
run: iccarm --version
132+
run: |
133+
echo IAR_LMS_CLOUD_URL=$IAR_LMS_CLOUD_URL
134+
iccarm --version
131135
132136
- name: Checkout TinyUSB
133137
uses: actions/checkout@v4
@@ -137,3 +141,24 @@ jobs:
137141

138142
- name: Build
139143
run: python3 tools/build.py --one-per-family --toolchain iar $BUILD_ARGS
144+
145+
# ---------------------------------------
146+
# Zephyr
147+
# ---------------------------------------
148+
zephyr:
149+
if: github.event_name == 'push'
150+
runs-on: ubuntu-latest
151+
steps:
152+
- name: Checkout TinyUSB
153+
uses: actions/checkout@v4
154+
155+
- name: Setup Zephyr project
156+
uses: zephyrproject-rtos/action-zephyr-setup@v1
157+
with:
158+
app-path: examples
159+
toolchains: arm-zephyr-eabi
160+
161+
- name: Build
162+
run: |
163+
west build -b pca10056 -d examples/device/cdc_msc/build examples/device/cdc_msc -- -DRTOS=zephyr
164+
west build -b pca10056 -d examples/device/msc_dual_lun/build examples/device/msc_dual_lun -- -DRTOS=zephyr

.github/workflows/hil_test.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,11 +90,13 @@ jobs:
9090
# ---------------------------------------
9191
# Hardware in the loop (HIL)
9292
# self-hosted by HFP, build with IAR toolchain, for attached hardware checkout test/hil/hfp.json
93+
# Since IAR Token secret is not passed to forked PR, only build on PR from the same repo
9394
# ---------------------------------------
9495
hil-hfp:
95-
if: github.repository_owner == 'hathach'
96+
if: github.repository_owner == 'hathach' && github.event.pull_request.head.repo.fork == false
9697
runs-on: [self-hosted, Linux, X64, hifiphile]
9798
env:
99+
IAR_LMS_CLOUD_URL: ${{ vars.IAR_LMS_CLOUD_URL }}
98100
IAR_LMS_BEARER_TOKEN: ${{ secrets.IAR_LMS_BEARER_TOKEN }}
99101
steps:
100102
- name: Clean workspace
@@ -104,7 +106,9 @@ jobs:
104106
mkdir -p "${{ github.workspace }}"
105107
106108
- name: Toolchain version
107-
run: iccarm --version
109+
run: |
110+
echo IAR_LMS_CLOUD_URL=$IAR_LMS_CLOUD_URL
111+
iccarm --version
108112
109113
- name: Checkout TinyUSB
110114
uses: actions/checkout@v4

.gitignore

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,14 @@ latex
1515
*.jlink
1616
*.emSession
1717
*.ninja*
18+
*.eww
19+
*.ewp
20+
*.ewt
21+
*.ewd
22+
*.hex
23+
cmake_install.cmake
24+
CMakeCache.txt
25+
settings/
1826
.settings/
1927
.vscode/
2028
.gdb_history
@@ -37,4 +45,10 @@ cmake-build-*
3745
sdkconfig
3846
.PVS-Studio
3947
.vscode/
40-
build/
48+
build
49+
CMakeFiles
50+
Debug
51+
RelWithDebInfo
52+
Release
53+
BrowseInfo
54+
.cmake_build

.idea/cmake.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/rp2040.xml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/rp2350.xml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/rt1060.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/rt1064.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/sam21.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/sam51.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.rst

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,7 @@ TinyUSB Project
1515
.. figure:: docs/assets/logo.svg
1616
:alt: TinyUSB
1717

18-
TinyUSB is an open-source cross-platform USB Host/Device stack for
19-
embedded system, designed to be memory-safe with no dynamic allocation
20-
and thread-safe with all interrupt events are deferred then handled in
21-
the non-ISR task function. Check out the online `documentation <https://docs.tinyusb.org/>`__ for more details.
18+
TinyUSB is an open-source cross-platform USB Host/Device stack for embedded system, designed to be memory-safe with no dynamic allocation and thread-safe with all interrupt events are deferred then handled in the non-ISR task function. Check out the online `documentation <https://docs.tinyusb.org/>`__ for more details.
2219

2320
.. figure:: docs/assets/stack.svg
2421
:width: 500px
@@ -32,7 +29,7 @@ the non-ISR task function. Check out the online `documentation <https://docs.tin
3229
├── hw
3330
│ ├── bsp # Supported boards source files
3431
│ └── mcu # Low level mcu core & peripheral drivers
35-
├── lib # Sources from 3rd party such as freeRTOS, fatfs ...
32+
├── lib # Sources from 3rd party such as FreeRTOS, FatFs ...
3633
├── src # All sources files for TinyUSB stack itself.
3734
├── test # Tests: unit test, fuzzing, hardware test
3835
└── tools # Files used internally
@@ -43,7 +40,7 @@ Getting started
4340

4441
See the `online documentation <https://docs.tinyusb.org>`_ for information about using TinyUSB and how it is implemented.
4542

46-
Check out `Getting Started`_ guide for adding TinyUSB to your project or building the examples. If you are new to TinyUSB, we recommend starting with the `cdc_msc` example. There is a handful of `Supported Boards`_ that should work out of the box.
43+
Check out `Getting Started`_ guide for adding TinyUSB to your project or building the examples. If you are new to TinyUSB, we recommend starting with the ``cdc_msc`` example. There is a handful of `Supported Boards`_ that should work out of the box.
4744

4845
We use `GitHub Discussions <https://github.com/hathach/tinyusb/discussions>`_ as our forum. It is a great place to ask questions and advice from the community or to discuss your TinyUSB-based projects.
4946

@@ -69,7 +66,7 @@ Supports multiple device configurations by dynamically changing USB descriptors,
6966
- Vendor-specific class support with generic In & Out endpoints. Can be used with MS OS 2.0 compatible descriptor to load winUSB driver without INF file.
7067
- `WebUSB <https://github.com/WICG/webusb>`__ with vendor-specific class
7168

72-
If you have a special requirement, `usbd_app_driver_get_cb()` can be used to write your own class driver without modifying the stack. Here is how the RPi team added their reset interface `raspberrypi/pico-sdk#197 <https://github.com/raspberrypi/pico-sdk/pull/197>`_
69+
If you have a special requirement, ``usbd_app_driver_get_cb()`` can be used to write your own class driver without modifying the stack. Here is how the RPi team added their reset interface `raspberrypi/pico-sdk#197 <https://github.com/raspberrypi/pico-sdk/pull/197>`_
7370

7471
Host Stack
7572
==========
@@ -80,7 +77,7 @@ Host Stack
8077
- Vendor serial over USB: FTDI, CP210x, CH34x
8178
- Hub with multiple-level support
8279

83-
Similar to the Device Stack, if you have a special requirement, `usbh_app_driver_get_cb()` can be used to write your own class driver without modifying the stack.
80+
Similar to the Device Stack, if you have a special requirement, ``usbh_app_driver_get_cb()`` can be used to write your own class driver without modifying the stack.
8481

8582
Power Delivery Stack
8683
====================

docs/contributing/code_of_conduct.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

docs/contributing/code_of_conduct.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.. include:: ../../CODE_OF_CONDUCT.rst

0 commit comments

Comments
 (0)