07 Feb, 2014
1 commit
-
Signed-off-by: Alexey Brodkin
Cc: Vineet Gupta
Cc: Francois Bedard
Cc: Wolfgang Denk
Cc: Heiko Schocher
25 Jan, 2014
1 commit
-
Commit 643aae1406c93ddc64fcf8c136b47cdffd9c8ccd
deleted include/linux/config.h but missed to
delete _LINUX_CONFIG_H macro.
It is no longer used at all.Signed-off-by: Masahiro Yamada
16 Dec, 2013
1 commit
-
The next version VxWorks adopts device tree (for PowerPC and ARM) as its hardware
description mechanism. For PowerPC, the boot interface conforms to
the ePAPR standard, which is:void (*kernel_entry)(ulong fdt_addr,
ulong r4 /* 0 */,
ulong r5 /* 0 */,
ulong r6 /* EPAPR_MAGIC */, ulong r7 /* IMA size */,
ulong r8 /* 0 */, ulong r9 /* 0 */)For ARM, the boot interface is:
void (*kernel_entry)(void *fdt_addr)
Signed-off-by: Miao Yan
[trini: Fix build error when !CONFIG_OF_FDT is set, typo on PowerPC,
missing extern ft_fixup_num_cores]
Signed-off-by: Tom Rini
22 Nov, 2013
1 commit
-
Very often a constant pointer is passed to this function, so we should
declare this, since map_to_sysmem() does not change the pointer.Signed-off-by: Simon Glass
15 Oct, 2013
1 commit
-
Signed-off-by: Wolfgang Denk
08 Oct, 2013
1 commit
-
This function, if implemented by the board, provides a microsecond
timer. The granularity may be larger than 1us if hardware does not
support this.Signed-off-by: Simon Glass
Signed-off-by: Rajeshwari S Shinde
Reviewed-by: Jagannadha Sutradharudu Teki
05 Oct, 2013
1 commit
04 Oct, 2013
1 commit
-
Currently the non-secure switch is only done for the boot processor.
To enable full SMP support, we have to switch all secondary cores
into non-secure state also.So we add an entry point for secondary CPUs coming out of low-power
state and make sure we put them into WFI again after having switched
to non-secure state.
For this we acknowledge and EOI the wake-up IPI, then go into WFI.
Once being kicked out of it later, we sanity check that the start
address has actually been changed (since another attempt to switch
to non-secure would block the core) and jump to the new address.The actual CPU kick is done by sending an inter-processor interrupt
via the GIC to all CPU interfaces except the requesting processor.
The secondary cores will then setup their respective GIC CPU
interface.
While this approach is pretty universal across several ARMv7 boards,
we make this function weak in case someone needs to tweak this for
a specific board.The way of setting the secondary's start address is board specific,
but mostly different only in the actual SMP pen address, so we also
provide a weak default implementation and just depend on the proper
address to be set in the config file.Signed-off-by: Andre Przywara
21 Sep, 2013
1 commit
20 Sep, 2013
2 commits
-
Without those it's very easy to make mistakes when for instance
the 'size' field is more than just a constant.Signed-off-by: Mischa Jonker
Cc: Alexey Brodkin
Cc: Marek Vasut
Cc: Anton Staaf
Cc: Tom Rini
Cc: Wolfgang Denk -
Fix various misspellings of things like "environment", "kernel",
"default" and "volatile", and throw in a couple grammar fixes.Signed-off-by: Robert P. J. Day
25 Jul, 2013
1 commit
24 Jul, 2013
2 commits
-
Signed-off-by: Wolfgang Denk
[trini: Fixup common/cmd_io.c]
Signed-off-by: Tom Rini -
Add a header file, setup.h, which copy from Linux source code,
this file contain structures are used to pass initialisation parameters
to Linux. Enable this function on adp-ag101/adp-ag101p targetSigned-off-by: Kuan-Yu Kuo
Cc: Macpaul Lin
26 Jun, 2013
1 commit
-
Add a library which supports tracing of execution using built-in gcc
features and a microsecond timer. This can be used to record a list of
function which are executed, along with a timestamp for each. Later
this information can be sent to the host for processing.Signed-off-by: Simon Glass
05 Jun, 2013
1 commit
-
There are two implementations of abortboot(). Turn these into two separate
functions, and create a single abortboot() which calls either one or the
other.Also it seems that nothing uses abortboot() outside main, so make it static.
At this point there is no further use of CONFIG_MENU in main.c.
Signed-off-by: Simon Glass
Reviewed-by: Joe Hershberger
15 May, 2013
2 commits
-
The Freescale MPC8220 Power Architecture processors have long reached
EOL; Freescale does not even list these any more on their web site.Remove the code to avoid wasting maitaining efforts on dead stuff.
Signed-off-by: Wolfgang Denk
Cc: Andy Fleming -
This seems to be a common function for several architectures, so create
a common function rather than duplicating the code in each arch.Also make an attempt to avoid introducing #ifdefs in the new code, partly
by removing useless #ifdefs around function declarations in the image.h
header.Signed-off-by: Simon Glass
06 May, 2013
1 commit
-
We can use a common global method for calculating minimum of
3 numbers. Put the same in 'common header' and let 'ehci'
use it.Signed-off-by: Vivek Gautam
Acked-by: Tom Rini
03 May, 2013
2 commits
-
The prt_mpc512x_clks() function isn't referenced
anywhere and its prototype is wrong. Remove it.Signed-off-by: Anatolij Gustschin
02 May, 2013
2 commits
-
For ISO we check the block size of the device if this is != the CD sector
size we assume that the device has no ISO partition.Signed-off-by: Egbert Eich
-
Disks beyond 2T in size use blocksizes of 4096 bytes. However a lot of
code in u-boot still assumes a 512 byte blocksize.
This patch fixes the handling of GPTs.Signed-off-by: Egbert Eich
01 May, 2013
2 commits
-
This conversion is required in a number of places in U-Boot. Add a
standard function to provide this feature, so we avoid all the different
variations in the way it is coded.Signed-off-by: Simon Glass
-
In many cases, pointers to memory are passed around, and these pointers
refer to U-Boot memory, not host memory. This in itself is not a
problem.However, in a few places, we cast that pointer back to a ulong (being
a U-Boot memory address). It is possible to convert many of these cases
to avoid this. However there are data structures (e.g. struct
bootm_headers) which use pointers. We could with a lot of effort adjust
the structs and all code that uses them to use ulong instead of pointers.This seems like an unacceptable cost, since our objective with sandbox
is to minimise the impact on U-Boot code while maximising the features
available to sandbox.Therefore, create a map_to_sysmem() function which converts from a
pointer to a U-Boot address. This can be used sparingly when needed.Signed-off-by: Simon Glass
12 Apr, 2013
3 commits
-
Following the removal of the smdk6400 board, the s3c64xx SoC becomes unused, so
remove associated code. It will still be possible to restore it later from the
Git history if necessary.Signed-off-by: Benoît Thébaudeau
-
Commit e05e5de7fae5bec79617e113916dac6631251156 made the 2 1st parameters of
ARM's relocate_code() useless since it moved the code handling them to crt0.S.
So, drop these parameters.Signed-off-by: Benoît Thébaudeau
-
Commit e05e5de7fae5bec79617e113916dac6631251156 made ARM's relocate_code()
return to its caller, but it did not update its declaration accordingly.Fixing this function declaration fixes dropped C code following calls to
relocate_code().Signed-off-by: Benoît Thébaudeau
16 Mar, 2013
2 commits
-
This adds ppc features to the generic post-relocation board init.
Signed-off-by: Simon Glass
-
This file handles common pre-relocation init for boards which use
the generic framework.It starts up the console, DRAM, performs relocation and then jumps
to post-relocation init.Signed-off-by: Simon Glass
Tested-by: Wolfgang Denk
Acked-by: Wolfgang Denk
01 Mar, 2013
3 commits
-
We might as well use this common function instead of repeating the same
code.Signed-off-by: Simon Glass
-
Sandbox doesn't actually provide U-Boot access to the machine's physical
memory. Instead it provides a RAM buffer of configurable size, and all
memory accesses are within that buffer. Sandbox memory starts at 0 and
is CONFIG_DRAM_SIZE bytes in size. Allowing access outside this buffer
might produce unpredictable results in the event of an error, and would
expose the host machine's memory architecture to the sandbox U-Boot.Most U-Boot functions assume that they can just access memory at given
address. For sandbox this is not true.Add a map_sysmem() call which converts a U-Boot address to a system
address. In most cases this is a NOP, but for sandbox it returns a
pointer to that memory inside the RAM buffer.To get a U-Boot feature to work correctly within sandbox, you should call
map_sysmem() to get a pointer to the address, and then use that address for
any U-Boot memory accesses.Signed-off-by: Simon Glass
-
The buffer cannot be changed by this function, so change the buffer
pointer to a const. This allows callers with const pointer to use the
function without a cast.Signed-off-by: Simon Glass
11 Jan, 2013
1 commit
-
Some boards want to report more than just memory size. For example, it
might be useful to display the memory type (DDR2, DDR3) or manufacturer.Add a weak function to support this requirement, accessed through a new
'meminfo' command.Any example of the DRAM: output is below, just for illustration:
SMDK5250 # meminfo
DRAM: 2 GiB Elpida DDR3 @ 800MHzSigned-off-by: Simon Glass
09 Jan, 2013
1 commit
-
Move all the C runtime setup code from every start.S
in arch/arm into arch/arm/lib/crt0.S. This covers
the code sequence from setting up the initial stack
to calling into board_init_r().Also, rewrite the C runtime setup and make functions
board_init_*() and relocate_code() behave according to
normal C semantics (no jumping across the C stack any
more, etc).Some SPL targets had to be touched because they use
start.S explicitly or for some reason; the relevant
maintainers and custodians are cc:ed.Signed-off-by: Albert ARIBAUD
14 Dec, 2012
1 commit
-
Move the getenv_yesno() to env_common.c and change most checks for
'y' or 'n' to use this helper.Signed-off-by: Joe Hershberger
05 Nov, 2012
1 commit
-
u-boot's byteorder headers did not contain endianness attributions
for use with sparse, causing a lot of false positives. Import the
kernel's latest definitions, and enable them by including compiler.h
and types.h. They come with 'const' added for some swab functions, so
fix those up, too:include/linux/byteorder/big_endian.h:46:2: warning: passing argument 1 of '__swab64p' discards 'const' qualifier from pointer target type [enabled by default]
Also, note: u-boot's historic __BYTE_ORDER definition has been
preserved (for the time being at least).We also remove ad-hoc barrier() definitions, since we're including
compiler.h in files that hadn't in the past:macb.c:54:0: warning: "barrier" redefined [enabled by default]
In addition, including compiler.h in byteorder changes the 'noinline'
definition to expand to __attribute__((noinline)). This fixes
arch/powerpc/lib/bootm.c:bootm.c:329:16: error: attribute '__attribute__': unknown attribute
bootm.c:329:16: error: expected ')' before '__attribute__'
bootm.c:329:25: error: expected identifier or '(' before ')' tokenpowerpc sparse builds yield:
include/common.h:356:22: error: marked inline, but without a definition
the unknown-reason inlining without a definition is considered obsolete
given it was part of the 2002 initial commit, and no arm version was
'fixed.'also fixed:
ydirectenv.h:60:0: warning: "inline" redefined [enabled by default]and:
Configuring for devconcenter - Board: intip, Options: DEVCONCENTER
make[1]: *** [4xx_ibm_ddr2_autocalib.o] Error 1
make: *** [arch/powerpc/cpu/ppc4xx/libppc4xx.o] Error 2
powerpc-fsl-linux-size: './u-boot': No such file
4xx_ibm_ddr2_autocalib.c: In function 'DQS_autocalibration':
include/asm/ppc4xx-sdram.h:1407:13: sorry, unimplemented: inlining failed in call to 'ppc4xx_ibm_ddr2_register_dump': function body not available
4xx_ibm_ddr2_autocalib.c:1243:32: sorry, unimplemented: called from hereand:
In file included from crc32.c:50:0:
crc32table.h:4:1: warning: implicit declaration of function '___constant_swab32' [-Wimplicit-function-declaration]
crc32table.h:4:1: error: initializer element is not constant
crc32table.h:4:1: error: (near initialization for 'crc32table_le[0]')Signed-off-by: Kim Phillips
[trini: Remove '#endif' in include/common.h around setenv portion]
Signed-off-by: Tom Rini
03 Nov, 2012
1 commit
-
This includes were outside an #ifdef CONFIG_PPC, but there is not reason
to exclude powerpc from using them.Move the declaration outside the #ifdef.
Signed-off-by: Simon Glass
16 Oct, 2012
2 commits
-
As the board seems to be unmaintained for some time, lets remove
the support in mainline completely.Signed-off-by: Stefan Roese
Cc: James MacAulay
Acked-by: Marek Vasut -
Since the IOP480 (PPC401/3 variant from PLX) is only used on 2
boards that are not actively maintained, lets remove support
for it completely. This way the ppc4xx code will get a bit cleaner.Signed-off-by: Stefan Roese
Acked-by: Matthias Fuchs
Acked-by: Marek Vasut