<feed xmlns='http://www.w3.org/2005/Atom'>
<title>embassy/embassy-hal-common/src/atomic_ring_buffer.rs, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/'/>
<entry>
<title>Rename embassy-hal-common to embassy-hal-internal, document it's for internal use only. (#1700)</title>
<updated>2023-07-28T11:23:22+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2023-07-28T11:23:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=036e6ae30c9e772ef8ef20439f121e108b9106f0'/>
<id>036e6ae30c9e772ef8ef20439f121e108b9106f0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix tests.</title>
<updated>2023-05-29T17:46:28+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2023-05-29T17:46:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=46961cfdf72a3b5d54b241a41d9f2496c6dc6229'/>
<id>46961cfdf72a3b5d54b241a41d9f2496c6dc6229</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix some typos</title>
<updated>2023-05-08T21:25:01+00:00</updated>
<author>
<name>Dirk Stolle</name>
<email>striezel-dev@web.de</email>
</author>
<published>2023-05-08T21:25:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=0584312ef0324d2ac67dbb9517176fabf628eec9'/>
<id>0584312ef0324d2ac67dbb9517176fabf628eec9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>hal-common/atomic_ring_buffer: add push_bufs() push_slices()</title>
<updated>2023-03-02T03:11:49+00:00</updated>
<author>
<name>Patrick Oppenlander</name>
<email>patrick.oppenlander@gmail.com</email>
</author>
<published>2023-02-07T03:49:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=78974dfeb4db4a36bf9478397fd65370eb1dcf0c'/>
<id>78974dfeb4db4a36bf9478397fd65370eb1dcf0c</id>
<content type='text'>
This allows a writer to access all of the free space in the buffer, even
when it's wrapping around.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows a writer to access all of the free space in the buffer, even
when it's wrapping around.
</pre>
</div>
</content>
</entry>
<entry>
<title>common: allow atomic ringbuf to fill up to N instead of just N-1.</title>
<updated>2023-03-02T00:01:19+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2023-03-01T23:57:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=f95aafc90e365bbdd243c0ed5069ff23abfa8be4'/>
<id>f95aafc90e365bbdd243c0ed5069ff23abfa8be4</id>
<content type='text'>
This allows the ringbuf to be filled up to `N` instead of just `N-1`, using some fun tricks on the indices.

The advantage is better performance: Before, the first write would fill N-1 bytes, The second would write just the 1 byte left before wrapping, then N-2. Then 2, then N-3, and so on. This would result in more smaller chunks, so worse perf. This problem is gone now.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows the ringbuf to be filled up to `N` instead of just `N-1`, using some fun tricks on the indices.

The advantage is better performance: Before, the first write would fill N-1 bytes, The second would write just the 1 byte left before wrapping, then N-2. Then 2, then N-3, and so on. This would result in more smaller chunks, so worse perf. This problem is gone now.
</pre>
</div>
</content>
</entry>
<entry>
<title>rp: Fix BufferedUart drop code</title>
<updated>2023-01-04T14:59:03+00:00</updated>
<author>
<name>Timo Kröger</name>
<email>timokroeger93@gmail.com</email>
</author>
<published>2023-01-01T21:02:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=a24037edf9d04087111c1d1dc71c92cc0ad83709'/>
<id>a24037edf9d04087111c1d1dc71c92cc0ad83709</id>
<content type='text'>
Only unregister the interrupt handler when both parts are inactive
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Only unregister the interrupt handler when both parts are inactive
</pre>
</div>
</content>
</entry>
<entry>
<title>hal-common/atomic_ring_buffer: Add push_slice, pop_slice.</title>
<updated>2022-12-19T00:22:41+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2022-12-19T00:16:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=5b72410828309bd0d37c8f85c0fb4f88d2a105f8'/>
<id>5b72410828309bd0d37c8f85c0fb4f88d2a105f8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>hal-common/atomic_ring_buffer: fix crashes when len=0</title>
<updated>2022-12-19T00:22:41+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2022-12-19T00:15:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=feaeb533fb5963e9d603ccb5143662b21daed2d8'/>
<id>feaeb533fb5963e9d603ccb5143662b21daed2d8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>rp/uart: use lockfree ringbuffer.</title>
<updated>2022-11-25T21:30:47+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2022-11-06T23:27:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=7b838d03369f94e09d652982f994c5013e81457e'/>
<id>7b838d03369f94e09d652982f994c5013e81457e</id>
<content type='text'>
This gets rid of another PeripheralMutex usage.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This gets rid of another PeripheralMutex usage.
</pre>
</div>
</content>
</entry>
</feed>
