Commit graph

36 commits

Author SHA1 Message Date
Sascha Hauer
83b0a5ae05 restart: replace reset_cpu with registered restart handlers
This replaces the reset_cpu() function which every SoC or board must
provide with registered handlers. This makes it possible to have multiple
reset functions for boards which have multiple ways to reset the machine.
Also boards which have no way at all to reset the machine no longer
have to provide a dummy reset_cpu() function.

The problem this solves is that some machines have external PMICs or
similar to reset the system which have to be preferred over the
internal SoC reset, because the PMIC can reset not only the SoC but also
the external devices.

To pick the right way to reset a machine each handler has a priority. The
default priority is 100 and all currently existing restart handlers are
registered with this priority. of_get_restart_priority() allows to retrieve
the priority from the device tree which makes it possible for boards to
give certain restart handlers a higher priority in order to use this one
instead of the default one.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-08-27 21:37:03 +02:00
Sascha Hauer
ce5299b0bf printf: move panic() to common/misc.c
panic() is not really a printf like function, so move it to common/misc.c.
This is done because we want to have printf support in the PBL, but PBL
has it's own panic() implementation.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-05 11:30:58 +01:00
Sascha Hauer
b67b2671c2 treewide: Add missing includes
A lot of files rely on include/driver.h including include/of.h (and
this including include/errno.h. include the files explicitly so we can
eventually get rid of including of.h from driver.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-11-08 15:42:04 +01:00
Sascha Hauer
338b6e7edc export model as globalvar
The model string is valuable information. Make it available to scripts
with a globalvar.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 08:40:56 +02:00
Sascha Hauer
068bed22a6 Set model and hostname at boardlevel
With multiboard support the compiletime generated BOARDINFO string
gets more and more meaningless. This removes it from Kconfig and
replaces it with a variable that can be set at boardlevel.

Also many boards have a standard setting for the hostname in the
environment. This patch also moves the standard to C code by calling
barebox_set_hostname().

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 08:40:55 +02:00
Sascha Hauer
774580c2bd Make hostname available to C Code
The boards often have a sane default for the hostname. Provide a C
function for setting/getting it.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 08:40:37 +02:00
Sascha Hauer
775ba3c093 introduce barebox_set_model
Instead of calling of_get_model() in barebox_get_model() add a
barebox_set_model() and use it to set the boardinfo once it's
available from the devicetree.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 08:40:37 +02:00
Sascha Hauer
b986f4f1ee remove remaining references of CONFIG_BOARDINFO
With this all code uses barebox_get_model() and no longer
a compile time generated string.

Also this renames barebox_boardinfo() to barebox_get_model()
since we are going to add the corresponding _set_ function
and 'model' corresponds to the devicetree notion.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-08-16 08:40:37 +02:00
Sascha Hauer
0686fe0edf add function to get boardinfo string
When using devicetrees the boardinfo (or model) can be obtained
from the devicetree. Add a function to get the boardinfo so that
we have a chance to add information from the devicetree.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-06-24 21:39:07 +02:00
Sascha Hauer
77322aa896 Treewide: remove address of the Free Software Foundation
The FSF address has changed in the past. Instead of updating it
each time the address changes, just drop it completely treewide.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-09-17 10:57:41 +02:00
Sascha Hauer
6188685091 Make errno a positive value
Normally errno contains a positive error value. A certain unnamed developer
mixed this up while implementing U-Boot-v2. Also, normally errno is never
set to zero by any library function.
This patch fixes this.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-05-14 08:35:54 +02:00
Sascha Hauer
104a6a7ccf ARM: Allow to compile in thumb-2 mode
This shrinks the resulting binary size by ~25%. Exceptions
are still handled in arm mode, so we have to explicitely
put .arm directives into the exception code. Thumb-2 mode
has been tested on i.MX51 Babbage board.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-03-06 09:37:59 +01:00
Sascha Hauer
16babe2c7f add string for -ETIMEDOUT
-ETIMEDOUT is a common error value, so print the string rather
than just the number.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-02-19 18:51:03 +01:00
Sascha Hauer
56d0e7f274 errno: add strings for network related error messages
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-06-17 08:28:29 +02:00
Juergen Beisert
5ed894e9a6 Combine memory initialization with the main memory functions.
Memory allocation is very simple in u-boot-v2. So, it makes also sense to
add the "operating system" emulation layer into the main memory management
source file, to keep them at one place and simple.

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
2009-12-10 13:09:02 +01:00
Sascha Hauer
0f64e5c39d add strerror function
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-05-25 16:52:35 +02:00
Sascha Hauer
98c68ca413 fix errno_str without text error messages
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-06 11:08:34 +02:00
Sascha Hauer
54ec87f0cb Print error number
When we do not have the appropriate error string compiled in, print
at least the number

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-11-10 17:40:09 +01:00
Carsten Schlote
7538c06300 [general] Fixed crash in memory allocator
Fixed a bug in sbrk(). When the new mem_brk value returned by
sbrk_no_zero() returns NULL to indicate 'out of memory', sbrk()
still memset()s innocent memory at address NULL.

For some architectures this memory might be empty, so this never
causes a problem. Anyway on Coldfire I still have my vector table
there. Nuking them isn't really a good idea :-)

Signed-off-by: Carsten Schlote <c.schlote@konzeptpark.de>
2008-02-20 20:41:57 +01:00
Sascha Hauer
2443c7a6f1 export symbols 2007-10-07 14:27:24 +02:00
Sascha Hauer
17c3e64578 export functions 2007-10-04 12:37:06 +02:00
Sascha Hauer
52473038dc display malloc space on startup 2007-09-26 15:24:51 +02:00
Sascha Hauer
75a10b942c svn_rev_706
add file headers
2007-07-05 18:02:19 +02:00
Sascha Hauer
b2c5310d4d svn_rev_653
restructure tree, add reginfo command
2007-07-05 18:02:14 +02:00
Sascha Hauer
716336f1d4 svn_rev_603 2007-07-05 18:02:09 +02:00
Sascha Hauer
614ff8b708 svn_rev_532
- Do not zero memory in mem_malloc_init because it takes
  a long time with big memory. Instead zero it when we actually
  need the memory.
- Add sbrk_no_zero() function to allocate memory without zeroing
  it. This is usefull for scratch mem devices which occupy large
  chunks of memory
2007-07-05 18:02:02 +02:00
Sascha Hauer
2c835efc1b svn_rev_457 2007-07-05 18:01:55 +02:00
Sascha Hauer
5335912a97 svn_rev_441
add errno_str()
2007-07-05 18:01:54 +02:00
Sascha Hauer
3b76ed1021 svn_rev_370
fixups for last commit
2007-07-05 18:01:48 +02:00
Sascha Hauer
46743ea28f svn_rev_369
include asm-generic in errno.h instead of all other files
2007-07-05 18:01:47 +02:00
Sascha Hauer
3dcd63a9bd svn_rev_332
make errno messages optional
2007-07-05 18:01:44 +02:00
Sascha Hauer
5c1f086941 svn_rev_267 2007-07-05 18:01:38 +02:00
Sascha Hauer
4cef4bdd6e svn_rev_262
add errno strings
2007-07-05 18:01:38 +02:00
Sascha Hauer
f9a07ee39b svn_rev_181
add perror function (which does not do much yet)
2007-07-05 18:01:30 +02:00
Sascha Hauer
0c48f25ade svn_rev_173
WIP
2007-07-05 18:01:29 +02:00
Sascha Hauer
53d3195be1 svn_rev_167
ppc startup cleaunup
2007-07-05 18:01:29 +02:00