Exclusive Access to PSRAM on RP2350

Open
#398 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
28/100
Issue type
Documentation
Clarity
Needs clarification
Activity status
Stale
Tech stack
c, rust
Domain
embedded-iot

Research direction

Start with the RP2350 datasheet sections covering exclusive load/store access to PSRAM, then compare the implications for Rust AtomicU32 and C11 _Atomic values as described in the issue. Done means confirming or correcting the understanding and identifying the guidance needed to prevent unsafe atomic use in PSRAM.

Written by the indexing model from the issue text.

Description

rp2350

Based on our reading of the RP2350 datasheet, we believe that any Exclusive Load/Stores to the PSRAM region will always fail (thus any code with an Exclusive Load/Store loop, e.g. to do a CAS operation, will either loop indefinitely or raise a fault).

Is our understanding correct? If so, creating a Rust AtomicU32 value (or similar) in PSRAM is going to end badly and we need to try and stop people doing that. Perhasps the same applies to a C11 _Atomic value.

Dominant language
No language data
Stars
35
Forks
4
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from raspberrypi/pico-feedback

All issues in raspberrypi/pico-feedback

Similar issues

More Embedded & IoT issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.