<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mjb/altos/src/stmf0/ao_arch_funcs.h, branch tmgps</title>
<subtitle>AltOS - the operating system for Altus Metrum products
</subtitle>
<id>https://git.ethernal.org/mjb/altos/atom?h=tmgps</id>
<link rel='self' href='https://git.ethernal.org/mjb/altos/atom?h=tmgps'/>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/'/>
<updated>2018-01-08T05:44:39+00:00</updated>
<entry>
<title>altos/stmf0: Use double buffering for ChaosKey</title>
<updated>2018-01-08T05:44:39+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2018-01-08T05:44:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=48d164e3d4b2ef27fae20fae63b8014803a7b178'/>
<id>urn:sha1:48d164e3d4b2ef27fae20fae63b8014803a7b178</id>
<content type='text'>
This improves the USB performance of ChaosKey so that it doesn't NAK
during data transfers at all.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/stmf: Fix up serial port flow control configuration bits</title>
<updated>2017-05-15T15:58:21+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-05-15T15:58:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=f132a22995235f3002e4a2bb8771c9b5738efb30'/>
<id>urn:sha1:f132a22995235f3002e4a2bb8771c9b5738efb30</id>
<content type='text'>
Compute whether any sw/hw flow control is in use.
Compute whether hw flow control is in use as a separate value.

These make the code a bit easier to follow.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/arm: Align data so that gcc 5.4 doesn't do byte-accesses. Add -Wcast-align</title>
<updated>2016-12-18T05:04:33+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-12-18T04:58:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=89ecc32b90565ace078c4a84d4406a4d1f86821a'/>
<id>urn:sha1:89ecc32b90565ace078c4a84d4406a4d1f86821a</id>
<content type='text'>
Gcc 5.4.1 tracks alignment of data through assignments, so that a
uint32_t pointer which comes from byte-aligned uint8_t data:

extern uint8_t foo[];

	uint32_t	*q = (void *) foo;

Fetches and stores through this pointer are done bytewise. This is
slow (meh), but if q references a device register, things to bad very
quickly.

This patch works around this bug in the compiler by adding
__attribute__((aligned(4))) tags to some variables, or changing them
from uint8_t to uint32_t. Places doing this will now be caught as I've
added -Wcast-align to the compiler flags. That required adding (void
*) casts, after the relevant code was checked to make sure the
compiler could tell that the addresses were aligned.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/stmf0: Add USART support</title>
<updated>2016-10-31T02:07:39+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-10-31T02:06:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=148f6e0a107d9e88509958700351794f2f971312'/>
<id>urn:sha1:148f6e0a107d9e88509958700351794f2f971312</id>
<content type='text'>
The STM32F0 usart can be operated much like the STM32L usart, but the
registers are all moved around.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Add STM32F0 beep and SPI byte API.</title>
<updated>2016-07-14T22:12:58+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-07-02T18:00:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=1667cb8e8b702b05fc3ec39ee49029885df64a4a'/>
<id>urn:sha1:1667cb8e8b702b05fc3ec39ee49029885df64a4a</id>
<content type='text'>
Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>Switch from GPLv2 to GPLv2+</title>
<updated>2016-07-12T22:41:41+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-07-05T16:03:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=1085ec5d57e0ed5d132f2bbdac1a0b6a32c0ab4a'/>
<id>urn:sha1:1085ec5d57e0ed5d132f2bbdac1a0b6a32c0ab4a</id>
<content type='text'>
Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/stmf0: Remove ao_usb_free</title>
<updated>2016-06-12T05:17:01+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-06-12T05:17:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=eee7fa303fb0d80ac5d7b9c5a86af60333f61951'/>
<id>urn:sha1:eee7fa303fb0d80ac5d7b9c5a86af60333f61951</id>
<content type='text'>
This can't work without a lot more effort.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/detherm: Add ms5607 to detherm</title>
<updated>2016-04-13T13:19:28+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-04-06T05:03:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=cfb91ec7ef6ef485d813af96a0f206bb7a2204dd'/>
<id>urn:sha1:cfb91ec7ef6ef485d813af96a0f206bb7a2204dd</id>
<content type='text'>
Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/chaoskey: Add another USB endpoint to read raw data</title>
<updated>2016-03-02T21:59:21+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-03-02T21:54:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=05fcb717bfc44aba3c1cfd43281e323505a46402'/>
<id>urn:sha1:05fcb717bfc44aba3c1cfd43281e323505a46402</id>
<content type='text'>
This replaces having the single output switch based on a pin value and
allows us to box the device and still fetch raw data.

For now, this will use a special libusb2 program, ao-chaosread, to
pull bits as I haven't figure out how to make linux provide two
/dev entries for one USB device.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/stmf0: Add suspend/resume support</title>
<updated>2016-02-07T23:42:28+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2016-02-06T11:51:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=a5607aad694c01c01c48229172b289f005a1b6bb'/>
<id>urn:sha1:a5607aad694c01c01c48229172b289f005a1b6bb</id>
<content type='text'>
Allow USB suspend to suspend USB, GPIOs and master clock.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
</feed>
