Skip to content

Commit a152539

Browse files
authored
Merge pull request #956 from rp-rs/not-raspberry-silicon
Avoid using "Raspberry Silicon", and prefer RP235x over RP2350
2 parents c54eaee + 05e6c78 commit a152539

File tree

12 files changed

+42
-38
lines changed

12 files changed

+42
-38
lines changed

README.md

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<p align="center">
1111
Rust support for the Raspberry Pi family of microcontrollers
1212
<br />
13-
<strong>Explore the API docs for <a href="https://docs.rs/rp2040-hal">RP2040</a> or <a href="https://docs.rs/rp2350-hal">RP2350</a></strong>
13+
<strong>Explore the API docs for <a href="https://docs.rs/rp2040-hal">RP2040</a> or <a href="https://docs.rs/rp235x-hal">RP235x</a></strong>
1414
<br />
1515
<br />
1616
<a href="https://github.com/rp-rs/rp-hal-boards/tree/main/boards/rp-pico/examples">View Demos</a>
@@ -44,14 +44,14 @@ So, you want to program your new Raspberry Pi microcontroller, using the
4444
Rust programming language. You've come to the right place!
4545

4646
This repository is `rp-hal` - a collection of high-level drivers for the
47-
Raspberry Pi RP2040 and RP2350 microcontrollers.
47+
Raspberry Pi RP2040 and RP235x microcontrollers.
4848

4949
If you want to write an application for the RP2040, check out our [RP2040
5050
Project Template](https://github.com/rp-rs/rp2040-project-template). If you
51-
want to use the RP2350 family, check out the [RP2350 Project
51+
want to use the RP235x family, check out the [RP235x Project
5252
Template](https://github.com/rp-rs/rp235x-project-template) instead.
5353

54-
If you want to write code that uses the Raspberry Silicon PIO State Machines,
54+
If you want to write code that uses the Raspberry Pi PIO State Machines,
5555
check out [pio-rs](https://github.com/rp-rs/pio-rs). You can even compile PIO
5656
programs at run-time, on the MCU itself!
5757

@@ -89,7 +89,7 @@ binary][picotool-releases] for your system.
8989
## Packages
9090

9191
There is one _Hardware Abstraction Layer_ (or HAL) crate for the RP2040, and
92-
another for the RP2350. We also have a common HAL, and various examples.
92+
another for the RP235x. We also have a common HAL, and various examples.
9393

9494
### [rp2040-hal] - The HAL for the [Raspberry Pi RP2040]
9595

@@ -120,15 +120,15 @@ RP2040. We have examples for the following (plus many more):
120120
* Using PIO
121121
* Sleeping and waiting on the RTC
122122

123-
### [rp235x-hal] - The HAL for the [Raspberry Pi RP2350]
123+
### [rp235x-hal] - The HAL for the [Raspberry Pi RP235x]
124124

125125
You should include this crate in your project if you want to write a driver or
126-
library that runs on the [Raspberry Pi RP2350], or if you are writing a Board
126+
library that runs on the [Raspberry Pi RP235x], or if you are writing a Board
127127
Support Package (see later on). We call it the 'rp235x-hal' because it
128-
supports the RP2350A, the RP2350B and variants which include on-board Flash
128+
supports the RP2350A, the RP2350B, and variants which include on-board Flash
129129
such as the RP2354A and RP2354B.
130130

131-
The crate provides high-level drivers for the RP2350's internal peripherals,
131+
The crate provides high-level drivers for the RP235x's internal peripherals,
132132
such as the SPI Controller and the I²C Controller. It doesn't know anything
133133
about how your particular board is wired up (such as what each IO pin of the
134134
RP2350 is connected to).
@@ -138,7 +138,10 @@ There are examples in this crate to show how to use various peripherals
138138
particular board.
139139

140140
This HAL fully supports the RP2350A, and has partial support for the extra
141-
pins on the RP2350B.
141+
pins on the RP2350B. The versions with on-board flash (like the RP2354A)
142+
are programmatically exactly the same as the ones without flash - the flash
143+
is in-package, but electrically connected just like an external QSPI flash
144+
chip - and so no additional support is required.
142145

143146
### [rp235x-hal-examples] - Examples for using [rp235x-hal]
144147

@@ -181,17 +184,17 @@ because there were so many of them.
181184
[rp-binary-info]: https://github.com/rp-rs/rp-hal/tree/main/rp-binary-info
182185
[rp-hal-common]: https://github.com/rp-rs/rp-hal/tree/main/rp-hal-common
183186
[Raspberry Pi RP2040]: https://www.raspberrypi.org/products/rp2040/
184-
[Raspberry Pi RP2350]: https://www.raspberrypi.org/products/rp2350/
187+
[Raspberry Pi RP235x]: https://www.raspberrypi.org/products/rp2350/
185188
[BSPs]: https://github.com/rp-rs/rp-hal-boards/
186189

187190
<!-- PROGRAMMING -->
188191
## Programming
189192

190-
Rust generates standard Arm ELF files, which you can load onto your Raspberry Pi
191-
Silicon device with your favourite Arm flashing/debugging tool. In addition, the
192-
RP2040 contains a ROM bootloader which appears as a Mass Storage Device over USB
193-
that accepts UF2 format images. You can use picotool to flash your device over
194-
USB, or convert the Arm ELF file to a UF2 format image.
193+
Rust generates standard Arm ELF files, which you can load onto your Raspberry
194+
Pi microcontroller device with your favourite Arm flashing/debugging tool. In
195+
addition, the RP2040 contains a ROM bootloader which appears as a Mass Storage
196+
Device over USB that accepts UF2 format images. You can use picotool to flash
197+
your device over USB, or convert the Arm ELF file to a UF2 format image.
195198

196199
The RP2040 contains two Cortex-M0+ processors, which execute Thumb-2 encoded
197200
Armv6-M instructions. There are no operating-specific features in the binaries
@@ -212,7 +215,7 @@ Each core in the RP2350 can optionally be swapped out at run-time for a RISC-V
212215
Hazard3 processor core. Any Rust code for the RP2350 in RISC-V mode should be
213216
compiled with the target *`riscv32imac-unknown-none-elf`*.
214217

215-
More details can be found in the [RP2040 Project Template] and the [RP2350
218+
More details can be found in the [RP2040 Project Template] and the [RP235x
216219
Project Template].
217220

218221
### Linker flags
@@ -231,7 +234,7 @@ More detailed information on how the linker flags work can be found in
231234
[the `cortex-m-rt` docs](https://docs.rs/cortex-m-rt/latest/cortex_m_rt/).
232235

233236
In most cases, it should be sufficient to use the example files from the
234-
[RP2040 Project Template] or [RP2350 Project Template].
237+
[RP2040 Project Template] or [RP235x Project Template].
235238

236239
### Loading over USB with picotool
237240

@@ -322,7 +325,7 @@ connected to the RP2040.
322325
cargo run --release --example pwm_blink
323326
```
324327
[RP2040 Project Template]: https://github.com/rp-rs/rp2040-project-template
325-
[RP2350 Project Template]: https://github.com/rp-rs/rp235x-project-template
328+
[RP235x Project Template]: https://github.com/rp-rs/rp235x-project-template
326329

327330
<!-- ROADMAP -->
328331
## Roadmap

on-target-tests/.cargo/config.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Cargo Configuration for the https://github.com/rp-rs/rp-hal.git repository.
33
#
44
# You might want to make a similar file in your own repository if you are
5-
# writing programs for Raspberry Silicon microcontrollers.
5+
# writing programs for Raspberry Pi microcontrollers.
66
#
77

88
[build]

on-target-tests/memory_rp235x.x

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MEMORY {
22
/*
3-
* The RP2350 has either external or internal flash.
3+
* The RP235x has either external or internal flash.
44
*
55
* 2 MiB is a safe default here, although a Pico 2 has 4 MiB.
66
*/

rp-hal-common/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//! Common HAL code
22
//!
3-
//! This library contains types and functions which are shared between the
4-
//! RP2040 HAL and the RP235x HAL.
3+
//! This library contains types and functions which are shared between
4+
//! rp2040-hal and the rp235x-hal.
55
//!
66
//! You shouldn't include anything here which requires either the `cortex-m`
77
//! crate, or a PAC.

rp-hal-common/src/uart/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//! Shared code and types for Raspberry Pi Silicon UARTS
1+
//! Shared code and types for Raspberry Pi UARTS
22
33
pub mod common_configs;
44
mod utils;

rp2040-hal-examples/.cargo/config.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Cargo Configuration for the https://github.com/rp-rs/rp-hal.git repository.
33
#
44
# You might want to make a similar file in your own repository if you are
5-
# writing programs for Raspberry Silicon microcontrollers.
5+
# writing programs for Raspberry Pi microcontrollers.
66
#
77

88
[build]

rp2040-hal-examples/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<h3 align="center">rp-hal</h3>
99

1010
<p align="center">
11-
Rust Examples for the Raspberry Silicon RP2040 Microcontroller
11+
Rust Examples for the Raspberry Pi RP2040 Microcontroller
1212
<br />
1313
<a href="https://docs.rs/rp2040-hal"><strong>Explore the API docs »</strong></a>
1414
<br />
@@ -41,7 +41,7 @@
4141
## Introduction
4242

4343
The `rp2040-hal` package is a library crate of high-level Rust drivers for the
44-
Raspberry Silicon RP2040 microcontroller. This folder contains a collection of
44+
Raspberry Pi RP2040 microcontroller. This folder contains a collection of
4545
non-board specific example programs for you to study.
4646

4747
We also provide a series of [*Board Support Package* (BSP) crates][BSPs], which

rp2040-hal/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<h3 align="center">rp-hal</h3>
99

1010
<p align="center">
11-
High-level Rust drivers for the Raspberry Silicon RP2040 Microcontroller
11+
High-level Rust drivers for the Raspberry Pi RP2040 Microcontroller
1212
<br />
1313
<a href="https://docs.rs/rp2040-hal"><strong>Explore the API docs »</strong></a>
1414
<br />
@@ -41,7 +41,7 @@
4141
## Introduction
4242

4343
This is the `rp2040-hal` package - a library crate of high-level Rust drivers
44-
for the Raspberry Silicon RP2040 microcontroller, along with a collection of
44+
for the Raspberry Pi RP2040 microcontroller, along with a collection of
4545
non-board specific example programs for you to study. You should use this crate
4646
in your application if you want to write code for the RP2040 microcontroller.
4747
The *HAL* in the name standards for *Hardware Abstraction Layer*, and comes from

rp235x-hal-examples/.cargo/config.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Cargo Configuration for the https://github.com/rp-rs/rp-hal.git repository.
33
#
44
# You might want to make a similar file in your own repository if you are
5-
# writing programs for Raspberry Silicon microcontrollers.
5+
# writing programs for Raspberry Pi microcontrollers.
66
#
77

88
# Add aliases for building and running for the ARM and RISC-V targets.

rp235x-hal-examples/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<h3 align="center">rp-hal</h3>
99

1010
<p align="center">
11-
Rust Examples for the Raspberry Silicon RP235x family Microcontrollers
11+
Rust Examples for the Raspberry Pi RP235x family Microcontrollers
1212
<br />
1313
<a href="https://github.com/rp-rs/rp-hal/tree/main/rp235x-hal-examples"><strong>View the examples »</strong></a>
1414
<br />
@@ -41,7 +41,7 @@
4141
## Introduction
4242

4343
The `rp235x-hal` package is a library crate of high-level Rust drivers for the
44-
Raspberry Silicon RP235x family of microcontrollers. This folder contains a
44+
Raspberry Pi RP235x family of microcontrollers. This folder contains a
4545
collection of non-board specific example programs for you to study.
4646

4747
We also provide a series of [*Board Support Package* (BSP) crates][BSPs], which

0 commit comments

Comments
 (0)