Skip to content

Commit d692d77

Browse files
authored
Merge branch 'master' into src/portable/synopsys/dwc2/fix_sof_int_handling
2 parents 4c510c1 + f505cc2 commit d692d77

File tree

1,479 files changed

+81161
-24583
lines changed

Some content is hidden

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

1,479 files changed

+81161
-24583
lines changed

.codespell/exclude-file.txt

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

.codespellrc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
[codespell]
33
# In the event of a false positive, add the problematic word, in all lowercase, to 'ignore-words.txt' (one word per line).
44
# Or copy & paste the whole problematic line to 'exclude-file.txt'
5-
ignore-words = .codespell/ignore-words.txt
6-
exclude-file = .codespell/exclude-file.txt
5+
ignore-words = tools/codespell/ignore-words.txt
6+
exclude-file = tools/codespell/exclude-file.txt
77
check-filenames =
88
check-hidden =
99
count =
10-
skip = .cproject,./.git,./hw/mcu,./lib,./examples/*/*/_build,./examples/*/*/ses,./examples/*/*/ozone,./hw/mcu,./test/unit-test/vendor,./tests_obsolete,./tools/uf2
10+
skip = *.rb,.cproject,.git,./lib,./examples/*/*/_build,./examples/*/*/ses,./examples/*/*/ozone,./hw/mcu,./tests_obsolete

.gitattributes

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Set the default behavior, in case people don't have core.autocrlf set.
22
* text=auto
33

4-
*.c text
5-
*.cpp text
4+
*.c text
5+
*.cpp text
66
*.h text
7-
*.icf text
7+
*.icf text
88
*.js text
99
*.json text
1010
*.ld text

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,21 +54,21 @@ body:
5454
Exact steps in chronological order, details should be specific e.g if you use a command/script to test with, please post it as well.
5555
1. Go to '...'
5656
2. Click on '....'
57-
3. See error
57+
3. See error
5858
validations:
5959
required: true
6060

6161
- type: textarea
6262
attributes:
63-
label: Debug Log as txt file
63+
label: Debug Log as txt file (LOG/CFG_TUSB_DEBUG=2)
6464
placeholder: |
6565
Attach your debug log txt file here, where the issue occurred, best with comments to explain the actual events.
66-
66+
6767
Note1: Please DO NOT paste your lengthy log contents here since it hurts the readability.
68-
Note2: To enable logging, add `LOG=3` to to the make command if building with stock examples or set `CFG_TUSB_DEBUG=3` in your tusb_config.h.
68+
Note2: To enable logging, add `LOG=2` to to the make command if building with stock examples or set `CFG_TUSB_DEBUG=2` in your tusb_config.h.
6969
More information can be found at [example's readme](https://github.com/hathach/tinyusb/blob/master/docs/getting_started.md)
7070
validations:
71-
required: false
71+
required: true
7272

7373
- type: textarea
7474
attributes:

.github/workflows/build_aarch64.yml

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
name: Build AArch64
22

33
on:
4+
workflow_dispatch:
45
push:
56
paths:
67
- 'src/**'
@@ -35,21 +36,12 @@ jobs:
3536
- 'broadcom_64bit'
3637
steps:
3738
- name: Setup Python
38-
uses: actions/setup-python@v4
39+
uses: actions/setup-python@v5
3940
with:
4041
python-version: '3.x'
4142

4243
- name: Checkout TinyUSB
43-
uses: actions/checkout@v3
44-
45-
- name: Checkout common submodules in lib
46-
run: git submodule update --init lib/FreeRTOS-Kernel lib/lwip lib/sct_neopixel
47-
48-
- name: Checkout hathach/linkermap
49-
uses: actions/checkout@v3
50-
with:
51-
repository: hathach/linkermap
52-
path: linkermap
44+
uses: actions/checkout@v4
5345

5446
- name: Set Toolchain URL
5547
run: echo >> $GITHUB_ENV TOOLCHAIN_URL=https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz
@@ -72,15 +64,7 @@ jobs:
7264
run: echo >> $GITHUB_PATH `echo ~/cache/toolchain/*/bin`
7365

7466
- name: Get Dependencies
75-
run: python3 tools/get_dependencies.py ${{ matrix.family }}
67+
run: python3 tools/get_deps.py ${{ matrix.family }}
7668

7769
- name: Build
78-
run: python3 tools/build_family.py ${{ matrix.family }}
79-
80-
- name: Linker Map
81-
run: |
82-
pip install linkermap/
83-
for ex in `ls -d examples/device/*/`; do \
84-
find ${ex} -name *.map -print -quit | \
85-
xargs -I % sh -c 'echo "::group::%"; linkermap -v %; echo "::endgroup::"'; \
86-
done
70+
run: python3 tools/build_make.py ${{ matrix.family }}

.github/workflows/build_arm.yml

Lines changed: 15 additions & 241 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
name: Build ARM
22

33
on:
4+
workflow_dispatch:
45
push:
56
paths:
67
- 'src/**'
78
- 'examples/**'
89
- 'lib/**'
910
- 'hw/**'
11+
- 'tools/get_deps.py'
1012
- '.github/workflows/build_arm.yml'
1113
pull_request:
1214
branches: [ master ]
@@ -15,6 +17,7 @@ on:
1517
- 'examples/**'
1618
- 'lib/**'
1719
- 'hw/**'
20+
- 'tools/get_deps.py'
1821
- '.github/workflows/build_arm.yml'
1922

2023
concurrency:
@@ -33,32 +36,17 @@ jobs:
3336
family:
3437
# Alphabetical order
3538
- 'broadcom_32bit'
36-
- 'imxrt'
37-
- 'lpc15'
38-
- 'lpc18'
39-
- 'lpc54'
40-
- 'lpc55'
41-
- 'mm32'
42-
- 'msp432e4'
43-
- 'nrf'
44-
- 'rp2040'
45-
- 'samd11'
46-
- 'samd21'
47-
- 'samd51'
48-
- 'saml2x'
49-
- 'stm32f0'
50-
- 'stm32f1'
51-
- 'stm32f4'
52-
- 'stm32f7'
53-
- 'stm32g4'
54-
- 'stm32h7'
55-
- 'stm32l4'
56-
- 'stm32wb'
57-
- 'tm4c123'
58-
- 'xmc4000'
39+
- 'kinetis_k32l2'
40+
- 'lpc11 lpc13 lpc15'
41+
- 'lpc51'
42+
- 'mm32 msp432e4'
43+
- 'samd11 same5x saml2x'
44+
- 'stm32f2 stm32f3'
45+
- 'stm32l0 stm32wb'
46+
- 'tm4c123 xmc4000'
5947
steps:
6048
- name: Setup Python
61-
uses: actions/setup-python@v4
49+
uses: actions/setup-python@v5
6250
with:
6351
python-version: '3.x'
6452

@@ -68,224 +56,10 @@ jobs:
6856
release: '11.2-2022.02'
6957

7058
- name: Checkout TinyUSB
71-
uses: actions/checkout@v3
72-
73-
- name: Checkout common submodules in lib
74-
run: git submodule update --init lib/FreeRTOS-Kernel lib/lwip lib/sct_neopixel
75-
76-
- name: Checkout hathach/linkermap
77-
uses: actions/checkout@v3
78-
with:
79-
repository: hathach/linkermap
80-
path: linkermap
81-
82-
- name: Checkout pico-sdk for rp2040
83-
if: matrix.family == 'rp2040'
84-
run: |
85-
git clone --depth 1 -b develop https://github.com/raspberrypi/pico-sdk ~/pico-sdk
86-
echo >> $GITHUB_ENV PICO_SDK_PATH=~/pico-sdk
59+
uses: actions/checkout@v4
8760

8861
- name: Get Dependencies
89-
run: python3 tools/get_dependencies.py ${{ matrix.family }}
62+
run: python3 tools/get_deps.py ${{ matrix.family }}
9063

9164
- name: Build
92-
run: python3 tools/build_family.py ${{ matrix.family }}
93-
94-
- name: Linker Map
95-
run: |
96-
pip install linkermap/
97-
# find -quit to only print linkermap of 1 board per example
98-
for ex in `ls -d examples/*/*/`
99-
do
100-
find ${ex} -name *.map -print -quit | xargs -I % sh -c 'echo "::group::%"; linkermap -v %; echo "::endgroup::"'
101-
done
102-
103-
# Upload binaries for rp2040 hardware test with self-hosted
104-
- name: Prepare rp2040 Artifacts
105-
if: matrix.family == 'rp2040' && github.repository_owner == 'hathach'
106-
run: find examples/ -name "*.elf" -exec mv {} . \;
107-
108-
- name: Upload rp2040 Artifacts
109-
if: matrix.family == 'rp2040' && github.repository_owner == 'hathach'
110-
uses: actions/upload-artifact@v3
111-
with:
112-
name: ${{ matrix.family }}
113-
path: |
114-
*.elf
115-
116-
# Upload binaries for stm32l412nucleo hardware test with self-hosted
117-
- name: Prepare stm32l412nucleo Artifacts
118-
if: matrix.family == 'stm32l4'
119-
run: find examples/ -path "*stm32l412nucleo/*.elf" -exec mv {} . \;
120-
121-
- name: Upload stm32l412nucleo Artifacts
122-
if: matrix.family == 'stm32l4'
123-
uses: actions/upload-artifact@v3
124-
with:
125-
name: stm32l412nucleo
126-
path: |
127-
*.elf
128-
129-
# ---------------------------------------
130-
# Build all no-family (orphaned) boards
131-
# disable this workflow since it is often failed randomly
132-
# ---------------------------------------
133-
build-board:
134-
runs-on: ubuntu-latest
135-
if: false
136-
strategy:
137-
fail-fast: false
138-
matrix:
139-
example:
140-
# Alphabetical order, a group of 4
141-
- 'device/audio_test device/board_test device/cdc_dual_ports device/cdc_msc'
142-
- 'device/cdc_msc_freertos device/dfu_runtime device/hid_composite device/hid_composite_freertos'
143-
- 'device/hid_generic_inout device/hid_multiple_interface device/midi_test device/msc_dual_lun'
144-
- 'device/net_lwip_webserver'
145-
- 'device/uac2_headset device/usbtmc device/webusb_serial host/cdc_msc_hid'
146-
147-
steps:
148-
- name: Setup Python
149-
uses: actions/setup-python@v4
150-
with:
151-
python-version: '3.x'
152-
153-
- name: Install ARM GCC
154-
uses: carlosperate/arm-none-eabi-gcc-action@v1
155-
with:
156-
release: '11.2-2022.02'
157-
158-
- name: Checkout TinyUSB
159-
uses: actions/checkout@v3
160-
161-
- name: Checkout common submodules in lib
162-
run: git submodule update --init lib/FreeRTOS-Kernel lib/lwip
163-
164-
- name: Build
165-
run: python3 tools/build_board.py ${{ matrix.example }}
166-
167-
# ---------------------------------------
168-
# Hardware in the loop (HIL)
169-
# Current self-hosted instance is running on an RPI4 with
170-
# - pico + pico-probe connected via USB
171-
# - pico-probe is /dev/ttyACM0
172-
# ---------------------------------------
173-
hw-rp2040-test:
174-
# run only with hathach's commit due to limited resource on RPI4
175-
if: github.repository_owner == 'hathach'
176-
needs: build-arm
177-
runs-on: [self-hosted, Linux, ARM64, rp2040]
178-
179-
steps:
180-
- name: Clean workspace
181-
run: |
182-
echo "Cleaning up previous run"
183-
rm -rf "${{ github.workspace }}"
184-
mkdir -p "${{ github.workspace }}"
185-
186-
- name: Download rp2040 Artifacts
187-
uses: actions/download-artifact@v3
188-
with:
189-
name: rp2040
190-
191-
- name: Create flash.sh
192-
run: |
193-
#echo > flash.sh 'cmdout=$(openocd -f "interface/picoprobe.cfg" -f "target/rp2040.cfg" -c "program $1 reset exit")'
194-
echo > flash.sh 'pyocd flash -t rp2040 $1'
195-
echo >> flash.sh 'if (( $? )) ; then echo $cmdout ; fi'
196-
chmod +x flash.sh
197-
198-
- name: Test cdc_dual_ports
199-
run: |
200-
./flash.sh cdc_dual_ports.elf
201-
while (! ([ -e /dev/ttyACM1 ] && [ -e /dev/ttyACM2 ])) && [ $SECONDS -le 10 ]; do :; done
202-
test -e /dev/ttyACM1 && echo "ttyACM1 exists"
203-
test -e /dev/ttyACM2 && echo "ttyACM2 exists"
204-
205-
- name: Test cdc_msc
206-
run: |
207-
./flash.sh cdc_msc.elf
208-
readme='/media/pi/TinyUSB MSC/README.TXT'
209-
while (! ([ -e /dev/ttyACM1 ] && [ -f "$readme" ])) && [ $SECONDS -le 10 ]; do :; done
210-
test -e /dev/ttyACM1 && echo "ttyACM1 exists"
211-
test -f "$readme" && echo "$readme exists"
212-
cat "$readme"
213-
214-
- name: Test dfu
215-
run: |
216-
./flash.sh dfu.elf
217-
while (! (dfu-util -l | grep "Found DFU")) && [ $SECONDS -le 10 ]; do :; done
218-
dfu-util -d cafe -a 0 -U dfu0
219-
dfu-util -d cafe -a 1 -U dfu1
220-
grep "TinyUSB DFU! - Partition 0" dfu0
221-
grep "TinyUSB DFU! - Partition 1" dfu1
222-
223-
- name: Test dfu_runtime
224-
run: |
225-
./flash.sh dfu_runtime.elf
226-
while (! (dfu-util -l | grep "Found Runtime")) && [ $SECONDS -le 10 ]; do :; done
227-
228-
# ---------------------------------------
229-
# Hardware in the loop (HIL)
230-
# Current self-hosted instance is running on an EPYC 7232 server hosted by HiFiPhile user
231-
# - STM32L412 Nucleo with on-board jlink as ttyACM0
232-
# ---------------------------------------
233-
hw-stm32l412nucleo-test:
234-
needs: build-arm
235-
runs-on: [self-hosted, Linux, X64, hifiphile]
236-
237-
steps:
238-
- name: Clean workspace
239-
run: |
240-
echo "Cleaning up previous run"
241-
rm -rf "${{ github.workspace }}"
242-
mkdir -p "${{ github.workspace }}"
243-
244-
- name: Download stm32l4 Artifacts
245-
uses: actions/download-artifact@v3
246-
with:
247-
name: stm32l412nucleo
248-
249-
- name: Create flash.sh
250-
run: |
251-
echo > flash.sh 'echo halt > flash.jlink'
252-
echo >> flash.sh 'echo r >> flash.jlink'
253-
echo >> flash.sh 'echo loadfile $1 >> flash.jlink'
254-
echo >> flash.sh 'echo r >> flash.jlink'
255-
echo >> flash.sh 'echo go >> flash.jlink'
256-
echo >> flash.sh 'echo exit >> flash.jlink'
257-
echo >> flash.sh 'cmdout=$(JLinkExe -device stm32l412kb -if swd -JTAGConf -1,-1 -speed auto -NoGui 1 -ExitOnError 1 -CommandFile flash.jlink)'
258-
echo >> flash.sh 'if (( $? )) ; then echo $cmdout ; fi'
259-
chmod +x flash.sh
260-
261-
- name: Test cdc_dual_ports
262-
run: |
263-
./flash.sh cdc_dual_ports.elf
264-
while (! ([ -e /dev/ttyACM1 ] && [ -e /dev/ttyACM2 ])) && [ $SECONDS -le 10 ]; do :; done
265-
test -e /dev/ttyACM1 && echo "ttyACM1 exists"
266-
test -e /dev/ttyACM2 && echo "ttyACM2 exists"
267-
268-
# Debian does not auto mount usb drive. skip this test for now
269-
- name: Test cdc_msc
270-
if: false
271-
run: |
272-
./flash.sh cdc_msc.elf
273-
readme='/media/pi/TinyUSB MSC/README.TXT'
274-
while (! ([ -e /dev/ttyACM1 ] && [ -f "$readme" ])) && [ $SECONDS -le 10 ]; do :; done
275-
test -e /dev/ttyACM1 && echo "ttyACM1 exists"
276-
test -f "$readme" && echo "$readme exists"
277-
cat "$readme"
278-
279-
- name: Test dfu
280-
run: |
281-
./flash.sh dfu.elf
282-
while (! (dfu-util -l | grep "Found DFU")) && [ $SECONDS -le 10 ]; do :; done
283-
dfu-util -d cafe -a 0 -U dfu0
284-
dfu-util -d cafe -a 1 -U dfu1
285-
grep "TinyUSB DFU! - Partition 0" dfu0
286-
grep "TinyUSB DFU! - Partition 1" dfu1
287-
288-
- name: Test dfu_runtime
289-
run: |
290-
./flash.sh dfu_runtime.elf
291-
while (! (dfu-util -l | grep "Found Runtime")) && [ $SECONDS -le 10 ]; do :; done
65+
run: python3 tools/build_make.py ${{ matrix.family }}

0 commit comments

Comments
 (0)