Andy Fleming [Mon, 13 Aug 2007 19:49:59 +0000 (14:49 -0500)]
MPC85xx BA bits not set for 3-bit bank address DIMM
The current implementation does not set the number of bank address bits
(BA) in the processor. The default assumes 2 logical bank bits. This
works fine for a DIMM that uses devices with 4 internal banks (SPD
byte17 = 0x4) but needs to be set appropriately for a DIMM that uses
devices with 8 internal banks (SPD byte17 = 0x8).
Signed-off-by: Greg Davis <DavisG@embeddedplanet.com>
Andy Fleming [Mon, 13 Aug 2007 19:38:06 +0000 (14:38 -0500)]
Fix minor 85xx warnings
Some patches had inserted warnings into the build:
* mpc8560ads declared data without using it
* cpu_init declared ecm and immap without using it in all CONFIGs
* MPC8548CDS.h had its default filenames changed so that they contained
"\m" in the paths. Made the defaults not Windows-specific (or
anything-specific)
Signed-off-by: Andy Fleming <afleming@freescale.com>
Ed Swarthout [Fri, 27 Jul 2007 06:50:51 +0000 (01:50 -0500)]
8544ds PCIE support
PCI1 LAW mapping should use CFG_PCI1_MEM_PHY and not _BASE address.
Enable LBC and ECM errors and clear error registers.
Add tftpflash env var to get uboot from tftp server and flash it.
Add pci/pcie convenience env vars to display register space:
"run pcie3regs" to see all pcie3 ccsr registers
"run pcie3cfg" to see all cfg registers
Whitespace cleanup and MPC8544DS.h
Enable CONFIG_INTERRUPTS.
Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com> Acked-by: Andy Fleming <afleming@freescale.com>
Andy Fleming [Tue, 14 Aug 2007 06:34:21 +0000 (01:34 -0500)]
85xx start.S cleanup and exception support
From: Ed Swarthout <Ed.Swarthout@freescale.com>
Support external interrupts from platform to eliminate system hangs.
Define CONFIG_INTERRUPTS board configure option to enable.
Enable ecm, ddr, lbc, and pci/pcie error interrupts in PIC.
Remove extra cpu initialization redundant with hardware initialization.
Whitespace cleanup.
Define and use _START_OFFSET consistent with other processors using
ppc_asm.tmpl
Move additional code from .text to boot page to make room for
exception vectors at start of image.
Handle Machine Check, External and Critical exceptions.
Fix e500 machine check error determination in traps.c
TEXT_BASE can now be 0xfffc_0000 - which cuts binary image in half.
Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com> Acked-by: Andy Fleming <afleming@freescale.com>
Calculate the data timeout based on values from the CSD instead of
just using a hardcoded DTOR value. This is a backport of a similar fix
in BSP 2.0, with one additional fix: the DTOCYC value is rounded up
instead of down.
include/asm-avr32/div64.h was recently moved to include/div64.h, but
cpu/at32ap/interrupts.c wasn't properly updated (an earlier version of
the patch was merged perhaps?)
This patch updates cpu/at32ap/interrupts.c so that the avr32 port
compiles again.
Instead of always using the largest blocksize the card supports, check
if it can support smaller block sizes and use 512 bytes if possible.
Most cards do support this, and other parts of u-boot seem to have
trouble with block sizes different from 512 bytes.
Wolfgang Denk [Sun, 12 Aug 2007 13:11:38 +0000 (15:11 +0200)]
Adapt board configuration and fix kernel crash on MCC200 board.
The update procedure was modified to turn off the USB subsystem
before exit for MCC200 and TRAB. This is necessary as otherwise the
USB controller continues to write periodically to system memory!
MCC200-specific notes:
- the patch disables the magic key check for MCC200
- the patch contains the configuration changes made
for the new revision of the board.
Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
Kim Phillips [Tue, 17 Jul 2007 18:56:53 +0000 (13:56 -0500)]
fdt: do board setup based on fdt address specified on bootm line
The last fdt patch to bootm did board setup based on the address
specified by a prior fdt address command invocation. The bootm
code, as its call to fdt_chosen does, should use the fdt specified
by the user on the bootm command. Note this restores full
functionality for the 8360's existing default boot environment
values, e.g. 'run nfsboot' (i.e. no having to 'fdt addr $fdtaddr'
before booting a kernel).
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
In the patch titled "Create new fdt boardsetup command..." I removed the
call to ft_board_setup() from the routine fdt_chosen(), but I forgot
to add a direct call back into cmd_bootm.c
This fixes the oversight by adding the direct call to the bootm command.
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
Gerald Van Baren [Tue, 26 Jun 2007 03:25:28 +0000 (23:25 -0400)]
Create new fdt boardsetup command, fix bug parsing [] form of set values.
Previously ft_board_setup() was called by fdt_chosen() which was not
really correctly structured. This splits ft_board_setup() out by creating
a new fdt boardsetup command.
Fix a bug when parsing fdt set command values which have the square
bracket form [00 11 22 33] - the length was updated incorrectly in when
parsing that form.
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
Gerald Van Baren [Thu, 17 May 2007 02:39:59 +0000 (22:39 -0400)]
Fix cmd_fdt line lengths, refactor code.
Break lines that were greater than 80 characters in length.
Move the fdt print and property parsing code to separate static functions
to reduce coding clutter in the fdt_cmd handling body.
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
Gerald Van Baren [Sat, 12 May 2007 13:45:46 +0000 (09:45 -0400)]
Reorganize and fix problems (returns) in the bootm command.
Do *NOT* return after the "point of no return" has been passed.
If something goes wrong, the board must be reset after that point.
Move the "Transferring control to Linux" debug message back to where it
belongs: just before transferring control to linux.
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
Print more than the raw libfdt error message strings. This is especially
useful for cluing in the user when the bootm command aborts due to
blob problems.
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
Sergey Kubushyn [Fri, 10 Aug 2007 18:26:18 +0000 (20:26 +0200)]
[ARM] TI DaVinci support, hopefully final
Add support for the following DaVinci boards:
- DV_EVM
- SCHMOOGIE
- SONATA
Changes:
- Split into separate board directories
- Removed changes to MTD_DEBUG (or whatever it's called)
- New CONFIG_CMD party line followed
- Some cosmetic fixes, cleanup etc.
- Patches against the latest U-Boot tree as of now.
- Fixed CONFIG_CMD_NET in net files.
- Fixed CONFIG_CMD_EEPROM for schmoogie.
- Made sure it compiles and works (forceenv() link problem) on SCHMOOGIE and
DV_EVM. Can't check if it works on SONATA, don't have a board any more,
but it at least compiles.
Here is an excerpt from session log on SCHMOOGIE...
Jon Loeliger [Mon, 6 Aug 2007 22:39:44 +0000 (17:39 -0500)]
8641hpcn: Do correct sized pointer math.
When I rebased Ed's patch and cleaned up a few compilation
problems, I apparently rebased my brain on crack first.
Fix that by doing (char *) sized pointer math as needed.
Dirk Behme [Thu, 2 Aug 2007 15:41:14 +0000 (17:41 +0200)]
Move 64bit division from avr32 to generic lib
Move the 64bit division from lib_avr32 to lib_generic. With this, all
boards can do_div/__div64_32 if needed, not only avr one. Code is put
to lib_generic, so no larger memory footprint if not used. No code
modifications. Thanks for proposal by HÃ¥vard Skinnemoen.
Kim Phillips [Thu, 26 Jul 2007 00:25:33 +0000 (19:25 -0500)]
mpc83xx: add support for the MPC8323E RDB
MPC8323E based board with 64MB fixed SDRAM, 16MB flash,
five 10/100 ethernet ports connected via an ICPlus IP175C
switch, one PCI slot, and serial. Features not supported
in this patch are SD card interface, 2 USB ports, and the
two phone ports.
Signed-off-by: Michael Barkowski <michael.barkowski@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Jerry Van Baren [Thu, 5 Jul 2007 01:34:24 +0000 (21:34 -0400)]
mpc83xx: Fix errors when CONFIG_OF_LIBFDT is enabled
Several node strings were not correct (trailing slashes and properties
in the strings)
Added setting of the timebase-frequency.
Improved error messages and use debug() instead of printf().
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Jerry Van Baren [Thu, 5 Jul 2007 01:27:30 +0000 (21:27 -0400)]
mpc83xx: Replace fdt_node_offset() with fdt_find_node_by_path().
The new name matches more closely the kernel's name, which is also
a much better description.
These are the mpc83xx changes made necessary by the function name change.
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com> Acked-by: Gerald Van Baren <vanbaren@cideas.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Dave Liu [Mon, 25 Jun 2007 02:41:56 +0000 (10:41 +0800)]
mpc83xx: Add support for the display of reset status
83xx processor family has many reset sources, such as
power on reset, software hard reset, software soft reset,
JTAG, bus monitor, software watchdog, check stop reset,
external hard reset, external software reset.
sometimes, to figure out the fault of system, we need to
know the cause of reset early before the prompt of
u-boot present.
Signed-off-by: Dave Liu <daveliu@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Dave Liu [Mon, 25 Jun 2007 05:21:12 +0000 (13:21 +0800)]
mpc83xx: Revise the MPC8360EMDS readme doc
When the rev2.x silicon mount on the MPC8360EMDS baord,
and if you are using the u-boot version after the commit 3fc0bd159103b536e1c54c6f4457a09b3aba66ca.
to make the ethernet interface usable, we have to setup
the jumpers correctly.
Signed-off-by: Dave Liu <daveliu@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Timur Tabi [Tue, 3 Jul 2007 18:46:32 +0000 (13:46 -0500)]
FSL I2C driver programs the two I2C busses differently
The i2c_init() function in fsl_i2c.c programs the two I2C busses differently.
The second I2C bus has its slave address programmed incorrectly and is
missing a 5-us delay.
Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Timur Tabi [Tue, 3 Jul 2007 18:04:34 +0000 (13:04 -0500)]
Update SCCR programming in cpu_init_f() to support all 83xx processors
Update the cpu_init_f() function in cpu/mpc83xx/cpu_init.c to program the
bitfields for all 83xx processors. The code to update some bitfields was
compiled only on some processors. Now, the bitfields are programmed as long
as the corresponding CFG_SCCR option is defined in the board header file.
This means that the board header file should not define any CFG_SCCR macros
for bitfields that don't exist on that processor, otherwise the SCCR will be
programmed incorrectly.
Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>