| Age | Commit message (Collapse) | Author |
|
Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk
This change is intended to clean up the top-level directory structure
and more closely mimic Linux's directory organization.
Signed-off-by: Peter Tyser <[email protected]>
|
|
The CPUDIR variable points to the location of a target's CPU directory.
Currently, it is set to cpu/$CPU. However, using $CPUDIR will allow for
more flexibility in the future. It lays the groundwork for reorganizing
U-Boot's directory structure to support a layout such as:
arch/$ARCH/cpu/$CPU/* (architecture with multiple CPU types)
arch/$ARCH/cpu/* (architecture with one CPU type)
Signed-off-by: Peter Tyser <[email protected]>
|
|
Now that the linker script is preprocessed with -ansi, there is no need to
manually undef the bfin define.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Mike Frysinger <[email protected]>
|
|
If someone uses the FDPIC toolchain to compile U-Boot, make sure the
linker knows to use the normal ABI target rather than the FDPIC one.
This wasn't needed with older toolchains, but when we fixed the linker
such that the default target changed based on tuple, this broke.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
The strictest alignment on Blackfin systems is 32bits (since that is the
largest load instruction), so don't force 256byte alignment here.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
The reloc_off member no longer exists, so drop it. Also change this
function so that it is always compiled and prevents latent issues like
this in the future.
Reported-by: Peter Meerwald <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Robin Getz <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Nothing in U-Boot uses runtime C++ exceptions/unwinding, so there is no
need to list this section.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
This is just Blackfin catching up with every one else.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Some common code uses more of the io.h funcs than we currently provide, so
pull in all of the ones from the linux kernel.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Cliff Cai <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Mike Frysinger <[email protected]>
|
|
While the initdram() function makes sense on some arches, it doesn't for
Blackfin systems as it's always implemented the same way.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
The length of the sections is fixed at link time, so let the linker do the
calculation rather than doing it ourselves at runtime.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Use the common config option for extracting the environment for embedding
into LDR files and clarify the LDR-specific option.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
The default Blackfin boot would display the MAC address for the first NIC,
but this relies on the environment. The current net multi stack no longer
writes the default hardware settings to the environment, so most of the
time the display shows all zeros. This can be pretty confusing and really
doesn't add anything useful, so just drop it.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Blackfin pieces like commit 0630535e2d062dd73c1ceca5c6125c86d1127a49.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Luigi 'Comio' Mantellini <[email protected]>
Signed-off-by: Ben Warren <[email protected]>
|
|
Rather than maintain/extend the current ifeq($(ARCH)) mess that exists in
the standalone Makefile, push the setting up of LOAD_ADDR out to the arch
config.mk (and rename to STANDALONE_LOAD_ADDR in the process). This keeps
the common code clean and lets the arch do whatever crazy crap it wants in
its own area.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Peter Tyser <[email protected]>
|
|
This lays the groundwork to allow architectures to share a common
mem_malloc_init().
Note that the x86 implementation was not modified as it did not fit the
mold of all other architectures.
Signed-off-by: Peter Tyser <[email protected]>
|
|
Signed-off-by: Peter Tyser <[email protected]>
|
|
The display_global_data() function generated warnings with pretty much
every variable.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Since the Blackfin ABI favors higher scratch registers by default, use the
last scratch register (P3) for global data rather than the first (P5).
This allows the compiler's register allocator to use higher number scratch
P registers, which in turn better matches the Blackfin instruction set,
which reduces the size of U-Boot by more than 1024 bytes...
Signed-off-by: Robin Getz <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Now that the common code preprocesses the linker script, the Blackfin code
no longer needs to do it.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Sadly, the Blackfin linker script unification lost a small #ifdef logic
needed on older parts. Restore that CONFIG_BFIN_BOOTROM_USES_EVT1 logic.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
This cleans up U-Boot's toplevel directory a bit and makes the
architecture 'config.mk' file naming and location similar to board
and cpu 'config.mk' files
Signed-off-by: Peter Tyser <[email protected]>
|
|
Part of the mini Blackfin ABI with operating systems is that they can use
0x4f0-0x4f8 to pass log buffers to/from bootloaders. So add support to
U-Boot for reading the log buffer.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
So far the console API uses the following naming convention:
======Extract======
typedef struct device_t;
int device_register (device_t * dev);
int devices_init (void);
int device_deregister(char *devname);
struct list_head* device_get_list(void);
device_t* device_get_by_name(char* name);
device_t* device_clone(device_t *dev);
=======
which is too generic and confusing.
Instead of using device_XX and device_t we change this
into stdio_XX and stdio_dev
This will also allow to add later a generic device mechanism in order
to have support for multiple devices and driver instances.
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
Edited commit message.
Signed-off-by: Wolfgang Denk <[email protected]>
|
|
A few debug-type commands used to dump the raw icache/dcache data. Useful
when trying to track down cache-related bugs.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
All the Blackfin linker scripts were duplicated across the board dirs with
no difference save from the semi-often used ENV_IS_EMBEDDED option. So
unify all of them in the lib_blackfin/ dir and for the few boards that
need to embedded the environment directly, add a LDS_BOARD_TEXT define for
them to customize via their board config file. This is much simpler than
forcing them to duplicate the rest of the linker script.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
This patch moves the malloc initialization before calling flash_init().
Upcoming changes to the NOR FLASH common CFI driver with optional
MTD infrastructure and MTD concatenation support will call malloc().
And nothing really speaks against enabling malloc just a little earlier
in the boot stage. Some architectures already enable malloc before
calling flash_init() so they don't need any changes here.
Signed-off-by: Stefan Roese <[email protected]>
Cc: Wolfgang Denk <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Scott McNutt <[email protected]>
Cc: Shinya Kuribayashi <[email protected]>
Cc: Nobuhiro Iwamatsu <[email protected]>
Cc: Daniel Hellstrom <[email protected]>
Cc: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
Cc: John Rigby <[email protected]>
|
|
If there is some problem in the flash init/checking code, it's nicer to see
the message "Flash:" before crashing. This way the source of the problem
is a bit more straightforward.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Unify all of the net-related init code in the common Blackfin board init
code to clean up the ifdef mess a bit.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Since the on-chip MAC does not have an eeprom or similar interface, force
all Blackfin boards that use this driver to setup the board data with a
proper MAC.
Signed-off-by: Mike Frysinger <[email protected]>
CC: Ben Warren <[email protected]>
|
|
Knowing the booting source of the part is useful, especially when the part
can switch dynamically between sources.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Rather than using 8bit transfers for everything, use 8/16/32 bit transfers
as usable with the source/destination addresses and the count size.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
We have to make sure the DMA channel is actually disabled in hardware before
attempting to reprogram it. Otherwise the new settings are ignored and we
end up with random hangs/failures.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Take the cache flush functions from the kernel as they use hardware loops in
order to get optimal performance.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
For systems with CONFIG_NET_MULTI disabled, bi_enetaddr does not get setup
based on $ethaddr, so set it up.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Calculating the clocks requires a bit of calls to gcc math functions, so
cache the values after the first run since they'll most likely never
change once U-Boot is up and running.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Save some time by using CONFIG_POST in the Makefile rather than C files.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Make sure we save the value of RETX at power on and then pass it on to the
kernel so that it can nicely debug a "double-fault-caused-a-reset" crash.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Respect the CONFIG_SYS_MONITOR_LEN define rather than assuming a size of
128kB when setting up the default flash protection region for U-Boot
itself.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
When setting up the global data, rather than relying on sizeof(), use the
common CONFIG_SYS_GBL_DATA_SIZE define.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
Here are the Blackfin-specific and board-independent pieces for status leds.
Signed-off-by: Mike Frysinger <[email protected]>
|
|
The common code takes care of calling i2c_init() when needed, so no point
in us doing it as well.
Signed-off-by: Mike Frysinger <[email protected]>
|