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.

@coderkalyan
Copy link

coderkalyan commented Nov 8, 2024

@casaroli Hi, I'm interested in helping work on this port. I'm going to clone your work and start hacking on it locally but would love to collaborate/coordinate if you are open.

@PeterBee97
Copy link
Contributor

PeterBee97 commented Nov 12, 2024

@coderkalyan Hi, i'm working on the RP2350 porting based on this PR and is 90% complete, which should be done by this week. I'll notify you in the new PR and you're welcome to review and make comments :)

@PeterBee97 PeterBee97 mentioned this pull request Nov 17, 2024
24 tasks
@PeterBee97
Copy link
Contributor

PeterBee97 commented Nov 17, 2024

Hi all, I'm continuing this PR's work in #14831. Let's give this new berry a NuttX welcome! :)

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.

5 participants