Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

WIP: Raspberry Pi Pico 2 RP2350 #13305

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from
Draft

Conversation

casaroli
Copy link
Contributor

@casaroli casaroli commented Sep 5, 2024

Summary

This is a very early stage port to RP23XX.

We still have many stuff to fix:

  • drivers:
    • timerisr - using sysclock -- need to switch to TICK
    • UART
    • led/gpio/button
    • usbdev serial -- somewhat
    • uniqueid
    • PSRAM
    • ADC
    • Flash boot
    • I2C
    • usbmsc
    • usb composite
    • AON timer (RTC)
    • watchdog
    • I2S
    • SPI
    • spidev
    • pio
    • SMP
    • MTD
  • boards
    • Raspberry Pi Pico 2
    • Pimoroni tiny2350
    • Pimonori Pico 2 Plus
  • chore
    • register definition generate / reformat
    • format all source files

Impact

New potentially very popular boards supported in NuttX.

Testing

Manual testing with the boards on hand.

These files were copied from a config of pico-sdk 2.0.0.

They provide struct address mapped access to peripherals, along
with register definitions. It also provides some compiler helpers
that are partially used by the port.
README
======

This directory contains the port of NuttX to the Raspberry Pi Pico.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This directory contains the port of NuttX to the Raspberry Pi Pico.
This directory contains the port of NuttX to the Raspberry Pi Pico 2.

$ cd nuttx
$ make distclean
$ ./tools/configure.sh raspberrypi-pico-2:nsh
$ make V=1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
$ make V=1
$ make -j

@@ -0,0 +1,137 @@
===============================
Raspberry Pi Pico
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Raspberry Pi Pico
Raspberry Pi Pico 2

@PetervdPerk-NXP
Copy link
Contributor

I see this PR is pulling in the complete RPI Pico SDK.
But that kinda goes against the The Inviolable Principles of NuttX
Please check how it's done for the rp2040 https://github.com/apache/nuttx/tree/master/arch/arm/src/rp2040 that doesn't use the Pico SDK.

@casaroli
Copy link
Contributor Author

casaroli commented Sep 9, 2024

I see this PR is pulling in the complete RPI Pico SDK.

But that kinda goes against the The Inviolable Principles of NuttX

Please check how it's done for the rp2040 https://github.com/apache/nuttx/tree/master/arch/arm/src/rp2040 that doesn't use the Pico SDK.

This is not the complete RPi pico sdk. Just the register descriptors (mostly).

The code will be adapted, rewritten and reformatted to match NuttX standards.

I am currently investigating how/if I can generate the register definitions and structs from the SVD automatically to make things easier.

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

Successfully merging this pull request may close these issues.

3 participants