John Linn [Mon, 19 Dec 2011 20:35:55 +0000 (12:35 -0800)]
Xilinx: ARM: NAND: wait for device ready after device reset
When moving from PEEP to Zynq, the ID of the flash was not
being read at all, only zeroes. The driver was not waiting
for the device to be ready after resetting the device and
since Zynq is so much faster it was a problem.
John Linn [Tue, 13 Dec 2011 20:58:04 +0000 (12:58 -0800)]
Xilinx: ARM: adding SD boot mode
SD boot was not supported in the automatic boot mode, now
it is. Even though this loads a ramdisk you can just ignore
the ramdisk if the root file system is on SD in an EXT2
file system.
John Linn [Tue, 13 Dec 2011 20:55:56 +0000 (12:55 -0800)]
Xilinx: ARM: SD: change divisor to speed it up
In the former change, a divisor too low seems cause problems
with the lower speed cards. This is attempt to have something
that's tolerable even if it's not the optimal.
This allows the kernel and ramdisk to be loaded reasonably
quickly.
The new board has only 2 choices for PHY addresses, 0x7 and
0x17 which are based on the jumpers. 0x17 was what was being
used on EP107 so assuming we set the jumpers we shouldn't
need this change which would not have worked (0x16 phy addr).
Andrei Simion [Wed, 16 Nov 2011 19:34:21 +0000 (11:34 -0800)]
Xilinx: ARM: Use different xparameters for silicon and EP107.
If CONFIG_EP107 is defined, include 'xparameters.h' and 'xparameters_pss.h',
otherwise include 'xparameters_zynq.h' and 'xparameters_pss_zynq.h'.
The Zynq variants of xparameters are subject to change. For now, the
only difference is XPAR_CPU_CORTEXA9_CORE_CLOCK_FREQ_HZ is 216664500 Hz instead of 12500000 Hz and XPAR_XUARTPSS_1_CLOCK_HZ is 13756480 Hz instead of 50000000 Hz to reflect silicon.
Andrei Simion [Thu, 10 Nov 2011 03:29:19 +0000 (19:29 -0800)]
Xilinx: ARM: SCU timer input frequency update.
Modified the 'xpele.h' configuration such that the timer input
frequency is always half of the CPU core clock frequency from
'xparameters.h' (PERIPHCLK in the TRM) instead of hard-coded
to 5 MHz.
Andrei Simion [Wed, 9 Nov 2011 02:16:51 +0000 (18:16 -0800)]
Xilinx: ARM: Flexible baud rate calculation.
Values used in U-boot's baud rate calculation are chosen in such
a way to keep the error between the target and calculated baud
rate under 3%.
The header was changed to avoid hardcoding values such as the ones
used in the baud rate calculation. The UART input frequency uses
the value defined in 'xparameters.h'.
John Linn [Fri, 23 Sep 2011 18:05:11 +0000 (12:05 -0600)]
Xilinx: ARM: Changed environment to load device trees
The Linux kernel is now defaulting to device tree mode such
that a device tree blob is to be loaded into memory when
loading Linux from each of the flash memory types.
This only changed the commands in the environment for
each flash to also load the device tree blob.
I found that the commands can get too long such that
u-boot gives an error so they are not as verbose as
previously.
John Linn [Mon, 25 Jul 2011 21:05:46 +0000 (15:05 -0600)]
Xilinx: ARM: SD: reset interrupt status after operation
The interrupt status of the SD was not being cleared after the
operation was completed which was causing problems for other
applications that were loaded.
Brian Hill [Tue, 24 May 2011 19:00:37 +0000 (13:00 -0600)]
Xilinx: ARM: Adjust CONFIG_SYS_HZ to 1000.
Adjust CONFIG_SYS_HZ to 1000. Parts of the networking code assume that
the clock tick is natively expressed in milliseconds (and don't adjust
the values by using CONFIG_SYS_HZ).
Brian Hill [Tue, 26 Apr 2011 14:54:27 +0000 (08:54 -0600)]
Xilinx: ARM: Make use of boot mode register possible with u-boot
The environment variable modeboot is set to something appropriate
based on the contents of the boot mode register.
EXAMPLE:
For bootmode 2, modeboot will be set to "run norboot".
This method of booting can be utilized via bootcmd = "run modeboot"
or not, if the user prefers that u-boot and the kernel come from
separate storage devices.
Brian Hill [Thu, 21 Apr 2011 15:34:46 +0000 (09:34 -0600)]
Xilinx: ARM: Update SD driver to handle MMC_RSP_R2 properly.
Update SD driver to handle MMC_RSP_R2 properly. 136 bit response was
not being copied properly. This prevented some SD cards from being
detected correctly.
Brian Hill [Thu, 10 Mar 2011 19:39:06 +0000 (12:39 -0700)]
Xilinx: ARM: Introduce Device Tree support.
Add support for fdt and bootm commands.
Use of bootm requires a proper uImage, which may be built by:
mkimage -A arm -O linux -T kernel -C none -a 0x8000 -e 0x8000 -n 'Linux' -d arch/arm/boot/Image uImage
John Linn [Thu, 25 Nov 2010 00:06:58 +0000 (17:06 -0700)]
Xilinx: ARM: Updating boot commands for all flash types
Now that NAND, QSPI and NOR are all working, the boot command is
less clear.
This commit adds environment vars norboot, nandboot, and qspiboot
which can be used with the run command (run <env var>) to boot
from any of the memories.
John Linn [Mon, 15 Nov 2010 19:46:32 +0000 (12:46 -0700)]
Xilinx: ARM: Updated boot command to use QSPI
U-boot has to be built differently when it is to be written to
QSPI vs NOR flash. Since both use execute in place mode, the header
in u-boot has to have the address to jump to in flash for the boot
rom to use.
The boot command copies the kernel and root file system from flash
to ram and it has to know which addresses for flash (QSPI or NOR).
Wolfgang Denk [Tue, 28 Sep 2010 21:02:05 +0000 (23:02 +0200)]
mpc512x: fix build issues
Commit 800eb0964 "POST cleanup." removed file
arch/powerpc/cpu/mpc512x/common.c but failed to remove the reference
to it from arch/powerpc/cpu/mpc512x/Makefile which causes somewhat
obscure build errors:
make[1]: *** No rule to make target `/work/wd/tmp-ppc/arch/powerpc/cpu/mpc512x/.depend', needed by `_depend'. Stop.
Steve Sakoman [Mon, 20 Sep 2010 16:55:24 +0000 (09:55 -0700)]
ARMV7: OMAP3: Update Beagle xM pinmux with USB hub and DVI gpio setup
This patch adds missing pinmux setup for 4 GPIO signals used on the Beagle xM:
- USB hub reset (gpio_56)
- P8 USB hub reset (gpio_63)
- DVI enable (gpio_129)
- P8 DVI enable (gpio_170)
Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Thomas Weber [Tue, 28 Sep 2010 06:06:25 +0000 (08:06 +0200)]
README: Fix description of version numbering scheme
The version numbering scheme was changed in Oct, 2008.
This patch brings the documentation to the actual level.
The description is taken from:
http://www.denx.de/wiki/U-Boot/ReleaseCycle
Signed-off-by: Thomas Weber <weber@corscience.de>
Changed text slightly. Signed-off-by: Wolfgang Denk <wd@denx.de>
Stefan Roese [Thu, 16 Sep 2010 12:01:53 +0000 (14:01 +0200)]
ppc4xx/fdt/flash: Change fdt_fixup_nor_flash_node() to not rely on cs size
This patch changes the behaviour of the fdt_fixup_nor_flash_node()
function. Now it doesn't patch the size of the "reg" property with the
chip-select size, but with the size returned from the new function
flash_get_bank_size(). This function will return per weak default the
flash size of the bank (bank = chip-select numer) detected by the flash
driver. If this does not fit your needs, this function may be overridden
by a board specific one.
For this the parameters needed to be changed. So I intentionally squashed
the PPC4xx stuff using this routine into this patch. Otherwise it would
not be git-bisectable anymore.
The board specific function for the AMCC/APM Ebony eval board is now
included in this patch version.
Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Detlev Zundel <dzu@denx.de> Cc: Gerald Van Baren <vanbaren@cideas.com> Cc: Wolfgang Denk <wd@denx.de>
Stefan Roese [Tue, 14 Sep 2010 07:38:18 +0000 (09:38 +0200)]
ppc4xx: POST UART: Use in/out_8() io-accessor functions
This patch fixes a problem in the PPC4xx POST UART driver. This driver
incorrectly used the in/out8() io-accessor functions. This could lead to
problems since these functions don't guarantee execution ordering. This
patch now replaces these functions with the correct ones.
Additionally the driver is converted to using the NS16550 struct instead
of macros for the register offsets.
And some common code is factored out for better maintainability.
Mike Frysinger [Mon, 20 Sep 2010 21:54:09 +0000 (17:54 -0400)]
Blackfin: bfin_spi: use same gpio cs define as Linux
Linux uses an offset of 8 to switch from hardware cs to a gpio cs,
so have u-boot use the same value. Also make sure it is public
for boards to access.
Timur Tabi [Fri, 27 Aug 2010 20:45:47 +0000 (15:45 -0500)]
video: cfb_console: fix definition and usage of CURSOR_xxx macros
The CURSOR_ON, CURSOR_OFF, and CURSOR_SET macros are defined incorrectly. If
cursor support is disabled, then these macros are defined to nothing, but
then they are used like this:
if (console_col < CONSOLE_COLS)
CURSOR_OFF
console_row++;
which was compiled like this:
if (console_col < CONSOLE_COLS)
console_row++;
This is obviously not what was intended.
Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Detlev Zundel <dzu@denx.de>
Michael Zaidman [Mon, 20 Sep 2010 06:51:53 +0000 (08:51 +0200)]
POST cleanup.
- Revives POST for blackfin arch;
- Removes redundant code:
arch/blackfin/lib/post.c
arch/powerpc/cpu/ppc4xx/commproc.c
arch/powerpc/cpu/mpc512x/common.c
- fixes up the post_word_{load|store} usage.
Signed-off-by: Michael Zaidman <michael.zaidman@gmail.com> Acked-by: Detlev Zundel <dzu@denx.de> Tested-by: Anatolij Gustschin <agust@denx.de>
List of the maintainers of the affected by patch boards: Cc: Stephan Linz <linz@li-pro.net> Cc: Denis Peter <d.peter@mpl.ch> Cc: Matthias Fuchs <matthias.fuchs@esd-electronics.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Stefan Roese <sr@denx.de> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Niklaus Giger <niklaus.giger@netstal.com> Cc: Larry Johnson <lrj@acm.org> Cc: Feng Kan <fkan@amcc.com>
Mike Frysinger [Mon, 20 Sep 2010 18:36:18 +0000 (14:36 -0400)]
setlocalversion: add some more fallbacks for git describe
If working out of a custom git tree that lacks annotated tags, the
'git describe' operation spews "fatal: cannot describe" errors all
over the place. So add some fallback code in case the best naming
was unable to locate something useful.
Wolfgang Denk [Sat, 18 Sep 2010 23:03:20 +0000 (01:03 +0200)]
mmc: fix compiler warnings
Commit d2bf29e3 caused a number of compiler warnings:
mmc.c: In function 'mmc_bwrite':
mmc.c:97: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'long unsigned int'
mmc.c:97: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'lbaint_t'
mmc.c: In function 'mmc_bread':
mmc.c:229: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'long unsigned int'
mmc.c:229: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'lbaint_t'
Fix these.
Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Lei Wen <leiwen@marvell.com>
Daniel Hobi [Wed, 15 Sep 2010 17:46:26 +0000 (19:46 +0200)]
tools/env: allow option "-n" for fw_printenv
In commit bd7b26f8 (Tools: set multiple variable with fw_setenv utility),
the option parsing was changed to getopt_long(3), but option "-n"
of fw_printenv was not included.
This leads to an error message "invalid option -- 'n'" on stderr,
although the output on stdout is correct.
Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
Timur Tabi [Fri, 27 Aug 2010 20:45:47 +0000 (15:45 -0500)]
video: cfb_console: fix definition and usage of CURSOR_xxx macros
The CURSOR_ON, CURSOR_OFF, and CURSOR_SET macros are defined incorrectly. If
cursor support is disabled, then these macros are defined to nothing, but
then they are used like this:
if (console_col < CONSOLE_COLS)
CURSOR_OFF
console_row++;
which was compiled like this:
if (console_col < CONSOLE_COLS)
console_row++;
This is obviously not what was intended.
Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Detlev Zundel <dzu@denx.de>