<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/stmhal/hal/f4, branch 2.2.0</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=2.2.0</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=2.2.0'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2016-11-16T11:43:27+00:00</updated>
<entry>
<title>stmhal/hal: do not include &lt;stdio.h&gt; in HAL headers</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-10-12T16:14:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=13400e13758f7e23fc17bae753030723046ba3aa'/>
<id>urn:sha1:13400e13758f7e23fc17bae753030723046ba3aa</id>
<content type='text'>
stdio.h was included in all HAL files only to provide
definition of NULL symbol

"stdio.h" includes "types.h" which contains some conflicting definitions
with "drivers/cc3000/inc/socket.h"
</content>
</entry>
<entry>
<title>stmhal/dma: precalculate register base and bitshift on handle init</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-09-07T16:40:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=63ca7a211ac832fb885753ad837a7b3de2aaa5da'/>
<id>urn:sha1:63ca7a211ac832fb885753ad837a7b3de2aaa5da</id>
<content type='text'>
Current version of HAL drivers optimize IRQ handler by using precalculated
DMA register address and stream bitshift instead of calculating it on every interrupt.

Since we skip call to `HAL_DMA_Init` on reused DMA, fields StreamBaseAddress and StreamIndex
of DMA handle are not initialized and thus leads to SegFault in `DMA_IRQHandler`.

HAL_DMA_Init is a big routine and we do not need to call it on each use of DMA
(ex.: series of I2C operations) and DMA_CalcBaseAndBitshift is really small and
releasing it increases code size by only 8 bytes.
</content>
</entry>
<entry>
<title>stmhal/hal/sd: reapply HAL commit 09de030 for f4</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-09-08T16:23:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=6a8f6c119c249e52fbc4d4fd55b2bec65544c811'/>
<id>urn:sha1:6a8f6c119c249e52fbc4d4fd55b2bec65544c811</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/hal/rcc: reapply HAL commit c568a2b for f4</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-09-08T16:20:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e2b48221892ca5445d9e255753e4ccfcd07a8171'/>
<id>urn:sha1:e2b48221892ca5445d9e255753e4ccfcd07a8171</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/hal: reapply HAL commit 9db719b for f4</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-09-08T16:13:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4f7c5fa64769f836b1cb3d357be4864807e10694'/>
<id>urn:sha1:4f7c5fa64769f836b1cb3d357be4864807e10694</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/hal/sd: reapply HAL commit 1d7fb82 for f4</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-09-08T13:30:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c79ff9930aed2a91a888f8eb58f27946ca8287ca'/>
<id>urn:sha1:c79ff9930aed2a91a888f8eb58f27946ca8287ca</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal/hal/i2c: reapply HAL commit ea040a4 for f4</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-10-17T12:18:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a9fb88e1dcc95e9c2a788549bca0bede6b2ee02c'/>
<id>urn:sha1:a9fb88e1dcc95e9c2a788549bca0bede6b2ee02c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: apply STM32CubeF4 v1.13.1 patch - upgrade HAL driver to v1.5.2</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-11-15T13:47:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e8b435d1f80a220a4f561b1e653ea33b69517513'/>
<id>urn:sha1:e8b435d1f80a220a4f561b1e653ea33b69517513</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: upgrade to STM32CubeF4 v1.13.0 - HAL v1.5.1</title>
<updated>2016-11-16T11:43:27+00:00</updated>
<author>
<name>Krzysztof Blazewicz</name>
<email>krzysztof.blazewicz@uxeon.com</email>
</author>
<published>2016-09-06T11:52:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c1fa33b493db3f861c322c84da56aed0c1599339'/>
<id>urn:sha1:c1fa33b493db3f861c322c84da56aed0c1599339</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: In HAL I2C driver, move DMA setup to after sending I2C address.</title>
<updated>2016-01-30T00:02:21+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-30T00:02:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ea040a4f9ace1c50abc22ab755415305fd2bda41'/>
<id>urn:sha1:ea040a4f9ace1c50abc22ab755415305fd2bda41</id>
<content type='text'>
Previous to this patch the DMA was setup and then the I2C address sent.
If the I2C address sending failed (eg no I2C device on the bus) then the
DMA was left in an inconsistent state.

This patch moves the DMA setup to after a successful sending of the I2C
address(es).

See issue #1765.
</content>
</entry>
</feed>
