<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mjb/altos/src/stm/ao_arch_funcs.h, branch debian/1.3.2-1</title>
<subtitle>AltOS - the operating system for Altus Metrum products
</subtitle>
<id>https://git.ethernal.org/mjb/altos/atom?h=debian%2F1.3.2-1</id>
<link rel='self' href='https://git.ethernal.org/mjb/altos/atom?h=debian%2F1.3.2-1'/>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/'/>
<updated>2013-10-08T16:20:12+00:00</updated>
<entry>
<title>altos/stm: New GAS version requires flags in APSR assignment</title>
<updated>2013-10-08T16:20:12+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-10-08T16:20:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=16965716c02eb79b449d9d3b264814d775660134'/>
<id>urn:sha1:16965716c02eb79b449d9d3b264814d775660134</id>
<content type='text'>
Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/lpc, altos/stm: ARM requires ISB after switching stack pointers</title>
<updated>2013-10-08T04:53:53+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-10-08T04:53:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=8f7edcee2db30652ce0b147f282de3396c3786ad'/>
<id>urn:sha1:8f7edcee2db30652ce0b147f282de3396c3786ad</id>
<content type='text'>
This sticks a barrier in the CPU to prevent using the wrong stack
register past the change.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/stm: Make sampling profiler work again</title>
<updated>2013-08-29T04:08:51+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-08-29T04:08:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=8e9ed70f50e3f535c2580820771bb1bc3cd055fe'/>
<id>urn:sha1:8e9ed70f50e3f535c2580820771bb1bc3cd055fe</id>
<content type='text'>
Disable the separate stack as that means we can't figure out the PC
from the timer interrupt. Move ao_idle_loc after the interrupt release
so that we see idle tasks correctly.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Grab SPI mutex until MPU6000 I2C mode is disabled</title>
<updated>2013-05-16T05:13:08+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-05-14T17:48:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=0571531066918fdefe9447f3b4192d0c6c477afa'/>
<id>urn:sha1:0571531066918fdefe9447f3b4192d0c6c477afa</id>
<content type='text'>
If other drivers use the SPI bus, the MPU6000 gets confused as its
sitting on the bus looking for I2C messages. Just grab the mutex
before the OS is running and hold onto it until the MPU6000 has been initialized.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos/stm: Don't define task macros when not tasking</title>
<updated>2013-05-08T04:30:26+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-04-23T01:29:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=a453e2245996854e722346789f972fd088e33ba8'/>
<id>urn:sha1:a453e2245996854e722346789f972fd088e33ba8</id>
<content type='text'>
The necessary data structures aren't defined in this case.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>Add STM self-flashing loader</title>
<updated>2013-05-08T03:12:40+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-02-24T08:18:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=a6887032b4d217bca5236ea15389218f10d69545'/>
<id>urn:sha1:a6887032b4d217bca5236ea15389218f10d69545</id>
<content type='text'>
This allows the real application to get loaded at 0x2000 and jumps to
that at startup time if the boot pin is set appropriately

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Use separate exception stack on STM32L</title>
<updated>2013-05-08T03:08:00+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-05-01T02:04:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=1e9b405e939136d25d937334d1f14f06c7d6127b'/>
<id>urn:sha1:1e9b405e939136d25d937334d1f14f06c7d6127b</id>
<content type='text'>
This reserves 512 bytes of memory for a stack, then makes sure that
exceptions continue to use that stack while processes use the per-task
stack.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Crank fast SPI on STM to 8MHz</title>
<updated>2013-01-14T04:54:14+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2013-01-14T04:50:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=a866431e9a063830b407f749ff97a730831e5e4e'/>
<id>urn:sha1:a866431e9a063830b407f749ff97a730831e5e4e</id>
<content type='text'>
With the GPIO pins set to 10MHz now, we can run SPI at the maximum
possible speed (8MHz).

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Make stdio 8-bit clean by making pollchar return int</title>
<updated>2012-12-01T00:01:07+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2012-12-01T00:01:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=0b65402361f36a0c722977bcb63edb26fda0db28'/>
<id>urn:sha1:0b65402361f36a0c722977bcb63edb26fda0db28</id>
<content type='text'>
We were stealing one value (0xff) in the return value from pollchar to
indicate 'not ready yet'. Instead of doing that, use the integer value
-1 and have pollchar return an int instead of a char. That
necessitated cleaning a few other bits to make sure that 0xff wouldn't
get promoted to -1 on accident.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Leave interrupts disabled while checking for task to run</title>
<updated>2012-10-26T21:07:04+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2012-10-25T20:40:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=ccf0faa7d26d56deca7928b521d07be40504466a'/>
<id>urn:sha1:ccf0faa7d26d56deca7928b521d07be40504466a</id>
<content type='text'>
Otherwise, we run the risk of an interrupt waking a task after we've
decided to idle the CPU.

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