602 Commits

Author SHA1 Message Date
Caleb Jamison
e359b24121 remove debug print 2024-09-12 11:50:36 -04:00
Caleb Jamison
823a82adb7 Fixup formatting to work with log 2024-09-12 11:43:15 -04:00
Caleb Jamison
eeda57a424 rp2350 pio pin fixes
Disable pad isolation on any used pin.
Use GPIOBASE and offset pin bases if all pins are > 16, panic if some
pins are < 16 and some are > 31
2024-09-12 11:37:17 -04:00
Caleb Jamison
3d6a270f30
rp: Fix indexing for pins >31 on rp235xb (#3330)
* Fix indexing for pins >31 on rp235xb

* fixup knowing that 1<<7 is 128 not 64
2024-09-12 01:44:11 +02:00
Caleb Jamison
e75903138a Fix commented out code 2024-09-04 13:42:03 -04:00
Caleb Jamison
0434798439 Import otp from rp-hal, helper fns for chipid and randid
Again, credit to @thejpster for doing the hard part and figuring out the
otp.
2024-08-29 21:08:25 -04:00
Caleb Jamison
372270a9b9 rp235x flash support.
The 2350 doesn't have a boot2 like the 2040, but it does have the
concept of a xip setup function that could be customized. By default the
bootrom searches for the attached flash chip and provides an xip setup
func at the base of the bootram. That bootram is not executable, so it
still needs to be copied to ram like boot2 would be.

Currently does not use inline assembly.

Also switch to picotool, as elf2uf2 has not been patched to support the
2350.
2024-08-29 10:47:03 -04:00
Caleb Jamison
0a33edc997 Import rom_data for the rp235x, don't use intrinsics on rp235x
Many thanks to @thejpster for his work on the rom_data!
Working around boot2 is currently a bit hacky for the rp235x, that will
improve in upcoming rp235x flash pr.
2024-08-26 09:43:08 -04:00
Ugljesa Jovanovic
8c1024b2a5
Set up timer0 tick when initializing clocks 2024-08-24 12:19:12 +02:00
Dario Nieuwenhuis
eab3a57263 rp: use the rp-binary-info crate for binary info. 2024-08-17 22:12:39 +02:00
Jonathan 'theJPster' Pallant
ccf8ce7c7e Note where some embassy-rs files come from.
In a similar fashion to other source files taken from rp-rs.
2024-08-16 17:48:22 +02:00
Caleb Jamison
0b58ef8f1b Fix commented out code 2024-08-13 00:54:41 -04:00
Caleb Jamison
13cb431472 Enable rp235x doc tests, fixup feature doc
The rp235x doc test requires an unfortunate workaround using a private
feature, "_test", in order compile.
2024-08-12 05:47:16 -04:00
Caleb Jamison
752fbc662a Fix docs, ci 2024-08-12 05:06:59 -04:00
Caleb Jamison
778241fd71 Fix CI, rename private feature, address comments from dirbaio. 2024-08-12 04:32:31 -04:00
Dario Nieuwenhuis
9dc4375f18 rp: update PAC, fix CI. 2024-08-12 03:25:41 -04:00
Caleb Jamison
9a863f07fe Handle pad isolation everywhere and in the same way. 2024-08-10 17:36:28 -04:00
Caleb Jamison
ffdc60d6fb Move #![cfg]s to lib.rs 2024-08-09 16:09:16 -04:00
Caleb Jamison
05cb1baf37 Fix ci/rustfmt 2024-08-09 15:54:30 -04:00
Caleb Jamison
e5d8d8b18e Switch to single pac 2024-08-09 12:31:29 -04:00
Caleb Jamison
6f03c40516 cargo fmt 2024-08-08 21:54:21 -04:00
Caleb Jamison
b185e02a42 Initial rp235x support
Examples have been run, but there is not yet a test suite.
2024-08-08 21:35:21 -04:00
Ulf Lilleengen
f2c29ba9d8
Merge pull request #3174 from JomerDev/add-count-to-read_to_break
RP2040: Add read_to_break_with_count
2024-08-02 13:50:32 +00:00
Dario Nieuwenhuis
2d678d6956 Update to Rust 1.80, make check-cfg unconditional. 2024-07-25 15:53:00 +02:00
Jomer.Dev
7c1ecae53f Add read_to_break_with_count 2024-07-19 16:01:20 +02:00
Dario Nieuwenhuis
5e625f274a
Merge pull request #3185 from MathiasKoch/embassy-rp/uart-split-ref
(embassy-rp): Add split_ref fn to uart, allowing a mutable reference split into RX & TX handles
2024-07-18 12:10:37 +00:00
taaki2311
255864f46c
Merge branch 'embassy-rs:main' into main 2024-07-17 17:07:01 -04:00
Tarun Singh
a716a3f006 Reduced define for 'unreachable!' to a single macro rule 2024-07-17 17:05:52 -04:00
Mathias
4c34132337 Correctly handle modifying LCR register after uart enable 2024-07-17 12:23:59 +02:00
Mathias
f733071908 Add split_ref fn to uart, allowing a mutable reference split into RX & TX handles. Also change order of RX and TX handles in split fn, to streamline with other HALs 2024-07-17 11:25:03 +02:00
Dario Nieuwenhuis
a0f8948c1c Update nightly, fix error with rp inline asm. 2024-07-16 16:40:54 +02:00
rafael
d8821dd7d7 rustfmt 2024-07-10 22:56:12 +02:00
rafael
68b3fbe348 implement read_ready method in BufferedUart 2024-07-10 22:54:48 +02:00
Krzysztof Królczyk
96cdf9c9e0
rp/i2c: add address flexibility and example
Previous i2c examples are using either blocking Embassy API
or e-h traits, this example uses Embassy pub API directly.

Signed-off-by: Krzysztof Królczyk <Krzysztof.Krolczyk@o2.pl>
2024-06-28 19:51:33 +02:00
Dario Nieuwenhuis
3ae2f140f9
Merge pull request #3119 from diondokter/rp-boot2-none
RP: Shut up missed warning boot2-none
2024-06-25 15:48:11 +00:00
Dion Dokter
5dbc531671 RP: Shut up missed warning boot2-none 2024-06-25 16:54:34 +02:00
Dario Nieuwenhuis
bce7c73a3a
Merge pull request #3118 from diondokter/rp-boot2-none
RP: add option to provide your own boot2
2024-06-25 12:58:56 +00:00
Dion Dokter
92343551aa RP: add option to provide your own boot2 2024-06-25 14:31:15 +02:00
Henrik Alsér
cfe8561550
Merge pull request #3044 from kalkyl/adc-multi
rp: Add multichannel ADC
2024-06-22 21:05:17 +00:00
kalkyl
e3891b09dc Add comment about internal api 2024-06-22 16:39:23 +02:00
Dario Nieuwenhuis
6a4ac5bd60 Add collapse_debuginfo to fmt.rs macros.
This makes location info in defmt logs point to the code calling the macro,
instead of always to fmt.rs as before. Fix works with nightlies
starting with today's, and stable 1.81+.
2024-06-17 01:38:57 +02:00
Dario Nieuwenhuis
7ad76f5f60 Use raw slices .len() method instead of unsafe hacks.
Stabilized in 1.79.
2024-06-13 20:41:08 +02:00
Mikkel
d08639f643
Add missing word "pin" in rp pwm documentation
It is confusing to read without. The corrected line reads like its 'b' pin counterpart (few lines below).
2024-06-12 14:56:21 +02:00
dvdsk
871fe3a549
Add Clone and Copy to Error types
None of them are `non-exaustative`, they are all small enough to be copy
(I estimate none are larger than 4 bytes).
2024-06-06 23:19:07 +02:00
kalkyl
bf36bec9bb rp: Add multichannel ADC 2024-06-05 09:42:08 +02:00
Nick
9031ce7fa7 rp: fix watchdog CTRL register getting overwritten 2024-05-29 06:30:41 +01:00
Dario Nieuwenhuis
d18a919ab9 rp: wait until read matches for PSM accesses. 2024-05-27 00:14:44 +02:00
Dario Nieuwenhuis
33bdc9e85f rp: fix spinlocks staying locked after reset.
Fixes #1736
2024-05-24 20:04:14 +02:00
Dario Nieuwenhuis
e55f31bdc6 rp/pwm: rename channel->slice in args, misc fix. 2024-05-21 23:41:45 +02:00
Ismet Handzic
24032d0853 Remove generics from embassy-rp 2024-05-21 23:35:06 +02:00