<feed xmlns='http://www.w3.org/2005/Atom'>
<title>librambutan/wirish/stm32f1, branch master</title>
<subtitle>[no description]</subtitle>
<id>https://git.bnewbold.net/librambutan/atom?h=master</id>
<link rel='self' href='https://git.bnewbold.net/librambutan/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/'/>
<updated>2012-06-26T22:03:40Z</updated>
<entry>
<title>Bring back and fix up util.c functionality.</title>
<updated>2012-06-26T22:03:40Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-26T22:03:40Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=fbbf35ee079d1c979909981c95132ba7eaca7215'/>
<id>urn:sha1:fbbf35ee079d1c979909981c95132ba7eaca7215</id>
<content type='text'>
Rip out the existing nonportable pieces, and shove them under
wirish/stm32f1, using weak symbols so users who only want libmaple
proper don't end up with build errors. Add stubbed-out (and only
partially functional) definitions for F2 targets under wirish/stm32f2.

The behavior on F103 targets is the same as it was before (though the
assertion framework has always been broken and badly needs
replacement, that awaits another commit). We additionally now skip
re-enabling USB on F1 targets without USB, to make things work on
value line MCUs.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>Bring back &lt;wirish/wirish_debug.h&gt;.</title>
<updated>2012-06-08T22:34:33Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-08T22:34:33Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=3193ae1326c738b54067674a6073287f90ecaa85'/>
<id>urn:sha1:3193ae1326c738b54067674a6073287f90ecaa85</id>
<content type='text'>
Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>wirish: Weaken boards_private.h definitions.</title>
<updated>2012-06-07T07:38:29Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-05T19:07:01Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=b12b8e7c24487c183d73fed4d7848a4bd0e8304a'/>
<id>urn:sha1:b12b8e7c24487c183d73fed4d7848a4bd0e8304a</id>
<content type='text'>
This lets users override them conveniently if our decisions don't
suit.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>Provide wirish::priv::series_init() on F1.</title>
<updated>2012-06-07T07:38:29Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-05T19:04:06Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=90769437c91dd523e13e1437c4117dd40c76f372'/>
<id>urn:sha1:90769437c91dd523e13e1437c4117dd40c76f372</id>
<content type='text'>
This lets us remove the weak definition in boards.cpp.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>Remove a completed FIXME comment.</title>
<updated>2012-06-07T07:38:28Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-05T18:38:39Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=e6ba29161ee79ad8500b4d74ff11d123b9f6a17f'/>
<id>urn:sha1:e6ba29161ee79ad8500b4d74ff11d123b9f6a17f</id>
<content type='text'>
Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>Slightly improve and generify the USB infrastructure.</title>
<updated>2012-06-04T02:40:39Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-03T10:00:41Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=378c3a70f81ddfbbddf3656977f81b7dfd8f96cd'/>
<id>urn:sha1:378c3a70f81ddfbbddf3656977f81b7dfd8f96cd</id>
<content type='text'>
The good news is that &lt;libmaple/usb.h&gt; and &lt;libmaple/usb_cdcacm.h&gt; did
turn out generic enough in what they specify to go on unchanged.

However, we can't just go on assuming that there's USB just because
we're on an F1. Now that there's value line in the tree, we need to be
more careful (value line F1s don't have USB peripherals). To that end,
make all the F1 board-includes/*.mk files specify what line their MCU
is with an MCU_F1_LINE variable. Use that to hack
libmaple/usb/rules.mk so we only try to build the USB module under
appropriate circumstances.

While we're at it, add a vector_symbols.inc for value line MCUs under
support/ld/. We need this to get the target-config.mk modifications
implied by the addition of MCU_F1_LINE. We'll fix up some other
performance-line-isms under libmaple/stm32f1 in a separate commit.

Also in libmaple/usb/:

- Move everything into a new stm32f1 directory. Due to aforementioned
  rules.mk hacks, there is no immediate need for an stm32f2
  directory (USB support doesn't exist there).

- Update the README for style and content.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>Bring timer initialization back to init().</title>
<updated>2012-06-03T01:04:13Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-06-03T01:02:34Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=1637300f8f751ccc17ff1a2f383c7fca902c0f8f'/>
<id>urn:sha1:1637300f8f751ccc17ff1a2f383c7fca902c0f8f</id>
<content type='text'>
Turns out the F1 code was pretty portable after all, so take it from
the F1 boards_setup.cpp and stick it back into boards.cpp. The only
change needed was to add a call to the newly-minted
timer_has_cc_channel() (and this is necessary on F103 XL-density,
anyway).

Also assert LeafLabs copyright in boards.cpp. We really need to do
this throughout the library; it's basically been rewritten since
Perry.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>examples/blinky.cpp works on F2.</title>
<updated>2012-05-31T21:24:41Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-05-31T21:17:06Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=014f9a0545556f2e0d4fb3faba5607e59e1e97ad'/>
<id>urn:sha1:014f9a0545556f2e0d4fb3faba5607e59e1e97ad</id>
<content type='text'>
Only OUTPUT mode is tested; any other modes might work, but no
guarantees.

Bring back:

- wirish/wirish_digital.cpp
- wirish/cxxabi-compat.cpp
- wirish/wirish_time.cpp

Add new:

- wirish/stm32f1/wirish_digital.cpp
- wirish/stm32f2/wirish_digital.cpp

Move pinMode() from wirish/wirish_digital.cpp into the file by the
same basename in wirish/stm32f1. This implementation is tied to
F1. Add an F2 implementation in wirish/stm32f2/wirish_digital.cpp.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>stm32.h: Various updates, mostly to help STM32F1 line support.</title>
<updated>2012-04-24T09:01:28Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-04-24T09:01:28Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=9c8b3225efd5ee816ad840ea97ba7bb92ff17941'/>
<id>urn:sha1:9c8b3225efd5ee816ad840ea97ba7bb92ff17941</id>
<content type='text'>
Add STM32_HAVE_USB feature test macro requirement for
&lt;series/stm32.h&gt;. This will let us test if we've got a USB peripheral.
wirish/stm32f1/boards_setup.cpp is set up to use this when turning on
USB CDC ACM support at init() time.

Rework the STM32F1 &lt;series/stm32.h&gt; to make it easier to support the
various lines that subdivide that series. We don't really support
anything besides performance line yet, but there's been enough
enthusiasm for value and connectivity line support in the past that
these hooks seem worth adding. This means adding an STM32_F1_LINE
macro and STM32_F1_LINE_[PERFORMANCE,VALUE,ACCESS,CONNECTIVITY] macros
for values that STM32_F1_LINE can take, and generalizing the rest of
the file to begin taking this into account. Some TODOs remain, but
filling these in is the responsibility of future libmaple porting
efforts.

One pleasant consequence of the F1 stm32.h rework is that the build
system no longer has to tell us what density of F103 we're building
for, so remove that from the relevant support/make/board-includes/
files.

Add some tweaks to &lt;libmaple/stm32.h&gt; and the STM32F2 stm32.h header
to make sure this went through properly, and continues to go through
properly in the future.
</content>
</entry>
<entry>
<title>stm32f1 boards_setup.cpp: Allow overriding the PLL multiplier.</title>
<updated>2012-04-23T17:45:15Z</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2012-04-23T17:45:15Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=f3e5111cff8d9f91dd5279df5165c386d77fed2e'/>
<id>urn:sha1:f3e5111cff8d9f91dd5279df5165c386d77fed2e</id>
<content type='text'>
Allow &lt;board/board.h&gt; to override the PLL multiplier by defining
BOARD_RCC_PLLMUL. This should be useful for e.g. value line MCUs,
which have slower clocks. It's also probably useful for people who
have external oscillators different from the 8 MHz ones we use on all
of our boards.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
</feed>
