<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/supervisor/shared/safe_mode.c, branch audiocore-rawsample-sinewave</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=audiocore-rawsample-sinewave</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=audiocore-rawsample-sinewave'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2020-01-18T01:36:08+00:00</updated>
<entry>
<title>Refine iMX RT memory layout and add three boards</title>
<updated>2020-01-18T01:36:08+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2020-01-09T04:32:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7d8dac9211dab92d750a0351335b4ad3fffc05e2'/>
<id>urn:sha1:7d8dac9211dab92d750a0351335b4ad3fffc05e2</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>make translate and remove backslash-r's</title>
<updated>2019-12-12T19:51:50+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2019-12-12T19:51:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=1b3028bed139149247ff5e692f24ec5356450f83'/>
<id>urn:sha1:1b3028bed139149247ff5e692f24ec5356450f83</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix flash write error handling; clean up safe mode message printing</title>
<updated>2019-12-12T19:41:49+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2019-12-12T19:35:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7889b999ccb32b78ddabc2b2738f0a9d182b9411'/>
<id>urn:sha1:7889b999ccb32b78ddabc2b2738f0a9d182b9411</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Supervisor: move most of systick to the supervisor</title>
<updated>2019-11-18T17:01:23+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2019-11-18T14:22:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7f744a2369a5036cadfa05575da1704f709c98bb'/>
<id>urn:sha1:7f744a2369a5036cadfa05575da1704f709c98bb</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>Rework safe mode so we can trigger on all resets</title>
<updated>2019-05-09T17:15:28+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-05-09T17:15:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b87565138ea2027625e69aee4cf1170606e1f40a'/>
<id>urn:sha1:b87565138ea2027625e69aee4cf1170606e1f40a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Update `on_next_reset` for new safe mode.</title>
<updated>2019-05-08T22:23:40+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-05-08T22:23:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=837d3f57eefe8189969dda6512f278b4fb76af55'/>
<id>urn:sha1:837d3f57eefe8189969dda6512f278b4fb76af55</id>
<content type='text'>
Fixes #1831
</content>
</entry>
<entry>
<title>Reorganize board busses into shared-bindings and shared-module.</title>
<updated>2019-04-08T23:58:50+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-04-08T23:58:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0f003ac5b8312fafb120e86e05eefd2431014d8c'/>
<id>urn:sha1:0f003ac5b8312fafb120e86e05eefd2431014d8c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix crash when getting board.SPI outside the VM</title>
<updated>2019-04-06T02:06:37+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-04-06T02:06:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7686f93ef456aa46f538da3159d0e12cae9fa737'/>
<id>urn:sha1:7686f93ef456aa46f538da3159d0e12cae9fa737</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>Enter safe mode when an allocation is attempted on an uninitialized heap.</title>
<updated>2019-03-12T18:18:26+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-03-08T23:29:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=03be42ab847f04a89d207d98fdb28048cfedf72d'/>
<id>urn:sha1:03be42ab847f04a89d207d98fdb28048cfedf72d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rework safe mode and have heap overwrite trigger it.</title>
<updated>2018-12-06T22:24:20+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2018-12-06T22:24:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=6ef863997186e1893cdf19c0e04d0a8a3f33ad9d'/>
<id>urn:sha1:6ef863997186e1893cdf19c0e04d0a8a3f33ad9d</id>
<content type='text'>
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.
</content>
</entry>
</feed>
