summaryrefslogtreecommitdiff
path: root/supervisor/shared/safe_mode.c
AgeCommit message (Collapse)Author
2020-05-27supervisor: add a new WATCHDOG_RESET safe mode reasonSean Cross
This mode will be used if the board is reset due to the watchdog expiring. Signed-off-by: Sean Cross <sean@xobs.io>
2020-01-17Refine iMX RT memory layout and add three boardsScott Shawcroft
Introduces a way to place CircuitPython code and data into tightly coupled memory (TCM) which is accessible by the CPU in a single cycle. It also frees up room in the corresponding cache for intermittent data. Loading from external flash is slow! The data cache is also now enabled. Adds support for the iMX RT 1021 chip. Adds three new boards: * iMX RT 1020 EVK * iMX RT 1060 EVK * Teensy 4.0 Related to #2492, #2472 and #2477. Fixes #2475.
2019-12-12make translate and remove backslash-r'sDan Halbert
2019-12-12Fix flash write error handling; clean up safe mode message printingDan Halbert
2019-11-18Supervisor: move most of systick to the supervisorJeff Epler
This code is shared by most parts, except where not all the #ifdefs inside the tick function were present in all ports. This mostly would have broken gamepad tick support on non-samd ports. The "ms32" and "ms64" variants of the tick functions are introduced because there is no 64-bit atomic read. Disabling interrupts avoids a low probability bug where milliseconds could be off by ~49.5 days once every ~49.5 days (2^32 ms). Avoiding disabling interrupts when only the low 32 bits are needed is a minor optimization. Testing performed: on metro m4 express, USB still works and time.monotonic_ns() still counts up
2019-05-09Rework safe mode so we can trigger on all resetsScott Shawcroft
2019-05-08Update `on_next_reset` for new safe mode.Scott Shawcroft
Fixes #1831
2019-04-08Reorganize board busses into shared-bindings and shared-module.Scott Shawcroft
2019-04-05Fix crash when getting board.SPI outside the VMScott Shawcroft
If one of the default pins was already in use it would crash. The internal API has been refined to allow us to get the value without causing an init of the singleton. Fixes #1753
2019-03-12Enter safe mode when an allocation is attempted on an uninitialized heap.Scott Shawcroft
2018-12-06Rework safe mode and have heap overwrite trigger it.Scott Shawcroft
This creates a common safe mode mechanic that ports can share. As a result, the nRF52 now has safe mode support as well. The common safe mode adds a 700ms delay at startup where a reset during that window will cause a reset into safe mode. This window is designated by a yellow status pixel and flashing the single led three times. A couple NeoPixel fixes are included for the nRF52 as well. Fixes #1034. Fixes #990. Fixes #615.