summaryrefslogtreecommitdiff
path: root/ports/raspberrypi/mpconfigport.mk
AgeCommit message (Collapse)Author
2021-03-31raspberypi: Allow mpconfigboard to override additional itemsJeff Epler
This allows more options to be overridden to 0 in an mpconfigboard.mk. Improved: * FRAMEBUFFERIO, FULL_BUILD, BITOPS, PWMIO, RGBMATRIX, OTARYIO, PULSEIO, WATCHDOG Still problematic (pull requests welcome): * RP2PIO & NEOPIXEL_WRITE, possibly only if a status neopixel is defined * BITBANGIO, possibly only if BUSIO is enabled * RTC Incidentally, with RP2PIO & NEOPIXEL_WRITE, BITBANGIO, and RTC re-enabled I get ``` 323956 bytes used, 720524 bytes free in flash firmware space out of 1044480 bytes (1020.0kB). 12072 bytes used, 250072 bytes free in ram for stack and heap out of 262144 bytes (256.0kB). ``` Closes #4515
2021-03-18Redo RP2040 flash settingsScott Shawcroft
This switches stage2 to C and uses Jinja to change the C code based on flash settings from https://github.com/adafruit/nvm.toml. It produces the fastest settings for the given set of external flashes. Flash size is no longer hard coded so switching flashes with similar capabilities but different sizes should *just work*. This PR also places "ITCM" code in RAM to save the XIP cache for code execution. Further optimization is possible. A blink code.py still requires a number of flash fetches every blink. Fixes #4041
2021-03-12Merge pull request #4262 from DavePutz/issue_4111Scott Shawcroft
Issue 4111 - Implement pulseio(pulsein) for RP2040
2021-03-10raspberrypi: Enable mp3 playbackJeff Epler
The rp2040 is _very_ marginal for mp3 playback, and currently sometimes triggers a bug that gives garbled audio output. However, it does work for some limited situations.
2021-03-08Merge branch 'main' into issue_4111DavePutz
2021-03-05raspberrypi: move landmine Makefile commentsJeff Epler
2021-03-05WIPrp2040: Implement IncrementalEncoderJeff Epler
Any two consecutive pins can be used for an IncrementalEncoder Testing performed: Put a synthesized (few hundred counts per second) quadrature signal into GP2/3 and read the encoder out. Performed filesystem operations at the same time to stress test it. The reasons for not using common_hal_rp2pio_statemachine_readinto are commented on.
2021-03-04Merge branch 'main' into issue_4111DavePutz
2021-03-03Update mpconfigport.mkDavePutz
2021-03-02Update mpconfigport.mkDavePutz
2021-03-02Update mpconfigport.mkDavePutz
2021-03-02Update mpconfigport.mk to get builds workingDavePutz
2021-03-02Merge branch 'main' into rp2040_countioMark
2021-03-02Merge pull request #4186 from jepler/update-protomatter-rp2Jeff Epler
Enable protomatter on RP2040 builds
2021-03-02Merge pull request #4177 from microDev1/nvm-rpScott Shawcroft
RP2040: Support for NVM
2021-02-26Merge remote-tracking branch 'origin/main' into update-protomatter-rp2Jeff Epler
2021-02-24pulseio (pulsein) for RP2040root
2021-02-23Merge branch 'main' into rp2040_countioMark
2021-02-23Adding countio to rp2040gamblor21
2021-02-23Implement audiobusio and enhance PIO for itScott Shawcroft
This adds I2SOut and PDMIn support via PIO. StateMachines can now: * read and read while writing * transfer in 1, 2 or 4 byte increments * init pins based on expected defaults automatically * be stopped and restarted * rxfifo can be cleared and rxstalls detected (good for tracking when the reading code isn't keeping up) Fixes #4162
2021-02-19merge from upstream; re-alphabetizeDan Halbert
2021-02-18bitops: rename from _bit_transpose, describe the algorithmJeff Epler
2021-02-18core: add bit_transpose functionJeff Epler
.. this version can only handle exactly 8 bits "across". The restriction may be relaxed in a future revision.
2021-02-15Merge remote-tracking branch 'adafruit/main' into secondary-cdcDan Halbert
2021-02-12Enable protomatter on RP2040 buildsJeff Epler
Also found a race condition between timer_disable and redraw, which would happen if I debugger-paused inside common_hal_rgbmatrix_timer_disable or put a delay or print inside it. That's what pausing inside reconstruct fixes. So that the "right timer" can be chosen, `timer_allocate` now gets the `self` pointer. It's guaranteed at this point that the pin information is accurate, so you can e.g., find a PWM unit related to the pins themselves. This required touching each port to add the parameter even though it's unused everywhere but raspberrypi.
2021-02-12Merge branch 'main' into nvm-rpmicroDev
2021-02-11merge from upstream; complicated webusb mergeDan Halbert
2021-02-11nvm implementation for rp2040microDev
2021-02-09Add PWM based audio playbackScott Shawcroft
See https://learn.adafruit.com/circuitpython-essentials/circuitpython-audio-out to get started. Fixes #4037
2021-02-05Update to the very latest SDK w/GP15 restoreScott Shawcroft
Also adds unique id support Fixes #4039 and hopefully #4107
2021-02-04usb descriptors all set; rework of enabling for USB devicesDan Halbert
2021-02-02rtc implementation for rp2040microDev
2021-01-28watchdog implementation for rp2040microDev
2021-01-21move longint choice to mpconfigport.mkDan Halbert
2021-01-20Add initial RP2040 supportScott Shawcroft
The RP2040 is new microcontroller from Raspberry Pi that features two Cortex M0s and eight PIO state machines that are good for crunching lots of data. It has 264k RAM and a built in UF2 bootloader too. Datasheet: https://pico.raspberrypi.org/files/rp2040_datasheet.pdf