The old swap function tended to clobber unrelated pins and screw up masks.
Rewrite the thing from scratch so it only uses the resources it needs.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
The BF53x/BF56x parts do not have an on-chip ROM to boot LDRs out of
arbitrary memory locations, so implement a basic one in software.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Now that real documentation has been released for the OTP interface and
the on-chip ROM wrt writing/timings, implement support for reading/writing
as well as dumping/locking.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Some devices have no UART device pulled out, so allow people to disable the
driver completely in favor of other methods (like JTAG-console).
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
The Blackfin JTAG has the ability to pass data via a back-channel without
halting the processor. Utilize that channel to emulate a console.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
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 <vapier@gentoo.org>
People often ask questions about the init process and when things go
from flash to relocated base, so clarify the comments a bit.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
As pointed out by Ivan Koryakovskiy, the initialization code was not
actually respecting the CONFIG_CLKIN_HALF option when configuring the
PLL_CTL register.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This video driver used to live in the Blackfin cpu directory, but it was
lost during the unification process. This brings it back.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
The DEBUG code in initdram() is quite old and was never really useful, so
just drop it altogether. Common Blackfin debug code does a better job.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Some of the flash defines weren't in the correct location and caused build
problems in some configurations, so let's move types and defines to better
local locations.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
The current Blackfin i2c driver does not work properly with certain devices
due to it breaking up transfers incorrectly. This is a rewrite of the
driver and relocates it to the newer place in the source tree.
Also remove duplicated I2C speed defines in Blackfin board configs and
disable I2C slave address usage since it isn't implemented.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
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 <vapier@gentoo.org>
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 <vapier@gentoo.org>
Our dcache invalidate function doesn't just invalidate, it also flushes.
So rename the function accordingly and fix the dma_memcpy() function so it
doesn't inadvertently corrupt the data destination.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Creating a new dma_memcpy() function that skips all cache checks allows us
to use the function in very early init where the cache is not yet setup.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
extend commit c70564e6b1
"NAND: Fix cache and memory inconsistency issue" to add the cache.o dependency
to the simpc8313 build and fix this:
...Large Page NAND...Configuring for SIMPC8313 board...
nand_boot_fsl_elbc.o: In function `nand_boot':
nand_spl/board/sheldon/simpc8313/nand_boot_fsl_elbc.c:150: undefined reference to `flush_cache'
make[1]: *** [/home/r1aaha/git/u-boot-mpc83xx/nand_spl/u-boot-spl] Error 1
make: *** [nand_spl] Error 2
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Remove command name from all command "usage" fields and update
common/command.c to display "name - usage" instead of
just "usage". Also remove newlines from command usage fields.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
The pcs440ep's led command usage formatting is non-standard. It
was made standard in preparation for larger command usage updates.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
The diufb command usage formatting is non-standard. It was
made standard in preparation for larger command usage updates.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Rather than have the board code initialize SATA automatically during boot,
make the user manually run "sata init". This brings the SATA subsystem in
line with common U-Boot policy.
Rather than having a dedicated weak function "is_sata_supported", people
can override sata_initialize() to do their weird board stuff. Then they
can call the actual __sata_initialize().
Signed-off-by: Mike Frysinger <vapier@gentoo.org>