| Commit message (Collapse) | Author | Age | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch fixes a problem on systems where the NOR flash is attached
to a 64 bit bus. The toggle bit detection in flash_toggle() is based
on the assumption that the same flash address is read twice without
any other interjacent flash accesses. However, on 32 bit systems the
function flash_read64() [as currently implemented] does not perform
an atomic 64 bit read - instead, this is broken down into two 32 bit
read accesses on addresses "addr" and "addr + 4". So instead of
reading a 64 bit value twice from "addr", we see a sequence of 4 32
bit reads from "addr", "addr + 4", "addr", and "addr + 4". The
consequence is that flash_toggle() fails to work.
This patch implements a simple, but somewhat ugly solution, as it
avoids the use of flash_read64() in this critical place (by breaking
it down manually into 32 bit read operations) instead of rewriting
flash_read64() such to perform atomic 64 bit reads as one could
expect. However, such a rewrite would require the use of floating
point load operations, which becomes pretty complex:
save MSR;
set Floating Point Enable bit in MSR;
use "lfd" instruction to perform atomic 64 bit read;
use "stfd" to store value to temporary variable on stack;
load u64 value from temporary variable;
restore saved MSR;
return u64 value;
The benefit-cost ratio of such an implementation was considered too
bad to actually attempt this, especially as we can expect that such
an implementation would not only have a bigger memory footprint but
also cause a performance degradation.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
|
|\ \ |
|
| | |
| | |
| | |
| | | |
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This patch brings PMC440 board support up to date:
- fix GPIO configuration
- add misc_init_f()
- use better values for usbact variable
- fix USB 2.0 phy reset sequence
- shrink BAR2 to save PCI address space
- add FDT support
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This patch fixes the PMC440 BSP commands painit and selfreset
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | | |
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This patch fixes esd's loadpci command when not all
memory on adapter boards is accessable via PCI.
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
-Codingstyle cleanup
-Remove unused GPIO define
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | | |
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Xilinx ppc440 and ppc405 have many similarities. This patch merge the
config files of both infrastuctures
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@uam.es>
Signed-off-by: Stefan Roese <sr@denx.de>
|
| |/
| |
| |
| |
| |
| |
| | |
Arches doesn't use PerCS3 but GPIO43, so let's configure the GPIO
pin multiplexing correctly
Signed-off-by: Stefan Roese <sr@denx.de>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There's currently an off-by-one bug in fdt_subnode_offset_namelen()
which causes it to keep searching after it's finished the subnodes of
the given parent, and into the subnodes of siblings of the original
node which come after it in the tree.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
fdt_add_mem_rsv() requires space for a struct fdt_reserve_entry
(16 bytes), so make sure that fdt_resize at least adds that much
padding, no matter what the location or size of the fdt is.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Acked-by: Andy Fleming <afleming@freescale.com>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Some Blackfin UARTs are read-to-clear while others are write-to-clear.
This can cause problems when we poll the LSR and then later try and handle
any errors detected.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Common Blackfin code already announces CPU information.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The USB/LAN register settings are not actually used/needed in order to
drive things from U-Boot, so drop the code.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure that the start.o object is always the first object in our linker
script regardless of configuration settings, and add some linker symbols
so the ldr utility can properly locate the initcode when generating a LDR.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use the sti instruction to set the initial interrupt mask rather than
banging on the core IMASK MMR to save both space and time.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We should use the algorithm in the Linux kernel so that the UART divisor
calculation is more accurate. It also fixes problems on some picky UARTs
that have sampling anomalies.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Having to decode hwerrcause/excause values is a pain, so automate it.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure we report RETI/IPEND correctly.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The hang function already tells you to reboot, so no point in showing it
twice.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
During cpu init, make sure we initialize the CEC properly so that
interrupts can fire and be handled while U-Boot is running.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If booting out of NAND, we need to make sure we initialize it properly
before attempting to relocate the environment.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | |
| | |
| | | |
The SWRST register is a 16bit, not 32bit, register.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
| |/
|/|
| |
| | |
Signed-off-by: Bartlomiej Sieka <tur@semihalf.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The patch is following the commit 392438406041415fe64ab8748ec5ab5ad01d1cf7
mpc86xx: use r4 instead of r2 in lock_ram_in_cache and unlock_ram_in_cache
This is needed in unlock_ram_in_cache() because it is called from C and
will corrupt the small data area anchor that is kept in R2.
lock_ram_in_cache() is modified similarly as good coding practice, but
is not called from C.
Signed-off-by: Nick Spence <nick.spence@freescale.com>
also, the r2 is used as global data pointer.
Signed-off-by: Dave Liu <daveliu@freescale.com>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The current calculation will fail to cover all memory if
its size is not a power of two.
Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Dave Liu <daveliu@freescale.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The commit 67256678f00c09b0a7f19e862e5c1847553d31bc add
the another global data pointer save, but in fact the
global data pointer will be initialized in the board_init_r,
so remove it such as the 85xx/83xx family.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Acked-by: Kumar Gala <kumar.gala@freescale.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I believe these code was copied from 74xx family, but for
86xx, it is unused.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Acked-by: Kumar Gala <kumar.gala@freescale.com>
|