<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/supervisor/shared/background_callback.c, branch 6.2.x</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=6.2.x</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=6.2.x'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2021-03-15T13:57:36+00:00</updated>
<entry>
<title>run code formatting script</title>
<updated>2021-03-15T13:57:36+00:00</updated>
<author>
<name>microDev</name>
<email>70126934+microDev1@users.noreply.github.com</email>
</author>
<published>2021-03-15T13:57:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a52eb88031620a81521b937f2a0651dbac2bb350'/>
<id>urn:sha1:a52eb88031620a81521b937f2a0651dbac2bb350</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add usb_background_schedule()</title>
<updated>2021-02-04T09:00:14+00:00</updated>
<author>
<name>hathach</name>
<email>thach@tinyusb.org</email>
</author>
<published>2021-02-04T09:00:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=8d7b1f9e8c9545468305443ae6cae3d653ead8d2'/>
<id>urn:sha1:8d7b1f9e8c9545468305443ae6cae3d653ead8d2</id>
<content type='text'>
unconditionally schedule usb background after
background_callback_reset()
</content>
</entry>
<entry>
<title>hack to fix 3986</title>
<updated>2021-02-03T04:01:33+00:00</updated>
<author>
<name>hathach</name>
<email>thach@tinyusb.org</email>
</author>
<published>2021-02-03T04:01:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e699a598905c95eb8249e89e436030376a518239'/>
<id>urn:sha1:e699a598905c95eb8249e89e436030376a518239</id>
<content type='text'>
just a proof to show that issue analysis is correct
</content>
</entry>
<entry>
<title>background tasks: Add, use port_wake_main_task</title>
<updated>2021-01-09T20:02:47+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2021-01-09T19:59:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e20c65d8f044cb9522cd1a7f4a3030efefa77cbb'/>
<id>urn:sha1:e20c65d8f044cb9522cd1a7f4a3030efefa77cbb</id>
<content type='text'>
Some ports need an extra operation to ensure that the main task is
awoken so that a queued background task will execute during an ongoing
light sleep.

This removes the need to enable supervisor ticks while I2SOut is operating.

Closes: #3952
</content>
</entry>
<entry>
<title>Unify iMX flash config and add Metro M7 1011</title>
<updated>2020-10-07T22:23:47+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2020-09-29T02:21:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=09bc4157516dd59754a3eb1a5dbbb72a758ebe93'/>
<id>urn:sha1:09bc4157516dd59754a3eb1a5dbbb72a758ebe93</id>
<content type='text'>
This unifies the flash config to the settings used by the Boot ROM.
This makes the config unique per board which allows for changing
quad enable and status bit differences per flash device. It also
allows for timing differences due to the board layout.

This change also tweaks linker layout to leave more ram space for
the CircuitPython heap.
</content>
</entry>
<entry>
<title>background callbacks: Clear any callbacks that were queued</title>
<updated>2020-07-20T13:44:39+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2020-07-20T13:44:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=db43c56f794508689b07d931c16cadd3e98aad87'/>
<id>urn:sha1:db43c56f794508689b07d931c16cadd3e98aad87</id>
<content type='text'>
Before this, a background callback that was on the list when
background_callback_reset was called could have ended up in a state
that made it "un-queueable": its "prev" pointer could have been non-NULL.
</content>
</entry>
<entry>
<title>background_callback_gc_collect: We must traverse the whole list</title>
<updated>2020-07-17T19:55:46+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2020-07-17T19:55:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=98eef79faaa36adbdd0b074c712aad5df7ef37a0'/>
<id>urn:sha1:98eef79faaa36adbdd0b074c712aad5df7ef37a0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>background_callback: Add gc collect callback</title>
<updated>2020-07-17T13:36:26+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2020-07-17T13:36:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a18a39210919a886d4efb4c52b85a309b3403abf'/>
<id>urn:sha1:a18a39210919a886d4efb4c52b85a309b3403abf</id>
<content type='text'>
A background callback must never outlive its related object.  By
collecting the head of the linked list of background tasks, this will
not happen.

One hypothetical case where this could happen is if an MP3Decoder is
deleted while its callback to fill its buffer is scheduled.
</content>
</entry>
<entry>
<title>background_callback: Avoid CALLBACK_CRITICAL_BEGIN with nothing to do</title>
<updated>2020-07-15T14:26:47+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2020-07-10T19:42:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=36b46465167f15eaf8535608b16859e6de10fac8'/>
<id>urn:sha1:36b46465167f15eaf8535608b16859e6de10fac8</id>
<content type='text'>
CALLBACK_CRITICAL_BEGIN is heavyweight, but we can be confident we do
not have work to do as long as callback_head is NULL.

This gives back performance on nRF.
</content>
</entry>
<entry>
<title>supervisor: Add a linked list of background callbacks</title>
<updated>2020-07-15T14:26:47+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2020-05-11T13:37:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=1474fccd2fb1cf6ccd14979a3b5405d2a355054b'/>
<id>urn:sha1:1474fccd2fb1cf6ccd14979a3b5405d2a355054b</id>
<content type='text'>
In time, we should transition interrupt driven background tasks out of the
overall run_background_tasks into distinct background callbacks,
so that the number of checks that occur with each tick is reduced.
</content>
</entry>
</feed>
