Commit Graph

115 Commits

Author SHA1 Message Date
Dan Halbert 68a2927385 MP_REGISTER_ROOT_POINTER for port-specific root pointers 2023-09-29 15:46:42 -04:00
Dan Halbert 1c388ab315 finish converting to MP_REGISTER_ROOT_POINTER() 2023-09-29 10:49:34 -04:00
Dan Halbert 4d175ab41a convert to MP_DEFINED_CONST_OBJ_TYPE() 2023-09-19 21:09:29 -04:00
Dan Halbert 2c0fa0f7dc initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -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
Dan Halbert 2ff8667e75 wip; remove long-lived functionality; remove PR#2614
Trinket M0 compile has no compilation errors, but has link errors to fix.
2023-08-08 20:41:17 -04:00
Dan Halbert 0d2c3c3f08 wip: continuing compilation fixes; mp_obj_alloc everywhere 2023-08-07 20:45:57 -04:00
Scott Shawcroft 5f082561b3
Unify some error strings 2023-07-20 11:20:32 -07:00
Dan Halbert 38f6fa27e3 fetch-port-submodules; fetch-all-submodules 2023-06-05 17:23:34 -04:00
Scott Shawcroft 051540f8da
Fix broadcom NAN 2023-05-01 11:38:13 -07:00
Scott Shawcroft 8104b824e0
Standardize CPU temp and voltage. Add autogen warning 2023-04-28 16:19:43 -07:00
Scott Shawcroft d5b747b305
Fix board inits 2023-04-21 13:23:01 -07:00
Scott Shawcroft 66edcf5d03
Add PicoDVI support
PicoDVI in CP support 640x480 and 800x480 on Feather DVI, Pico and
Pico W. 1 and 2 bit grayscale are full resolution. 8 and 16 bit
color are half resolution.

Memory layout is modified to give the top most 4k of ram to the
second core. Its MPU is used to prevent flash access after startup.

The port saved word is moved to a watchdog scratch register so that
it doesn't get overwritten by other things in RAM.

Right align status bar and scroll area. This normally gives a few
pixels of padding on the left hand side and improves the odds it is
readable in a case. Fixes #7562

Fixes c stack checking. The length was correct but the top was being
set to the current stack pointer instead of the correct top.
Fixes #7643

This makes Bitmap subscr raise IndexError instead of ValueError
when the index arguments are wrong.
2023-04-19 15:14:02 -07:00
Scott Shawcroft 097af804cd
Fix ticks
In #7497 port_background_task was renamed to port_background_tick
but the actual call site wasn't changed. This meant that it was
no longer called!

Rename more functions from task to tick to make it clearer which is
which.
2023-04-07 09:49:51 -07:00
Scott Shawcroft f832386cda
Merge remote-tracking branch 'adafruit/main' into banglejs2 2023-02-23 14:43:38 -08:00
RetiredWizard ea8dd95931 Update common-hal routines with new params 2023-02-22 23:04:41 -05:00
RetiredWizard 08ac95a2eb Added updated submodule back 2023-02-22 23:03:53 -05:00
RetiredWizard 7cfc689f72 Removed peripherals submodule 2023-02-22 22:59:55 -05:00
RetiredWizard c8dd0369a4 Added broadcom-peripherals back in 2023-02-22 20:12:39 -05:00
RetiredWizard 9cc27be0bf Removed broadcom-peripherals 2023-02-22 20:00:53 -05:00
RetiredWizard c73f008688 Make vcmailbox call change for AUX SPI instances 2023-02-22 11:58:13 -05:00
RetiredWizard 7c717a54f3 Switch to "unmeasured" core clock speed check 2023-02-21 22:10:36 -05:00
Scott Shawcroft de5f58a61d
Merge branch 'main' into banglejs2 2023-02-21 12:04:28 -08:00
Dan Halbert bbadc00599
Merge pull request #7577 from dhalbert/safemode-py
Implement safemode.py
2023-02-16 14:15:20 -05:00
Scott Shawcroft 931c7c1c51
Add Bangle.js 2, JDI memory displays and ACeP epd
This 2-in-1 PR started with the goal of support the Bangle.js 2
smartwatch with *no USB*.
* Adds "secure" DFU build support with a committed private key.
* Adds 3-bit color support with one dummy bit for the JDI memory display
* Allows nrf boards to have a board_background_task() run in RUN_BACKGROUND_TASK.
  This is needed because the Bangle.js 2 uses the watchdog to reset.
* Renamed port_background_task() to port_background_tick() to indicate it
  runs on tick, not RUN_BACKGROUND_TASK.
* Marks serial connected when the display terminal is inited. This means
  that safe mode messages show up on the display.

ACep, 7-color epaper displays also pack 3 bits in 4. So, I added that
support as well.
* Adds 3-bit ACeP color support for 7-color e-paper displays. (Not
  watch related but similar due to color depth.)
* Allows a refresh sequence instead of a single int command. The 7" ACeP
  display requires a data byte for refresh.
* Adds optional delay after resetting the display. The ACeP displays
  need this. (Probably to load LUTs from flash.)
* Adds a cleaning phase for ACeP displays before the real refresh.

For both:
* Add dither support to Palette.
* Palette no longer converts colors when set. Instead, it caches
  converted colors at each index.
* ColorConverter now caches the last converted color. It should make
  conversions faster for repeated colors (not dithering.)
2023-02-15 15:03:40 -08:00
RetiredWizard 6ebb911a4d pre-commit formatting fix 2023-02-13 21:06:47 -05:00
RetiredWizard 09ccf2988d Replace bitwise or with boolean or 2023-02-13 21:04:11 -05:00
RetiredWizard 39d3d97ea4 Remove unnecessary memory barriers 2023-02-13 19:46:35 -05:00
Dan Halbert d8231f1588 Implement safemode.py 2023-02-13 18:26:38 -05:00
RetiredWizard dcb6955fa5 use boolean and symbols 2023-02-13 14:58:37 -05:00
RetiredWizard 791aefd388
Update ports/broadcom/common-hal/neopixel_write/__init__.c
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2023-02-13 14:44:54 -05:00
RetiredWizard 575f177dd0
Update ports/broadcom/common-hal/neopixel_write/__init__.c
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2023-02-13 14:44:46 -05:00
RetiredWizard 1679790481 Tweaked to run without delays on zero w 2023-02-11 20:21:25 -05:00
RetiredWizard 359a27e166 Pre-commit is stubborn 2023-02-11 12:19:21 -05:00
RetiredWizard 2104708c58 missed a trailing space 2023-02-11 12:17:55 -05:00
RetiredWizard f29cd4a836 Pre-commit fix trim trailing whitespace 2023-02-11 12:13:34 -05:00
RetiredWizard a462a316bd Fix pre-commit formatting 2023-02-11 12:10:03 -05:00
RetiredWizard a2bbca1428 Broadcom Raspberry Pi Zero2W neopixel timing fix
These changes result in working neopixel functionality. I've tested on
both the zero2w and the pi4b (The 4b didn't exhibit the original issue)
and the boards now behave properly with 1 to 30 pixels and the board hanging
no longer occurs.

Remove mod that didn't help during testing
Restoring back to original structure
Replace 2 microsecond delay w/deterministic loop
Remove unneded check for empty queue

Put transmit delay outside loop so Queue is used

Make sure last transmission is complete
2023-02-11 11:38:11 -05:00
RetiredWizard ecde85734c Remove a couple unneeded includes. 2023-01-23 15:17:24 -05:00
RetiredWizard fb4def2824 remove CIRCUITPY_RTC = 1 from mpconfigport.mk
Full build includes the RTC bits so don't need to enable it
in ports/broadcom/mpconfigport.mk
2023-01-23 14:52:20 -05:00
RetiredWizard 43b1d2618e
Remove erroneous left over comment 2023-01-23 14:19:27 -05:00
RetiredWizard 4f830f1bbb Fix parameter name and remove unnecessary function 2023-01-21 22:57:52 -05:00
RetiredWizard 3361ec390d Broadcom port: Add 'fake' RTC support
The Broadcom chips apparently don't have an RTC, so this PR uses the
timer to add dummy RTC responses and allow resonable results
from time.localtime() as well as setting the time and date while
the board is powered.
2023-01-21 22:19:10 -05:00
Scott Shawcroft ad2d190507
Merge pull request #7247 from tannewt/picow_web_workflow
Enable* web workflow for Pico W
2022-11-28 14:19:42 -08:00
Scott Shawcroft c3a96a63c0
Enable* web workflow for Pico W
* Except for circuitpython.local which depends on MDNS and will be
done in a follow up PR.

Progress on #7214
2022-11-21 16:24:05 -08:00
MicroDev c3c1717813
refactor common port specific Makefile code 2022-11-18 23:00:28 +05:30
MicroDev e2a3597263
add awesome new make error message
Copied from initial implementation on atmel-samd

Co-authored-by: Rose Hooper <rhooper@toybox.ca>
Co-authored-by: Jeff Epler <jepler@gmail.com>
2022-11-18 11:27:23 +05:30
Jeff Epler 907c5d387f
Tweak black_bindings
Originally, black_bindings found each contiguous "//|" block and sent
it to black independently. This was slower than it needed to be.

Instead, swap the comment prefix: when running black, take off
"//|" prefixes and put "##|" prefixes on all un-prefixed lines.
Then, after black is run, do the opposite operation

This more than doubles the overall speed of "pre-commit run --all",
from 3m20s to 55s CPU time on my local machine (32.5s to under 10s
"elapsed" time)

It also causes a small amount of churn in the bindings, because
black now sees enough context to know whether one 'def' follows another
or ends the 'def's in a 'class'. In the latter case, it adds an extra
newline, which becomes a "//|" line.

I'm less sure why a trailing comma was omitted before down in
rp2pio/StateMachine.c but let's roll with it.
2022-09-30 11:18:13 -05:00