<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/ports/atmel-samd/tick.c, branch main</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=main</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2020-03-13T18:16:41+00:00</updated>
<entry>
<title>Initial work on SAMD</title>
<updated>2020-03-13T18:16:41+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2020-03-13T06:05:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=48b5f2a384e7ecc10ee51b453934a009ea9dc48d'/>
<id>urn:sha1:48b5f2a384e7ecc10ee51b453934a009ea9dc48d</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>fix atmel-samd filesystem_tick'ing; clear_temp_status() should check for status indicator in use</title>
<updated>2019-09-10T03:17:52+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2019-09-10T03:17:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b8200d72950f4d360a29e2f62d49773954942e5f'/>
<id>urn:sha1:b8200d72950f4d360a29e2f62d49773954942e5f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Actually call gamepadshift_tick</title>
<updated>2019-04-16T18:15:42+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-04-16T18:15:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=55782901d09167e591d45699cd5db48c5619e1e9'/>
<id>urn:sha1:55782901d09167e591d45699cd5db48c5619e1e9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge 3.0.0 final bugfixes and changes to master</title>
<updated>2018-07-16T13:01:46+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2018-07-16T13:01:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a20ab40ed2384e3d0463c67a792040145203e364'/>
<id>urn:sha1:a20ab40ed2384e3d0463c67a792040145203e364</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Support M4</title>
<updated>2018-06-08T19:56:32+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott.shawcroft@gmail.com</email>
</author>
<published>2018-06-05T20:43:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=07a8899c726a53011ead19d4e92cd8ccc09c1e03'/>
<id>urn:sha1:07a8899c726a53011ead19d4e92cd8ccc09c1e03</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Prevent freezing USB during high frequency PulseIn.</title>
<updated>2018-06-08T19:56:32+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott.shawcroft@gmail.com</email>
</author>
<published>2018-06-05T19:38:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=2fbab8067afcb008bc92d9c155dfef360fbc10f9'/>
<id>urn:sha1:2fbab8067afcb008bc92d9c155dfef360fbc10f9</id>
<content type='text'>
We now track the last time the background task ran and bail on the
PulseIn if it starves the background work. In practice, this
happens after the numbers from pulsein are no longer accurate.

This also adjusts interrupt priorities so most are the lowest level
except for the tick and USB interrupts.

Fixes #516 and #876
</content>
</entry>
<entry>
<title>atmel-samd: Make ticks more atomic.</title>
<updated>2018-06-01T22:08:52+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott.shawcroft@gmail.com</email>
</author>
<published>2018-05-31T23:47:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9920f0a5de11b894b6255888475e6272e5e83f94'/>
<id>urn:sha1:9920f0a5de11b894b6255888475e6272e5e83f94</id>
<content type='text'>
Always use current_tick when sub millisecond precision is required.
Otherwise getting the ms/us to correspond is tricky.
</content>
</entry>
<entry>
<title> cleanup in tick.c</title>
<updated>2018-04-20T19:23:03+00:00</updated>
<author>
<name>Jerry Needell</name>
<email>jerryneedell@gmail.com</email>
</author>
<published>2018-04-20T19:23:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=bef05ffbf183225563d087de8b48e80dbeb7dd17'/>
<id>urn:sha1:bef05ffbf183225563d087de8b48e80dbeb7dd17</id>
<content type='text'>
</content>
</entry>
<entry>
<title> modify tick.c to simplify - remove interupt disable from common_hal_pulseio_pulsein_resume</title>
<updated>2018-04-20T15:59:33+00:00</updated>
<author>
<name>Jerry Needell</name>
<email>jerryneedell@gmail.com</email>
</author>
<published>2018-04-20T15:59:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=fe738598dacd97149db738216fe4e574b8a926a7'/>
<id>urn:sha1:fe738598dacd97149db738216fe4e574b8a926a7</id>
<content type='text'>
</content>
</entry>
</feed>
