Commit Graph

10665 Commits

Author SHA1 Message Date
Jeff Epler 5e26862b2c
Allow use of CONFIG_SPIRAM_USE_CAPS_ALLOC
.. and switch makerfabs tft7 over to it as a test.

We have our existing way of "reserving" PSRAM for esp-idf (we actually
control it all but add back the "reserved" part). However, this does
not work with off the shelf esp_lcd, which only will allocate a
framebuffer in PSRAM if CONFIG_SPIRAM_USE_CAPS_ALLOC (or CONFIG_SPIRAM_USE_ALLOC)
is defined, not if CONFIG_SPIRAM_USE_MEMMAP is.

This new way is possibly compatible with more esp-idf code, but it complicates
CircuitPython's initial startup since nothing until port_heap_init is
permitted to use the CP heap or supervisor allocator. In practice this
seems to be OK today.

Right now this doesn't change the setting across all boards with PSRAM and so
it does not revert esp-idf to its prior state. Instead, what I'm thinking is
that we can do it during or just after the IDF5 update when sdkconfig files
will be getting an overhaul anyway.
2023-09-05 12:43:22 -05:00
Jeff Epler b7d1147f67
Bump the stack size of the uart task
With DEBUG build and a consle UART, this would occur early during startup on makerfabs tft7:
```
I (0) cpu_start: Starting scheduler on APP CPU.
I (10) uart: queue free spaces: 20

***ERROR*** A stack overflow in task uart_event_task has been detected.


Backtrace: 0x403786f2:0x3fce9f40 0x403820a9:0x3fce9f60 0x403850da:0x3fce9f80 0x40383a7d:0x3fcea000 0x40382158:0x3fcea030 0x4038214e:0xa5a5a5a5 |<-CORRUPTED
```

Decoded backtrace was not enlightening:
```
0x403786f2: panic_abort at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/esp_system/panic.c:408
0x403820a9: esp_system_abort at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/esp_system/esp_system.c:137
0x403850da: vApplicationStackOverflowHook at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/port/xtensa/port.c:407
0x40383a7d: vTaskSwitchContext at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/tasks.c:3505
0x40382158: _frxt_dispatch at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/port/xtensa/portasm.S:436
0x4038214e: _frxt_int_exit at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/port/xtensa/portasm.S:231
0x00000000: ?? ??:0
```

Adding an additional 512 bytes of stack allowed CircuitPython to start
successfully.
2023-09-05 12:07:09 -05:00
Jeff Epler 6784e0e720
Ensure debug is defined earlier 2023-09-05 12:06:57 -05:00
Melissa LeBlanc-Williams 7fe6cf5ed6 Set D13 to input with Pulldown 2023-09-01 15:03:08 -07:00
Melissa LeBlanc-Williams 8d6f9d06df merge branch main 2023-09-01 14:42:53 -07:00
Bob Abeles 1648a3db1e Fix IO register stores of multiple words 2023-09-01 11:23:30 -07:00
Jeff Epler 84aadf3a64
Update TFT experiment for rev b 2023-09-01 12:58:00 -05:00
Bob Abeles ab59e36613 Correct problems found by CI 2023-09-01 08:34:53 -07:00
Bob Abeles 66b3eccaf6 8334: RP2040 lacks raw memory map access 2023-08-31 20:25:20 -07:00
Jeff Epler 5f12e0f9b8
Revert mistaken change 2023-08-31 14:53:31 -05:00
Jeff Epler 554f529fdf
Per review notes, make esp_lcd and esp32-camera unconditional 2023-08-31 14:52:54 -05:00
Jeff Epler 80a1d1a20a
Add support for a non-displayed left portion of screen 2023-08-31 14:52:26 -05:00
Melissa LeBlanc-Williams 06ccd41294
Remove frozen libs from Funhouse 2023-08-31 13:15:51 -05:00
Tirtharaj Sinha da3dfd7b5a added new board - esp32 s3 pico 2023-08-31 04:15:25 +05:30
Jeff Epler 1ef4e3c738
Add Adafruit TFT Experiment (rev A)
There will be a revision but get the basics in for now.

This successfully displays on a TL040HDS20-B1502A screen with:
```
import board
from framebufferio import FramebufferDisplay
from dotclockframebuffer import DotClockFramebuffer
from displayio import release_displays

tft_pins = board.TFT
tft_timings = {
    "frequency": 6_500_000,
    "width": 720,
    "height": 720,
    "hsync_pulse_width": 20,
    "hsync_front_porch": 40,
    "hsync_back_porch": 40,
    "vsync_pulse_width": 10,
    "vsync_front_porch": 40,
    "vsync_back_porch": 40,
    "hsync_idle_low": False,
    "vsync_idle_low": False,
    "de_idle_high": False,
    "pclk_active_high": False,
    "pclk_idle_high": False,
}

release_displays()
fb = DotClockFramebuffer(**tft_pins, **tft_timings)
disp = FramebufferDisplay(fb)
```
2023-08-30 15:05:07 -05:00
Jeff Epler 7dbf9a9b56
fix vprintf_adapter build error 2023-08-30 11:34:01 -05:00
Jeff Epler 9dcc0b5056
fix those pesky pid/vid duplicates 2023-08-30 10:58:52 -05:00
Jeff Epler fb15c7ca51
Fix timings table & remove redundant comment 2023-08-30 10:50:16 -05:00
Jeff Epler 9e0993af5b
Add espressif esp32s3 lcd devkit
This is not working/tested. The display requires an initialization sequence,
and its SPI bus is on the other side of an I2C GPIO expander making things
more difficult.
2023-08-30 10:31:47 -05:00
Jeff Epler 494aee62b3
Add makerfabs 7" 800x480 TFT
this is working, though it has to be down-clocked to 6.5MHz to prevent
display glitching
2023-08-30 10:30:54 -05:00
Jeff Epler ed9cacf41d
Add DotClockFramebuffer 2023-08-30 10:30:15 -05:00
Scott Shawcroft 337b800ceb
Merge pull request #7151 from fonix232/feature/waveshare_rp2040_plus_support
feat: Add support for Waveshare RP2040-Plus
2023-08-29 13:00:37 -07:00
Scott Shawcroft 66bd679a64
Merge pull request #8323 from RetiredWizard/dvbaseW
Pimoroni PICO DV Base w/Pico W (network disabled)
2023-08-29 12:59:11 -07:00
Scott Shawcroft 9daccc08c5
Forbidden pins are now correctly "in use" on ESP
This removes duplicate code to make debug UART pins in use via
never reset. It is done through forbidden pins automatically now.

Fixes #8288
2023-08-28 15:55:14 -07:00
Scott Shawcroft 3605d891de
Merge pull request #8338 from pypewpew/async-samd21
Allow enabling async on samd21
2023-08-28 12:56:38 -07:00
Scott Shawcroft b20e211d29
Merge pull request #8293 from fonix232/port/esp32/m5paper
Add support for M5Stack M5Paper
2023-08-28 12:53:37 -07:00
Scott Shawcroft 2eb62f8238
Merge pull request #8305 from cleverca22/move-stack
raise kernel load addr and slip stack under kernel on both 32bit and 64bit
2023-08-28 12:52:38 -07:00
Jeremy Littler 9bdb576351
Add files via upload 2023-08-28 10:10:04 -04:00
Jeremy Littler c1144e66a8
Add files via upload 2023-08-28 10:09:06 -04:00
Jeff Epler b0967cb1a4
Use QSTR_GLOBAL_REQUIREMENTS to give explicit dependency for qstr generation
I investigated and found that this seems to be the best way to specify
a file that must be generated before "qstr processing" can occur.

Closes #8337
2023-08-27 16:16:40 -05:00
Radomir Dopieralski 34cb5f6dc0
Merge branch 'main' into async-samd21 2023-08-27 19:33:27 +02:00
Radomir Dopieralski 55fbbdcb52 Allow enabling async on samd21
It was just disabled, possibly because of size considerations, but it's
useful to be able to enable it explicitly for selected boards.

This requires some of the settings to use ?= instead of =, and fixing
a bug in the traceback module, where the chain variable is unused if
exception chaining is not enabled.
2023-08-27 19:28:44 +02:00
RetiredWizard 9eb61ef667 Enable WiFi, leave DV enable to usercode 2023-08-26 11:00:37 -04:00
Scott Shawcroft c395e1f9f7
Merge pull request #8332 from pypewpew/ugame22
Add new board uGame22
2023-08-25 13:22:16 -07:00
Michael Bishop 8d25faf30a raise kernel load addr and slip stack under kernel on both 32bit and 64bit 2023-08-25 15:56:40 -03:00
Radomir Dopieralski b9b04fcefa Add new board uGame22
Information about the board:
https://hackaday.io/project/186921-game-22

Hardware design repository:
https://github.com/python-ugame/ugame-22
2023-08-25 19:26:30 +02:00
Scott Shawcroft 233cf7fc6d
Merge pull request #8326 from bill88t/picow-stop-ap
Pico W wifi code improvements.
2023-08-25 09:49:04 -07:00
Scott Shawcroft ab70f8eace
Merge remote-tracking branch 'adafruit/main' into i2s_mclk 2023-08-24 15:07:14 -07:00
Bill Sideris 2cc05f7ac8
Picow-ap wifi improvements 2023-08-23 20:04:51 +03:00
RetiredWizard d333ae9f5d Local pre-commit run changes 2023-08-22 23:46:43 -04:00
RetiredWizard 6eccdd9e7d Pimoroni PICO DV Base w/Pico W (network disabled) 2023-08-22 23:10:07 -04:00
Dan Halbert e08ad22ef6
Merge pull request #8317 from jepler/merge-82x
Merge 8.2.x into main
2023-08-22 17:28:30 -04:00
Dan Halbert 88c22d5052 remove last uses of 'u' prefix 2023-08-22 12:57:47 -04:00
Jeff Epler 24b7a4cde6
Merge remote-tracking branch 'origin/8.2.x' into merge-82x 2023-08-22 09:53:35 -05:00
Jeff Epler b589dc2589
Merge pull request #8091 from bill88t/update-picow
Update pico-sdk to 1.5.1
2023-08-22 09:51:20 -05:00
Jeff Epler 283889bb57
Merge pull request #8309 from dhalbert/fix-pimoroni-dvi-base
fix framebuffer size for pimoroni dvi base
2023-08-22 09:47:25 -05:00
Jozsef Kiraly 4f7e66df08 fix: pre-commit 2023-08-22 15:17:40 +01:00
Jozsef Kiraly bb1b827f55 fix: Split 16M and 4M variants 2023-08-22 15:06:37 +01:00
Jeff Epler c029d6a165
Merge remote-tracking branch 'origin/8.2.x' into merge-82x 2023-08-22 08:49:16 -05:00
Jozsef Kiraly 9a140dc3ee Update ports/raspberrypi/boards/waveshare_rp2040_plus/mpconfigboard.mk
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2023-08-22 14:15:59 +01:00
Jozsef Kiraly 127f09b28c Update ports/raspberrypi/boards/waveshare_rp2040_plus/mpconfigboard.mk 2023-08-22 14:15:59 +01:00
Jozsef Kiraly 648ec1c0ed feat: Add support for Waveshare RP2040-Plus 2023-08-22 14:15:59 +01:00
Jozsef Kiraly 2ec145ba6c fix: Minor fixes for M5Paper 2023-08-22 11:44:52 +01:00
Jeff Epler d62bf6631b
Use a different way to force building sdkconfig early
the `Makefile:...` version broke the shared bindings matrix generation, as
it would fail if esp-idf wasn't in the environment (and we wouldn't want
it to do that much work anyway)
2023-08-21 20:48:42 -05:00
Dan Halbert eba1f9d4fe fix framebuffer size for pimoroni dvi base 2023-08-21 19:36:28 -04:00
Jeff Epler f9e99bd3c3
Fix picow build 2023-08-20 11:30:36 -05:00
Jeff Epler c122ca18fd
restore missing board.c file 2023-08-20 11:20:57 -05:00
Jeff Epler bb8e0ae76e
turn off some modules to save flash space 2023-08-20 11:18:46 -05:00
Jeff Epler d94ff9d1cf
turn off audiopwmio to save flash space 2023-08-20 11:14:41 -05:00
Jeff Epler 44c26d9d41
Ensure sdkconfig.h is built early, by making Makefile depend on it
Here's why this helps fix the build error:
If this file does not exist or is out of date, then it is generated
and then the Makefile is re-read.

I don't know why this worked before but stopped now; it must have
to do with the rework of header generation in the MP build system.
2023-08-20 11:08:43 -05:00
Jeff Epler e74ef8b960
ringbuf_alloc no longer has a long-lived argument 2023-08-20 10:15:56 -05:00
Jeff Epler a3a9c7a098
fix typo 2023-08-20 10:15:55 -05:00
Jeff Epler 6598fc0c42
pre-commit modifies these additional files on my system (WHY?) 2023-08-19 13:45:06 -05:00
Dan Halbert 10a022db87 consolidate and shorten some error messages 2023-08-19 12:39:54 -04:00
Dan Halbert e43c2fb7ba pre-commit uncrustify 2023-08-18 22:53:14 -04:00
Dan Halbert d9ed21ea07 pre-commit 2023-08-18 13:30:45 -04:00
Dan Halbert 6851faacaa Merge remote-tracking branch 'adafruit/main' into merge-micropython-v1.19.1 2023-08-18 13:29:39 -04:00
Dan Halbert bfccb77ec1 asyncio test fixes and asyncio library updates 2023-08-18 13:16:16 -04:00
Jozsef Kiraly 37352cf7ec fix: Apply pre-commit patch 2023-08-18 11:22:26 +01:00
Scott Shawcroft f93022b142
Two tweaks to mclk 2023-08-17 14:28:33 -07:00
Jozsef Kiraly 37d807509f port: Add M5Stack M5Paper board target 2023-08-17 21:22:26 +01:00
Scott Shawcroft 8c5c73df38
Add I2S MCLK support to iMX RT 2023-08-17 11:39:14 -07:00
Jeff Epler d0f313c1e8
Merge pull request #8270 from makermelissa/better-alphablend
Better alphablend features
2023-08-16 17:43:17 -05:00
Kattni Rembor 8b147ac748 Add SD_CS pin to Metro ESP32-S3 board definition. 2023-08-15 18:30:59 -04:00
Kattni Rembor 3012c275e7 Add SD_CS pin. 2023-08-15 18:09:42 -04:00
Jeff Epler 843fdbb250
Add a missing MP_PROTO_IMPLEMENT 2023-08-15 13:25:25 -05:00
Jeff Epler 94b89b7e57
enable exception chaining so we can run the test 2023-08-15 11:54:48 -05:00
Dan Halbert 3d48e87e60 jepler: fix 18 tests (redo commit to be correct) 2023-08-14 18:34:32 -04:00
Dan Halbert 545d434239 Revert "jepler: fix 18 tests"
This reverts commit 5ad35004cb.
2023-08-14 18:21:50 -04:00
Dan Halbert 5ad35004cb jepler: fix 18 tests 2023-08-14 17:53:38 -04:00
Dan Halbert b73f05fe64 turn off viper tests; thanks jepler 2023-08-14 16:43:07 -04:00
Scott Shawcroft 7567f71709
Merge pull request #8280 from dglaude/8.2.x-backport-metro-esp32s3
8.2.x backport metro esp32s3
2023-08-14 11:50:41 -07:00
Dan Halbert c823b9b2f6 force mpversion.h build early in silabs 2023-08-14 11:28:13 -04:00
Dan Halbert 8cf5b6e707 fixes to unix port support; thanks @jepler 2023-08-14 09:51:52 -04:00
Dan Halbert d582407b06 pre-commit fixes 2023-08-14 00:59:22 -04:00
Dan Halbert 2171e67c1b merge latest adafruit/main 2023-08-13 19:43:54 -04:00
Dan Halbert 27c7807693 silabs build needs work; other builds are working 2023-08-13 19:05:16 -04:00
Melissa LeBlanc-Williams 9d69ddc583 Add D0 and D1 2023-08-14 00:20:47 +02:00
Melissa LeBlanc-Williams 4c62db2d05 Add D pins 2023-08-14 00:20:24 +02:00
Melissa LeBlanc-Williams 8dd52430b6 Change to octal ram 2023-08-14 00:18:50 +02:00
Melissa LeBlanc-Williams 1b3993a29e Added initial Adafruit Metro ESP32-S3 2023-08-14 00:17:24 +02:00
Vladimír Smitka acd8896094 Fix RGB/BGR color order 2023-08-13 17:42:23 +02:00
Vladimir Smitka 2819c88207 Formatting 2023-08-13 17:41:16 +02:00
Vladimir Smitka d652c8d25c Add PicoPad support 2023-08-13 17:39:59 +02:00
Dan Halbert 10b94796c0 wip; fix more m_malloc and gc_alloc 2023-08-11 00:30:34 -04:00
Dan Halbert fe0e2f13bc wip; fix qstr processing 2023-08-10 20:06:32 -04:00
Scott Shawcroft 472e6bca4d
Merge pull request #8223 from jepler/sm-mayeexec
rp2: Add StateMachine(may_exec=, offset=)
2023-08-09 10:44:02 -07:00
Melissa LeBlanc-Williams db23a9c9fe Disable floppyio for feather m4 express + update docstring 2023-08-09 09:15:17 -07:00
Melissa LeBlanc-Williams 7a4edfaa9f Override D13 pin 2023-08-09 08:19:34 -07:00
Melissa LeBlanc-Williams ab638d4bf2 Merge branch 'main' of https://github.com/adafruit/circuitpython into arduino-nano-esp32s3 2023-08-09 08:08:03 -07:00