<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/lib_arm/Makefile, branch v2010.03</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<entry>
<title>ARM: compiler options cleanup - improve tool chain support</title>
<updated>2009-08-21T21:11:53+00:00</updated>
<author>
<name>Wolfgang Denk</name>
<email>wd@denx.de</email>
</author>
<published>2009-08-17T11:17:29+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=f772acf8a584067033eff1e231fcd1fb3a00d3d9'/>
<id>f772acf8a584067033eff1e231fcd1fb3a00d3d9</id>
<content type='text'>
For some time there have been repeated reports about build problems
with some ARM (cross) tool chains.  Especially issues about
(in)compatibility with the tool chain provided runtime support
library libgcc.a caused to add and support a private implementation
of such runtime support code in U-Boot.  A closer look at the code
indicated that some of these issues are actually home-made.  This
patch attempts to clean up some of the most obvious problems and make
building of U-Boot with different tool chains easier:

- Even though all ARM systems basicy used the same compiler options
  to select a specific ABI from the tool chain, the code for this was
  distributed over all cpu/*/config.mk files.  We move this one level
  up into lib_arm/config.mk instead.

- So far, we only checked if "-mapcs-32" was supported by the tool
  chain; if yes, this was used, if not, "-mabi=apcs-gnu" was
  selected, no matter if the tool chain actually understood this
  option.  There was no support for EABI conformant tool chains.
  This patch implements the following logic:

  1) If the tool chain supports
	"-mabi=aapcs-linux -mno-thumb-interwork"
     we use these options (EABI conformant tool chain).
  2) Otherwise, we check first if
	"-mapcs-32"
     is supported, and then check for
	"-mabi=apcs-gnu"
     If one test succeeds, we use the first found option.
  3) In case 2), we also test if "-mno-thumb-interwork", and use
     this if the test succeeds. [For "-mabi=aapcs-linux" we set
     "-mno-thumb-interwork" mandatorily.]

  This way we use a similar logic for the compile options as the
  Linux kernel does.

- Some EABI conformant tool chains cause external references to
  utility functions like raise(); such functions are provided in the
  new file lib_arm/eabi_compat.c

  Note that lib_arm/config.mk gets parsed several times, so we must
  make sure to add eabi_compat.o only once to the linker list.

Signed-off-by: Wolfgang Denk &lt;wd@denx.de&gt;
Cc: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
Cc: Dirk Behme &lt;dirk.behme@googlemail.com&gt;
Cc: Magnus Lilja &lt;lilja.magnus@gmail.com&gt;
Cc: Tom Rix &lt;Tom.Rix@windriver.com&gt;
Cc: Prafulla Wadaskar &lt;prafulla@marvell.com&gt;
Acked-by: Sergey Kubushyn &lt;ksi@koi8.net&gt;
Tested-by: Magnus Lilja &lt;lilja.magnus@gmail.com&gt;
Tested-by: Andrzej Wolski &lt;awolski@poczta.fm&gt;
Tested-by: Gaye Abdoulaye Walsimou &lt;walsimou@walsimou.com&gt;
Tested-by: Tom Rix &lt;Tom.Rix@windriver.com&gt;
Tested-by: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For some time there have been repeated reports about build problems
with some ARM (cross) tool chains.  Especially issues about
(in)compatibility with the tool chain provided runtime support
library libgcc.a caused to add and support a private implementation
of such runtime support code in U-Boot.  A closer look at the code
indicated that some of these issues are actually home-made.  This
patch attempts to clean up some of the most obvious problems and make
building of U-Boot with different tool chains easier:

- Even though all ARM systems basicy used the same compiler options
  to select a specific ABI from the tool chain, the code for this was
  distributed over all cpu/*/config.mk files.  We move this one level
  up into lib_arm/config.mk instead.

- So far, we only checked if "-mapcs-32" was supported by the tool
  chain; if yes, this was used, if not, "-mabi=apcs-gnu" was
  selected, no matter if the tool chain actually understood this
  option.  There was no support for EABI conformant tool chains.
  This patch implements the following logic:

  1) If the tool chain supports
	"-mabi=aapcs-linux -mno-thumb-interwork"
     we use these options (EABI conformant tool chain).
  2) Otherwise, we check first if
	"-mapcs-32"
     is supported, and then check for
	"-mabi=apcs-gnu"
     If one test succeeds, we use the first found option.
  3) In case 2), we also test if "-mno-thumb-interwork", and use
     this if the test succeeds. [For "-mabi=aapcs-linux" we set
     "-mno-thumb-interwork" mandatorily.]

  This way we use a similar logic for the compile options as the
  Linux kernel does.

- Some EABI conformant tool chains cause external references to
  utility functions like raise(); such functions are provided in the
  new file lib_arm/eabi_compat.c

  Note that lib_arm/config.mk gets parsed several times, so we must
  make sure to add eabi_compat.o only once to the linker list.

Signed-off-by: Wolfgang Denk &lt;wd@denx.de&gt;
Cc: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
Cc: Dirk Behme &lt;dirk.behme@googlemail.com&gt;
Cc: Magnus Lilja &lt;lilja.magnus@gmail.com&gt;
Cc: Tom Rix &lt;Tom.Rix@windriver.com&gt;
Cc: Prafulla Wadaskar &lt;prafulla@marvell.com&gt;
Acked-by: Sergey Kubushyn &lt;ksi@koi8.net&gt;
Tested-by: Magnus Lilja &lt;lilja.magnus@gmail.com&gt;
Tested-by: Andrzej Wolski &lt;awolski@poczta.fm&gt;
Tested-by: Gaye Abdoulaye Walsimou &lt;walsimou@walsimou.com&gt;
Tested-by: Tom Rix &lt;Tom.Rix@windriver.com&gt;
Tested-by: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>arm: add _lshrdi3.S</title>
<updated>2009-07-26T22:11:37+00:00</updated>
<author>
<name>Heiko Schocher</name>
<email>heiko.schocher@invitel.hu</email>
</author>
<published>2009-07-23T11:27:04+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=deec15b3064d3bb0189aede3c2921fd7ee401a0f'/>
<id>deec15b3064d3bb0189aede3c2921fd7ee401a0f</id>
<content type='text'>
Signed-off-by: Heiko Schocher &lt;hs@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Heiko Schocher &lt;hs@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Make linking against libgcc configurable</title>
<updated>2009-07-26T22:11:32+00:00</updated>
<author>
<name>Wolfgang Denk</name>
<email>wd@denx.de</email>
</author>
<published>2009-07-23T11:15:59+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=52b1bf2c5cd2f8af880dab503d0039b35570665b'/>
<id>52b1bf2c5cd2f8af880dab503d0039b35570665b</id>
<content type='text'>
Many (especially ARM) tool chains seem to come with broken or
otherwise unusable (for the purposes of builing U-Boot) run-time
support libraries `libgcc.a'. By using the "USE_PRIVATE_LIBGCC"
setting we allow to use alternative libraries instead.

"USE_PRIVATE_LIBGCC" can either be set as an environment variable in
the shell, or as a command line argument when running "make", i. e.
	$ make USE_PRIVATE_LIBGCC=yes
or
	$ USE_PRIVATE_LIBGCC=yes
	$ export USE_PRIVATE_LIBGCC
	$ make

The value of "USE_PRIVATE_LIBGCC" is the name of the directory which
contains the alternative run-time support library `libgcc.a'. The
special value "yes" selects the directory $(OBJTREE)/lib_$(ARCH) .

Note that not all architectures provide an alternative `libgcc.a' in
their lib_$(ARCH) directories - so far, only ARM does.

Signed-off-by: Wolfgang Denk &lt;wd@denx.de&gt;
Cc: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
Cc: Prafulla Wadaskar &lt;prafulla@marvell.com&gt;
cc: Stefan Roese &lt;sr@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Many (especially ARM) tool chains seem to come with broken or
otherwise unusable (for the purposes of builing U-Boot) run-time
support libraries `libgcc.a'. By using the "USE_PRIVATE_LIBGCC"
setting we allow to use alternative libraries instead.

"USE_PRIVATE_LIBGCC" can either be set as an environment variable in
the shell, or as a command line argument when running "make", i. e.
	$ make USE_PRIVATE_LIBGCC=yes
or
	$ USE_PRIVATE_LIBGCC=yes
	$ export USE_PRIVATE_LIBGCC
	$ make

The value of "USE_PRIVATE_LIBGCC" is the name of the directory which
contains the alternative run-time support library `libgcc.a'. The
special value "yes" selects the directory $(OBJTREE)/lib_$(ARCH) .

Note that not all architectures provide an alternative `libgcc.a' in
their lib_$(ARCH) directories - so far, only ARM does.

Signed-off-by: Wolfgang Denk &lt;wd@denx.de&gt;
Cc: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
Cc: Prafulla Wadaskar &lt;prafulla@marvell.com&gt;
cc: Stefan Roese &lt;sr@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>arm: unify reset command</title>
<updated>2009-04-05T11:08:03+00:00</updated>
<author>
<name>Jean-Christophe PLAGNIOL-VILLARD</name>
<email>plagnioj@jcrosoft.com</email>
</author>
<published>2009-04-05T11:08:03+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ab298231518675b3784aea88ee9b978438f99e63'/>
<id>ab298231518675b3784aea88ee9b978438f99e63</id>
<content type='text'>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>arm: clean cache management</title>
<updated>2009-04-05T11:06:31+00:00</updated>
<author>
<name>Jean-Christophe PLAGNIOL-VILLARD</name>
<email>plagnioj@jcrosoft.com</email>
</author>
<published>2009-04-05T11:06:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=b3acb6cd4059dfb29a5e99095d802717f53ff784'/>
<id>b3acb6cd4059dfb29a5e99095d802717f53ff784</id>
<content type='text'>
unify arm cache management except for non standard cache as ARM7TDMI

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
unify arm cache management except for non standard cache as ARM7TDMI

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Big white-space cleanup.</title>
<updated>2008-05-20T22:14:08+00:00</updated>
<author>
<name>Wolfgang Denk</name>
<email>wd@denx.de</email>
</author>
<published>2008-05-20T14:00:29+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=53677ef18e25c97ac613349087c5cb33ae5a2741'/>
<id>53677ef18e25c97ac613349087c5cb33ae5a2741</id>
<content type='text'>
This commit gets rid of a huge amount of silly white-space issues.
Especially, all sequences of SPACEs followed by TAB characters get
removed (unless they appear in print statements).

Also remove all embedded "vim:" and "vi:" statements which hide
indentation problems.

Signed-off-by: Wolfgang Denk &lt;wd@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit gets rid of a huge amount of silly white-space issues.
Especially, all sequences of SPACEs followed by TAB characters get
removed (unless they appear in print statements).

Also remove all embedded "vim:" and "vi:" statements which hide
indentation problems.

Signed-off-by: Wolfgang Denk &lt;wd@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[Makefile] Sort COBJS in lib_&lt;arch&gt; Makefiles</title>
<updated>2008-02-27T10:00:47+00:00</updated>
<author>
<name>Marian Balakowicz</name>
<email>m8@semihalf.com</email>
</author>
<published>2008-02-27T10:00:47+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=823afe7cefe00dafefc6696c1cc7aa828c394234'/>
<id>823afe7cefe00dafefc6696c1cc7aa828c394234</id>
<content type='text'>
Signed-off-by: Marian Balakowicz &lt;m8@semihalf.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Marian Balakowicz &lt;m8@semihalf.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of /home/git/u-boot</title>
<updated>2008-02-21T16:18:01+00:00</updated>
<author>
<name>Marian Balakowicz</name>
<email>m8@semihalf.com</email>
</author>
<published>2008-02-21T16:18:01+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=20c93959330aba8b5bbdbfde1ef319e99eba235d'/>
<id>20c93959330aba8b5bbdbfde1ef319e99eba235d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ARM: cleanup duplicated exception handlingcode</title>
<updated>2008-02-14T09:38:21+00:00</updated>
<author>
<name>Andreas Engel</name>
<email>andreas.engel@ericsson.com</email>
</author>
<published>2008-01-14T09:06:52+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=6d0943a6be99977d6d853d51749e9963d68eb192'/>
<id>6d0943a6be99977d6d853d51749e9963d68eb192</id>
<content type='text'>
Move duplicated exception handling code into lib_arm.

Signed-off-by: Andreas Engel &lt;andreas.engel@ericsson.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move duplicated exception handling code into lib_arm.

Signed-off-by: Andreas Engel &lt;andreas.engel@ericsson.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[new uImage] Rename architecture specific bootm code files</title>
<updated>2008-02-07T00:12:57+00:00</updated>
<author>
<name>Marian Balakowicz</name>
<email>m8@semihalf.com</email>
</author>
<published>2008-01-31T12:20:06+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=4a995edec1ac163d9326d143ffe2b47e7543407f'/>
<id>4a995edec1ac163d9326d143ffe2b47e7543407f</id>
<content type='text'>
Implementation of the do_bootm_linux() and other bootm helper routines is
architecture specific code. As such it resides in lib_&lt;arch&gt; directories
in files named &lt;arch&gt;_linux.c

This patch renames those files to a more clear and accurate
lib_&lt;arch&gt;/bootm.c form.

List of the renamed files:
   lib_arm/armlinux.c -&gt; lib_arm/bootm.c
   lib_avr32/avr32_linux.c -&gt; lib_avr32/bootm.c
   lib_blackfin/bf533_linux.c -&gt; lib_blackfin/bootm.c
   lib_i386/i386_linux.c -&gt; lib_i386/bootm.c
   lib_m68k/m68k_linux.c -&gt; lib_m68k/bootm.c
   lib_microblaze/microblaze_linux.c -&gt; lib_microblaze/bootm.c
   lib_mips/mips_linux.c -&gt; lib_mips/bootm.c
   lib_nios/nios_linux.c -&gt; lib_nios/bootm.c
   lib_nios2/nios_linux.c -&gt; lib_nios2/bootm.c
   lib_ppc/ppc_linux.c -&gt; lib_ppc/bootm.c
   lib_sh/sh_linux.c -&gt; lib_sh/bootm.c

Signed-off-by: Marian Balakowicz &lt;m8@semihalf.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implementation of the do_bootm_linux() and other bootm helper routines is
architecture specific code. As such it resides in lib_&lt;arch&gt; directories
in files named &lt;arch&gt;_linux.c

This patch renames those files to a more clear and accurate
lib_&lt;arch&gt;/bootm.c form.

List of the renamed files:
   lib_arm/armlinux.c -&gt; lib_arm/bootm.c
   lib_avr32/avr32_linux.c -&gt; lib_avr32/bootm.c
   lib_blackfin/bf533_linux.c -&gt; lib_blackfin/bootm.c
   lib_i386/i386_linux.c -&gt; lib_i386/bootm.c
   lib_m68k/m68k_linux.c -&gt; lib_m68k/bootm.c
   lib_microblaze/microblaze_linux.c -&gt; lib_microblaze/bootm.c
   lib_mips/mips_linux.c -&gt; lib_mips/bootm.c
   lib_nios/nios_linux.c -&gt; lib_nios/bootm.c
   lib_nios2/nios_linux.c -&gt; lib_nios2/bootm.c
   lib_ppc/ppc_linux.c -&gt; lib_ppc/bootm.c
   lib_sh/sh_linux.c -&gt; lib_sh/bootm.c

Signed-off-by: Marian Balakowicz &lt;m8@semihalf.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
