<feed xmlns='http://www.w3.org/2005/Atom'>
<title>librambutan/support/ld/libcs3_stm32_src, 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-04-11T20:52:17+00:00</updated>
<entry>
<title>Remove CS3-style initialization.</title>
<updated>2012-04-11T20:52:17+00:00</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2011-11-15T08:10:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=4b245f8744ae7abc8d77a9b90f273106eee3541f'/>
<id>urn:sha1:4b245f8744ae7abc8d77a9b90f273106eee3541f</id>
<content type='text'>
Remove libcs3-related bits from support/ld. Break them out into
libmaple proper and Wirish as appropriate: vector table definition and
ISR declarations go into libmaple proper, and startup code goes into
Wirish. Vector table symbols are included into common.inc from an
STM32 family-specific directory under support/ld/stm32.

This is a combination of 5 commits. Individual commit messages follow:

libcs3_stm32_src: Don't depend on cs3.h.

So we can use the existing toolchain.

Move ISR decls/vector table into libmaple proper.

This allows us to configure the vector table on a per-family basis.

- Move
        support/ld/libcs3_stm32_src/stm32_isrs.S
                                    stm32_vector_table.S
  to
        libmaple/stm32f1/isrs_performance.S
                         vector_table_performance.S,
  respectively.

  The directory libmaple/stm32f1/ is intended to hold all
  STM32F1-specific code within libmaple. Obviously, there's a lot of
  work to do before this becomes true.

- support/ld/libcs3_stm32_src/Makefile: Don't try to compile
  stm32_isrs.S and stm32_vector_table.S anymore.

- Add libmaple/stm32f1/rules.mk to include these new files in the
  standard libmaple build.

- support/make/target-config.mk: Add LIBMAPLE_MODULE_FAMILY, which
  selects a directory to use as a family-specific libmaple
  submodule.

- Makefile: Add LIBMAPLE_MODULE_FAMILY to LIBMAPLE_MODULES.

Remove support/ld/libcs3_stm32_src and derived object files.

From support/ld/libcs3_stm32_src, move start.S and start_c.c into
Wirish. Modify wirish/rules.mk accordingly.

Delete support/ld/libcs3_stm32_*_density.a. These are no longer
necessary, as the relevant objects are included in the standard Wirish
build. Remove the GROUP statements from the board linker scripts
accordingly.

Remove SEARCH_DIR(.) from common.inc; it's no longer necessary. Also
fix up some comments that are now out of date.

wirish/start_c.c: Don't use CS3-style memory initialization.

Switch memory initialization to a simpler style of initializing .data
if necessary, then zeroing .bss. Initializing .data is only necessary
during Flash builds, since during RAM builds, LOADADDR(.data) ==
ADDR(.data).

This makes libmaple completely incompatible with the CS3 startup
sequence. Subsequent commits will clean up the namespace to reflect
that fact.

Signed-off-by: Marti Bolivar &lt;mbolivar@leaflabs.com&gt;
</content>
</entry>
<entry>
<title>[support/ld] Rename vector table section.</title>
<updated>2011-09-09T19:33:11+00:00</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2011-09-09T03:17:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=fefc97bfa82ebb1f47922245cd320e2a3bead7f2'/>
<id>urn:sha1:fefc97bfa82ebb1f47922245cd320e2a3bead7f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Converting all files to UNIX newlines.</title>
<updated>2011-05-10T20:41:37+00:00</updated>
<author>
<name>Marti Bolivar</name>
<email>mbolivar@leaflabs.com</email>
</author>
<published>2011-05-10T20:41:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=9cfd9ba5d6e2933e72dd93b048e62b9e9494fafb'/>
<id>urn:sha1:9cfd9ba5d6e2933e72dd93b048e62b9e9494fafb</id>
<content type='text'>
Committing the results of running the following on the libmaple root
directory:

$ fromdos `grep --exclude-dir='[.]git' -Ilsr $'\r$' .`
</content>
</entry>
<entry>
<title>support: linker: Fix high density vector table</title>
<updated>2011-03-15T23:36:46+00:00</updated>
<author>
<name>Perry Hung</name>
<email>iperry@gmail.com</email>
</author>
<published>2011-03-15T23:36:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=c0cb60b3ff57f60b618433a507116aeac2c21075'/>
<id>urn:sha1:c0cb60b3ff57f60b618433a507116aeac2c21075</id>
<content type='text'>
Entries for high-density interrupt vectors were incorrectly declared to
be .weak instead of .long.

Thanks redfox74!
</content>
</entry>
<entry>
<title>Refactor linker scripts. Rename irq and exception handlers.</title>
<updated>2011-02-27T20:56:40+00:00</updated>
<author>
<name>Perry Hung</name>
<email>iperry@gmail.com</email>
</author>
<published>2011-02-27T20:49:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/librambutan/commit/?id=214941537f2211d5e2ef16e34440485d7e872d1a'/>
<id>urn:sha1:214941537f2211d5e2ef16e34440485d7e872d1a</id>
<content type='text'>
Add common linker scripts for ram and rom. Add medium and high density
libraries for libcs3.
</content>
</entry>
</feed>
