Skip to content

Add FreeRTOS support for RP2350 #2406

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 6 commits into from
Sep 16, 2024
Merged

Add FreeRTOS support for RP2350 #2406

merged 6 commits into from
Sep 16, 2024

Conversation

earlephilhower
Copy link
Owner

Pull in Raspberry Pi's custom RP2350 ARM and RISC-V ports for FreeRTOS.

Basic tests run, but stress mutex test is failing in unique and interesting ways.

Pull in Raspberry Pi's custom RP2350 ARM and RISC-V ports for FreeRTOS.

Basic tests run, but stress mutex test is failing in unique and interesting
ways.
@earlephilhower earlephilhower changed the title WIP - Add FreeRTOS support for RP2350 Add FreeRTOS support for RP2350 Sep 16, 2024
@earlephilhower earlephilhower merged commit a0b3876 into master Sep 16, 2024
20 checks passed
@earlephilhower earlephilhower deleted the freertosrp2350 branch September 16, 2024 23:56
@DatanoiseTV
Copy link
Contributor

DatanoiseTV commented Sep 19, 2024

I am tying to use the arduino-audio-tools by @pschatzmann and getting compile errors (FreeRTOS) on the Pico 2 with latest master version of the arduino-pico.

In file included from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/QueueRTOS.h:9,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioLibs/Concurrency.h:7,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioTools.h:68,
                 from /private/var/folders/_k/8kvr5q5s46x8qrxrrn_lgkx40000gn/T/.arduinoIDE-unsaved2024819-3717-xdzxku.c073r/streams-generator-pd-audiokit/streams-generator-pd-audiokit.ino:7:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/FreeRTOS.h:2:2: error: #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
    2 | #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
      |  ^~~~~
In file included from /Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/queue.h:1,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/QueueRTOS.h:10:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/queue.h:34:6: error: #error "include FreeRTOS.h" must appear in source files before "include queue.h"
   34 |     #error "include FreeRTOS.h" must appear in source files before "include queue.h"
      |      ^~~~~
In file included from /Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/queue.h:37:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/task.h:34:6: error: #error "include FreeRTOS.h must appear in source files before include task.h"
   34 |     #error "include FreeRTOS.h must appear in source files before include task.h"
      |      ^~~~~
In file included from /Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/task.h:37:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/list.h:62:6: error: #error "FreeRTOS.h must be included before list.h"
   62 |     #error "FreeRTOS.h must be included before list.h"
      |      ^~~~~
In file included from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/BufferRTOS.h:11,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioLibs/Concurrency.h:8:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/FreeRTOS.h:2:2: error: #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
    2 | #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
      |  ^~~~~
In file included from /Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/stream_buffer.h:1,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/BufferRTOS.h:12:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/stream_buffer.h:56:6: error: #error "include FreeRTOS.h must appear in source files before include stream_buffer.h"
   56 |     #error "include FreeRTOS.h must appear in source files before include stream_buffer.h"
      |      ^~~~~
In file included from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/LockGuard.h:13,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/SynchronizedBuffers.h:18,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioLibs/Concurrency.h:9:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/FreeRTOS.h:2:2: error: #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
    2 | #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
      |  ^~~~~
In file included from /Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/semphr.h:1,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/LockGuard.h:14:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/../lib/FreeRTOS-Kernel/include/semphr.h:33:6: error: #error "include FreeRTOS.h" must appear in source files before "include semphr.h"
   33 |     #error "include FreeRTOS.h" must appear in source files before "include semphr.h"
      |      ^~~~~
In file included from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/Concurrency/Task.h:7,
                 from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioLibs/Concurrency.h:10:
/Users/syso/Documents/Arduino/hardware/pico/rp2040/libraries/FreeRTOS/src/FreeRTOS.h:2:2: error: #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
    2 | #error Sorry, FreeRTOS is not yet supported on the RP2350 in this core.
      |  ^~~~~
In file included from /Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioLibs/AudioBoardStream.h:4,
                 from /private/var/folders/_k/8kvr5q5s46x8qrxrrn_lgkx40000gn/T/.arduinoIDE-unsaved2024819-3717-xdzxku.c073r/streams-generator-pd-audiokit/streams-generator-pd-audiokit.ino:8:
/Users/syso/Documents/Arduino/libraries/arduino-audio-tools/src/AudioLibs/I2SCodecStream.h:2:10: fatal error: AudioBoard.h: No such file or directory
    2 | #include "AudioBoard.h"  // install audio-driver library
      |          ^~~~~~~~~~~~~~
compilation terminated.
Alternatives for AudioBoard.h: []
ResolveLibrary(AudioBoard.h)
  -> candidates: []
exit status 1

@earlephilhower
Copy link
Owner Author

Use git master and make sure you're updated...

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants