Ben Gardiner [Thu, 14 Oct 2010 21:26:32 +0000 (17:26 -0400)]
da850evm: fix linux bootparam address
This patch fixes the LINUX_BOOT_PARAM_ADDR define to be based off of
PHYS_SDRAM_1 instead of CONFIG_SYS_MEMTEST_START. On da830 they are the same
thing but on da850 the CONFIG_SYS_MEMSTART define is offset from the
PHYS_SDRAM_1 start.
Without this patch it is not possible to boot linux on da850 -- bootm hangs
at "Uncompressing Linux... done, booting the kernel."
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Ben Gardiner [Thu, 14 Oct 2010 21:26:29 +0000 (17:26 -0400)]
da850evm: basic MII EMAC support
The current da850evm support in u-boot/master omits any use of
the davinci EMAC. This patch adds basic support for the EMAC using
the MII PHY found on the baseboard of the EVM. The MAC address is
read from the environment variable 'ethadd'. Note that this is
different from the da850evm support in the u-boot omapl1 tree
where the MAC address is read from SPI flash.
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
CC: Sandeep Paulraj <s-paulraj@ti.com>
CC: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
CC: Ben Warren <biggerbadderben@gmail.com>
CC: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Ben Gardiner [Thu, 14 Oct 2010 21:26:27 +0000 (17:26 -0400)]
da850evm: add mtdpart and ubi commands with NAND support
This patch enables also the mtdpart, ubi and ubifs commands when NAND support
is enabled.
Signed-off-by: Ben Gardiner<bengardiner@nanometrics.ca>
To: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Ben Gardiner [Thu, 14 Oct 2010 21:26:25 +0000 (17:26 -0400)]
da850evm: setup NAND support under CONFIG_USE_NAND
The current da850evm config is missing the pieces for NAND support that can be
found in Sandeep's u-boot-davinci tree [1].
This patch adds NAND support in the spirit of the support in the u-boot-davinci
tree where NAND support for the da850evm can be enabled by putting a single
'#define CONFIG_USE_NAND' at the top of the include/configs/da850evm.h file.
[1] http://arago-project.org/git/people/?p=sandeep/u-boot-davinci.git;a=tree
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Ben Gardiner [Thu, 14 Oct 2010 21:26:22 +0000 (17:26 -0400)]
da850evm: setup the NAND flash timings
The default NAND flash timings are very conservative. This patch assigns the
timings reccomended in the recent linux kernel patch [1] from Sekhar Nori. The
speedup, as reported in that patch, is 5.3x for reads.
[1] http://www.spinics.net/lists/arm-kernel/msg100278.html
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
CC: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Ben Gardiner [Thu, 14 Oct 2010 21:26:19 +0000 (17:26 -0400)]
da850evm : enable NAND even when not in NAND boot mode
There is currently no NAND pinmux enabled by the da850evm board setup code.
This is fine when booting from NAND since the early boot code (UBL) will setup
the pinmux; however, when the boot mode is any other setting NAND is unusable
when enabled in the config.
This patch adds a pinmux list for NAND and enables it when NAND is enabled in
the config. Tested by booting from SPI on the da850evm and verifying NAND
was usable.
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
CC: Nick Thompson <nick.thompson@ge.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Ben Gardiner [Thu, 14 Oct 2010 21:26:17 +0000 (17:26 -0400)]
davinci_nand, trivial : use symbolic ECC start command
The ECC calculations were started by writing 1 << 13 to the nand FCR register;
that value is also defined as DAVINCI_NANDFCR_4BIT_CALC_START in emif_defs.h.
This patch substitutes the macro DAVINCI_NANDFCR_4BIT_CALC_START for the
magic number '1 << 13'.
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Enric Balletbo i Serra [Thu, 14 Oct 2010 20:57:39 +0000 (16:57 -0400)]
OMAP3: Add support for the OMAP3 IGEP module.
The IGEP module is a low-power, high performance production-ready
system-on-module (SOM) based on TI's OMAP3 family.The IGEP module
solution based upon TI OMAP3 provides a low-power/low-cost platform
for a variety of consumer/industrial/medical devices.
Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Enric Balletbo i Serra [Thu, 14 Oct 2010 20:54:59 +0000 (16:54 -0400)]
OMAP3: Add support for the IGEP v2 board.
The IGEP v2 board is a low-cost, fan-less and industrial temperature
range single board computer that unleashes laptop-like performance and
expandability without the bulk, expense, or noise of typical desktop
machines. Its architecture shares much in common with other OMAP3 boards.
Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Acked-by: Steve Sakoman <steve.sakoman@linaro.org>
Tested-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Enric Balletbo i Serra [Thu, 14 Oct 2010 20:53:27 +0000 (16:53 -0400)]
OMAP3: SDRC: Introduce Numonyx DDR type
Introduce Numonyx DDR timings and provide CONFIG_OMAP3_NUMONYX_DDR
config options to allow for platform files to setup their timings.
Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Acked-by: Steve Sakoman <steve.sakoman@linaro.org>
Tested-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Steve Sakoman [Thu, 30 Sep 2010 03:59:51 +0000 (20:59 -0700)]
ARMV7: OMAP4: Implement relocation for Panda and OMAP4430SDP
This patch fixes the build breakage introduced by the recent relocation
changes for ARMV7
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Steve Sakoman [Fri, 1 Oct 2010 04:46:52 +0000 (21:46 -0700)]
ARMV7: OMAP3: Fix bug in get_sdr_cs_offset()
This patch fixes a typo in the routine to calculate the cs offset
based upon the contents of the SDRC cs_cfg register. This function
mistakenly shifts the CS1STARTLOW field 17 bits right instead of
17 bits left.
This hasn't been an issue to date because all OMAP3 boards currently
are configured to have zeros in this field.
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Steve Sakoman [Wed, 29 Sep 2010 20:58:34 +0000 (13:58 -0700)]
ARMV7: OMAP3: Enable cache support on Overo
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Steve Sakoman [Wed, 29 Sep 2010 20:54:19 +0000 (13:54 -0700)]
ARMV7: OMAP3: Implement relocation for Overo
This patch fixes the build breakage introduced by the recent relocation
changes for ARMV7
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Sukumar Ghorai [Tue, 14 Sep 2010 08:22:34 +0000 (13:52 +0530)]
ARMV7: OMAP4: Enable saveenv to eMMC for SDP4430
The SDP4430 does not have onboard NAND, it has eMMC on the second
MMC slot. This patch adds support for saving the u-boot environment
to eMMC.
Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com>
Tested-by: Steve Sakoman <steve@sakoman.com>
Steve Sakoman [Mon, 20 Sep 2010 04:21:07 +0000 (21:21 -0700)]
ARMV7: OMAP4: Use generic mmc driver on Overo
This patch switches from the legacy mmc driver to the new generic mmc driver
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Steve Sakoman [Mon, 20 Sep 2010 04:19:48 +0000 (21:19 -0700)]
ARMV7: OMAP4: Use generic mmc driver on Beagle
This patch switches from the legacy mmc driver to the new generic mmc driver
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Sukumar Ghorai [Sun, 19 Sep 2010 03:59:54 +0000 (20:59 -0700)]
ARMV7: OMAP4: Use generic mmc driver on SDP4430
This patch switches from the legacy mmc driver to the new generic mmc driver
Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com>
Tested-by: Steve Sakoman <steve@sakoman.com>
Sukumar Ghorai [Sun, 19 Sep 2010 03:56:18 +0000 (20:56 -0700)]
ARMV7: OMAP4: Use generic mmc driver on Panda
This patch switches from the legacy mmc driver to the new generic mmc driver
Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com>
Tested-by: Steve Sakoman <steve@sakoman.com>
Sukumar Ghorai [Sun, 19 Sep 2010 03:32:33 +0000 (20:32 -0700)]
ARMV7: OMAP: Add new mmc driver compatible with CONFIG_GENERIC_MMC
OMAP boards currently use a legacy mmc driver. This patch adds a new
mmc driver which will work with the generic mmc driver in u-boot.
This new driver will work with both OMAP3 and OMAP4 boards.
This patch does not remove the old driver. It should remain in the
tree until all boards that use it switch to the new driver.
Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com>
Tested-by: Steve Sakoman <steve@sakoman.com>
Sukumar Ghorai [Mon, 20 Sep 2010 12:59:29 +0000 (18:29 +0530)]
MMC: Fix for capacity calculation on eMMC
The current mmc driver returns erroneous capacity information for
eMMC. The capacity of eMMC devices is available only in the ext-CSD
register. This patch add code to read the ext-CDSD register and
correctly calculate eMMC capacity.
Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com>
Acked-by: Steve Sakoman <steve@sakoman.com>
Steve Sakoman [Mon, 27 Sep 2010 21:46:34 +0000 (14:46 -0700)]
ARMV7: OMAP: Use default vendor/product ID for USB gadget
TI hasn't reserved a USB Product ID for gadgets, so use the default
vendor and product ID to avoid confusion.
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Wolfgang Denk [Sun, 17 Oct 2010 17:57:38 +0000 (19:57 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-imx
Loic Minier [Wed, 13 Oct 2010 20:37:14 +0000 (14:37 -0600)]
mx51evk: add u-boot.imx to ALL target
Signed-off-by: Loic Minier <loic.minier@linaro.org>
CC: stefano babic <sbabic@denx.de>
Steve Sakoman [Mon, 11 Oct 2010 12:51:39 +0000 (05:51 -0700)]
env_mmc: Fix crashing bug encountered after enabling ARM relocation
The crash was occuring in env_relocate because it was being called prior
to mmc_initialize. This patch moves the MMC initialization earlier in
the init process.
This patch also cleans up the env_relocate_spec code in env_mmc.c
Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Acked-by: Stefano Babic <sbabic@denx.de>
Wolfgang Denk [Wed, 13 Oct 2010 18:59:47 +0000 (20:59 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Wed, 13 Oct 2010 18:58:51 +0000 (20:58 +0200)]
Merge branch 'sf' of git://git.denx.de/u-boot-blackfin
Wolfgang Denk [Wed, 13 Oct 2010 18:57:34 +0000 (20:57 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-usb
Matthew McClintock [Wed, 13 Oct 2010 11:39:26 +0000 (13:39 +0200)]
common/fdt_support.c: fix compile error
Fix build error introduced in
beca5a5f5bf0d88125580e5e9c1730469cd50ab8
common/libcommon.a(fdt_support.o): In function `fdt_add_edid':
/local/hudson/jobs/mirrors-u-boot.git/workspace/common/fdt_support.c:1205: undefined reference to `fdt_increase_size'
make: *** [u-boot] Error 1
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Stefano Babic [Tue, 5 Oct 2010 12:05:11 +0000 (14:05 +0200)]
MX31: Add USB Host support to the QONG board
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Wed, 6 Oct 2010 07:00:01 +0000 (09:00 +0200)]
MX31: Add support for MXC EHCI controller
The patch adds the EHCI controller for the i.MX31 Soc.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Wed, 6 Oct 2010 06:59:26 +0000 (08:59 +0200)]
MX31: add support for setting pin pads
The patch adds a utility function and defines
to set the pad as it is done in linux.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Tue, 29 Jun 2010 09:48:24 +0000 (11:48 +0200)]
MX31: Add support to update FPGA bitstream
The patch adds the possibility to update the QONG
FPGA (a Lattice XP2-5E) with u-boot using some GPIOs
to drive the JTAG interface.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Fri, 1 Oct 2010 10:34:34 +0000 (12:34 +0200)]
MX31: Adding missing iomux pin to MX.31 registers
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Tue, 29 Jun 2010 09:47:48 +0000 (11:47 +0200)]
FPGA: add support for downloading Lattice bitstream
The patch adds support to load a Lattice's bitstream
image (called VME file) into a Lattice FPGA. The code
containing the state machine delivered as part of
Lattice's ispVMtools is integrated.
The FPGA is programmed using the JTAG interface. The
board maintainer must provide accessors to drive the
JTAG signals TCK, TMS, TDI and to get the value of the
input signal TDO.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Bryan Wu [Mon, 9 Aug 2010 18:58:24 +0000 (14:58 -0400)]
usb: musb: only write CLRDATATOG when appropriate
This is a change similar to what is already in the Linux driver. We
should only program the CLRDATATOG bit when the current mode indicates
that it is needed.
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Ludovic Courtès [Tue, 5 Oct 2010 20:04:26 +0000 (22:04 +0200)]
usb: Add support for multiple-LUN mass storage devices
This patch changes `usb_stor_scan' to scan all the LUNs of each mass
storage device. It also fixes the various commands to correctly set
the LUN field.
Notably, it allows each LUN of GuruPlug's microSD card reader to be
accessed.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Vitaly Kuzmichev [Wed, 22 Sep 2010 09:13:56 +0000 (13:13 +0400)]
USB-CDC: Prevent rx_req being enqueued twice
After gadget reinitializaton (after tftp has been done once)
packet_received may become equal to 1 due to nuking OUT_EP
while disabling it in eth_reset_config.
rx_submit called from usb_eth_init queues rx_req first time.
But the first call of usb_eth_recv from NetLoop queues rx_req
again due to packet_received = 1.
The following flow shows the path of functions calls when
this happens:
net/net.c:NetLoop
|
+-net/eth.c:eth_init
| ether.c:usb_eth_init
| |
| +-udc_driver:usb_gadget_handle_interrupts
| | udc_driver:...
| | ether.c:eth_setup
| | ether.c:eth_set_config
| | ether.c:eth_reset_config
| | udc_driver:usb_ep_disable
| | udc_driver:nuke
| | ether.c:rx_complete
| | ether.c: packet_received = 1;
| |
| +-ether.c:rx_submit
| udc_driver:usb_ep_queue --- The first time when rx_req is queued
|
+-net/eth.c:eth_rx
ether.c:usb_eth_recv
|
+-udc_driver:usb_gadget_handle_interrupts
| udc_driver:... --- no interrupts, returning
+-ether.c: if (packet_received) { ...
ether.c:rx_submit
udc_driver:usb_ep_queue --- The second time!
Signed-off-by: Vitaly Kuzmichev <vkuzmichev@mvista.com>
Vitaly Kuzmichev [Wed, 22 Sep 2010 09:13:55 +0000 (13:13 +0400)]
USB-CDC: Fix tx/rx_req memory leaks
Remove and fix needless and destructive operations with tx/rx_req.
1) 'req' in rx_complete is always not NULL and always equals to rx_req
2) Free allocated tx_req if rx_req allocation has failed
3) Do not zero out tx/rx_req in usb_eth_init, leave this for
eth_reset_config which will be called at the next use of usb0
4) Additional check in usb_eth_recv is not required
Signed-off-by: Vitaly Kuzmichev <vkuzmichev@mvista.com>
Marek Vasut [Mon, 20 Sep 2010 01:57:25 +0000 (03:57 +0200)]
USB: Make non-bulk delay longer in OHCI
This fixes TIMEOUT with my Kingston 32GB USB3.0 flashdrive, which I experienced
on my PXA270 (USB 1.1) Vpac270 board.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Andreas Bießmann [Fri, 24 Sep 2010 19:20:40 +0000 (21:20 +0200)]
board/armltd/integrator/split_by_variant.sh: fix 'echo -n'
This patch fixes an error when running MAKEALL for ARM9.
On OS X /bin/sh uses builtin echo which does not utilise '-n' switch.
GNU manual for builtins recomend to use here-document style to solve
this portability issue.
This patch removes the usage of 'echo -n' and replace by here-document
style or a oneline echo command.
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
CC: Peter Pearse <peter.pearse@arm.com>
Matt Waddel [Thu, 7 Oct 2010 21:48:46 +0000 (15:48 -0600)]
ARMV7: Fixed baudrate setting in pl01x driver
The pl01x serial driver was lacking the code to switch baudrates from the
command line. Fixed by simply saving the new baudrate and calling
serial_init() again. Also fixed CamelCase variables, I/O accessors and
comment style.
Signed-off-by: Matt Waddel <matt.waddel@linaro.org>
Matt Waddel [Thu, 7 Oct 2010 21:48:45 +0000 (15:48 -0600)]
ARMV7: Versatile Express Coretile CortexA9x4 support
Adds support for the ARM quad-core Cortex-A9 processor
This system includes a motherboard(Versatile Express), daughterboard
(Coretile), and SOC(Cortex-A9 quad core). The serial port, ethernet,
and flash systems work with these additions. The naming convention
is:
SOC -> CortexA9 quad core = ca9x4
daughterboard -> Coretile = ct
motherboard -> Versatile Express = vxp
This gives ca9x4_ct_vxp.c as the board support file.
Signed-off-by: Matt Waddel <matt.waddel@linaro.org>
Andreas Bießmann [Fri, 24 Sep 2010 21:31:43 +0000 (23:31 +0200)]
arch/arm/include/asm/sizes.h: cleanups
Merge several sizes.h in asm/arch subdirectories into a single
asm/sizes.h file.
Fixup usage of asm/arch/sizes.h in some files to use the merged file.
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Wolfgang Denk [Wed, 13 Oct 2010 07:59:13 +0000 (09:59 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-marvell
Ben Gardiner [Wed, 22 Sep 2010 21:32:49 +0000 (17:32 -0400)]
ARM: relocation: don't undef CONFIG_SYS_ARM_WITHOUT_RELOC
There were some #undef's of CONFIG_SYS_ARM_WITHOUT_RELOC added to a few board
configs as part of the arm relocation series; but these are not needed now as we
do not #undef what is not #defined in the first place.
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
CC: Heiko Schocher <hs@denx.de>
Heiko Schocher [Wed, 22 Sep 2010 12:06:33 +0000 (14:06 +0200)]
ARM: relocation: fix typo in comment
Signed-off-by: Heiko Schocher <hs@denx.de>
Prafulla Wadaskar [Thu, 30 Sep 2010 17:27:02 +0000 (22:57 +0530)]
Kirkwood: Changes specific to ARM relocation support
All Kirkwood based boards are supported for this new implementation
ref: docs/README.arm-relocation
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Prafulla Wadaskar [Thu, 30 Sep 2010 17:23:43 +0000 (22:53 +0530)]
kirkwood: added common config file mv-common.h
It is observed that, in most of the board configs the code is being
duplicated, also for any common change all board files needs update
This issue was under discussion from long on mailing list and we
converge on introducing common config file.
With this patch-
1. Total Kirkwood specific configuration code is reduced by 210 lines
2. All common configuration can be shared by multiple boards
3. Easy to manage common updates like ARM relocation changes
mv-common.h file is added to include/configs/
It contains all common configuration supported for all Kirkwood boards
The respective board configs are updated for its usage
Build tested for guruplug, mv88f6281gtw_ge, openrd_base,
rd6281a and sheevaplug
Binary execution tested for sheevaplug
Todo:
1. Other custom Kirkwood boards to be synced
2. The support to be extended for Orion5X based boards
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Prafulla Wadaskar [Thu, 30 Sep 2010 14:03:19 +0000 (19:33 +0530)]
Kirkwood: dram_init is moved to dram.c
For all Kirkwood boards so far dram_init function is duplicated
dram_init function is moved to dram.c and relevant code from all
board specific files removed
If any board needs specific dram init handling than standard one,
then, a macro CONFIG_SYS_BOARD_DRAM_INIT should be defined in
board config header file and the dram_init function can be put
in board specific source file
For ex. keymile boards
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Albert Aribaud [Thu, 7 Oct 2010 14:49:53 +0000 (20:19 +0530)]
orion5x: optimize window size computation
Signed-off-by: Chris Moore <moore@free.fr>
Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Prafulla Wadaskar [Mon, 20 Sep 2010 11:49:42 +0000 (17:19 +0530)]
Kirkwood: print_cpuinfo fixed for valid devid revid
Earlier Device Identification register was used to detect
the type for SoC, considering
88F6282 support to be added,
It is not possible to detect the same using current
algorithm.
With this patch, device ID is being read using PCIE devid
register, also valid chip revision ID will also be read and
displayed
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Albert Aribaud [Thu, 16 Sep 2010 15:00:30 +0000 (20:30 +0530)]
mvsata_ide: adjust port init sequence
mvsata_ide_initialize_port(): adjust init sequence (SStatus
should be checked only after all writes to SControl) and
return success/failure to ide_preinit().
Also, as some tests showed init durations in the hundreds
of us, raise the time-out to 01 ms to be on the safe side.
Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Reinhard Meyer [Tue, 5 Oct 2010 14:56:39 +0000 (16:56 +0200)]
sf: turn probe switch into a lookup table
This allows for arbitrarily long manufacturer ids following the JEDEC
standard of 0x7f continuation bytes. It also makes adding new entries
easier as it's just one element in an array. The downside is that it
increases code size a bit, but we're talking ~50 bytes.
Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Brent Darley [Wed, 29 Sep 2010 18:50:17 +0000 (13:50 -0500)]
TSI148: Fix argument parsing
This patch does 2 things:
- Fix the argument number assigned to the vdw (VME data width) value.
Previously, a nonexistent 7th arument was read as the vdw variable.
- Reduce the size of the argument array for the tsi148 command from
8 to 7. The tsi148 command itself is argument index 0, and the
maximum number arguments passed to the command is 6, making a total
of 7 for the array.
Signed-off-by: Brent Darley <bdarley@xes-inc.com>
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Wed, 15 Sep 2010 00:13:53 +0000 (19:13 -0500)]
powerpc: Remove warm reset entry point
No boards utilize the warm reset entry point, so remove it.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Wed, 15 Sep 2010 00:13:52 +0000 (19:13 -0500)]
ppmc7xx: Use _start as reset entry point
Previously the _warm_start label was used as an entry point. These 2
entry points should be functionally identical after the removal of the
BOOTFLAG_WARM define.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Wed, 15 Sep 2010 00:13:51 +0000 (19:13 -0500)]
powerpc: Zero out board info struct on bootup
This puts the board info struct in a known state and allows the removal
of other code which initialized board info fields to 0.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Stefan Roese [Mon, 13 Sep 2010 09:10:34 +0000 (11:10 +0200)]
cp/cmp: Add WATCHDOG_RESET in copy and compare loop
On some boards with a very short watchdog timeout, the "cp" and
"cmp" commands may reset the board. This patch adds some
watchdog resets inside the loops. Otherwise for example the lwmon5
board will reset while doing something like this:
=> cp.b
fc000000 1000000 100000
Signed-off-by: Stefan Roese <sr@denx.de>
Peter Tyser [Sun, 12 Sep 2010 22:38:49 +0000 (17:38 -0500)]
examples/standalone: Use gcc's -fno-toplevel-reorder
Using -fno-toplevel-reorder causes gcc to not reorder functions. This
ensures that an application's entry point will be the first function in
the application's source file.
This change, along with commit
620bbba524fbaa26971a5004793010b169824f1b
should cause a standalone application's entry point to be at the base of
the compiled binary. Previously, the entry point could change depending
on gcc version and flags.
Note -fno-toplevel-reorder is only available in gcc version 4.2 or
greater.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Ilya Yanok [Thu, 9 Sep 2010 21:03:34 +0000 (23:03 +0200)]
a4m072: support for SHOW_BOOT_PROGRESS feature using LED display
This patch adds support for displaying boot progress codes on a4m072 board
using LED display. As we can display only one symbol at any time on the hardware
(two symbols with blinking) we can't display progress codes directly and have
to map them to 2-symbol codes.
We use the following mapping on the a4m972 board:
[1, 8] U [100, 108] -> 5
[-9, -1] U [-101, -100] U [-113, -103] -> -5
[9, 14] U [120, 123] U [125, 129] -> 8
[-13, -10] U [-122, -120] U [-127, -124] U {-129} -> -8
{15} -> 9
[-32, -30] -> -A
[-40, -35] U [-51, -42] U [-58, -53] U
[-83, -80] U {-64, -130, -140, -150} -> -B
Other progress code are ignored. One symbol codes are displayed steady while
two-symbol codes are displayed using blinking. Boot progress codes are
displayed with decimal got unset (as opposed to 'display' command output).
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Ilya Yanok [Thu, 9 Sep 2010 21:03:33 +0000 (23:03 +0200)]
a4m072: led display support
This patch adds support for LED display on a4m072 board. Hardware is
capable of displaying only one symbol at any time. We support displaying
two symbols in software (via blinking).
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Ilya Yanok [Thu, 9 Sep 2010 21:03:32 +0000 (23:03 +0200)]
led_display: split led display support into generic and hw-dependent parts
Split the display command into generic interface and hardware-specific
realization for PDSP188x LED display found on hmi1001 and manroland
boards. Simple interface for LED displays is defined in
include/led-display.h and described in doc/README.LED_display.
Driver-specific implementation was moved into drivers/misc/pdsp188x.c
file (enabled with CONFIG_PDSP188x set).
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Sergei Poselenov [Thu, 9 Sep 2010 21:03:31 +0000 (23:03 +0200)]
A4M072: Added support for the board.
This patch provides support for the A4M072 board with the following features:
UART
NOR flash
FEC Ethernet
External SRAM
I2C EEPROM
CompactFlash cards on IDE/ATA port
USB Host
PCI initialization
The 7-segment LED indicator is not yet supported.
Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
Mikhail Zolotaryov [Wed, 8 Sep 2010 14:06:03 +0000 (17:06 +0300)]
VFAT: fix processing of scattered long file name entries
The U-Boot code has the following bugs related to the processing of Long File
Name (LFN) entries scattered across several clusters/sectors :
1) get_vfatname() function is designed to gather scattered LFN entries by
cluster chain processing - that doesn't work for FAT12/16 root directory.
In other words, the function expects the following input data:
1.1) FAT32 directory (which is cluster chain based);
OR
1.2) FAT12/16 non-root directory (which is also cluster chain based);
OR
1.3) FAT12/16 root directory (allocated as contiguous sectors area), but
all necessary information MUST be within the input buffer of filesystem cluster
size (thus cluster-chain jump is never initiated).
In order to accomplish the last condition, root directory parsing code in
do_fat_read() uses the following trick: read-out cluster-size block, process
only first sector (512 bytes), then shift 512 forward, read-out cluster-size
block and so on. This works great unless cluster size is equal to 512 bytes
(in a case you have a small partition), or long file name entries are scattered
across three sectors, see 4) for details.
2) Despite of the fact that get_vfatname() supports FAT32 root directory
browsing, do_fat_read() function doesn't send current cluster number correctly,
so root directory look-up doesn't work correctly.
3) get_vfatname() doesn't gather scattered entries correctly also is the case
when all LFN entries are located at the end of the source cluster, but real
directory entry (which must be returned) is at the only beginning of the
next one. No error detected, the resulting directory entry returned contains
a semi-random information (wrong size, wrong start cluster number and so on)
i.e. the entry is not accessible.
4) LFN (VFAT) allows up to 20 entries (slots) each containing 26 bytes (13
UTF-16 code units) to represent a single long file name i.e. up to 520 bytes.
U-Boot allocates 256 bytes buffer instead, i.e. 10 or more LFN slots record
may cause buffer overflow / memory corruption.
Also, it's worth to mention that 20+1 slots occupy 672 bytes space which may
take more than one cluster of 512 bytes (medium-size FAT32 or small FAT16
partition) - get_vfatname() function doesn't support such case as well.
The patch attached fixes these problems in the following way:
- keep using 256 bytes buffer for a long file name, but safely prevent a
possible buffer overflow (skip LFN processing, if it contains 10 or more
slots).
- explicitly specify FAT12/16 root directory parsing buffer size, instead
of relying on cluster size. The value used is a double sector size (to store
current sector and the next one). This fixes the first problem and increases
performance on big FAT12/16 partitions;
- send current cluster number (FAT32) to get_vfatname() during root
directory processing;
- use LFN counter to seek the real directory entry in get_vfatname() - fixes the
third problem;
- skip deleted entries in the root directory (to prevent bogus buffer
overflow detection and LFN counter steps).
Note: it's not advised to split up the patch, because a separate part may
operate incorrectly.
Signed-off-by: Mikhail Zolotaryov <lebon@lebon.org.ua>
Daniel Hobi [Mon, 11 Oct 2010 16:03:35 +0000 (18:03 +0200)]
tools/imls: fix comment in Makefile
Commit
d984fed0 (makefiles: fixes for building build tools)
changed the variable name FIT_CFLAGS to HOSTCFLAGS_NOPED
but forgot to update to corresponding comment.
Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Wolfgang Denk <wd@denx.de>
Lei Wen [Sun, 10 Oct 2010 04:36:40 +0000 (12:36 +0800)]
env: don't set to default env twice when use CONFIG_ENV_IS_NOWHERE
When use the CONFIG_ENV_IS_NOWHERE, I met such issue:
DRAM: 256 MiB
Using default environment
*** Warning - bad CRC, using default environment
Signed-off-by: Lei Wen <leiwen@marvell.com>
Stefan Roese [Wed, 8 Sep 2010 13:35:31 +0000 (15:35 +0200)]
zlib: Add further watchdog reset calls
Patch
253cb831 [zlib: add watchdog reset call] added already a few
watchdog reset calls to the new zlib U-Boot port. But on some boards
this is not enough. Additional calls are needed on boards with
short watchdog timeouts.
This was detected and tested on the lwmon5 board with a very short
watchdog timeout. Without this patch, the board resets during Linux
kernel decompression. With it, the decompression succeeds.
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
Stefan Roese [Wed, 8 Sep 2010 13:34:58 +0000 (15:34 +0200)]
zlib/gunzip: Use WATCHDOG_RESET macro
As usually done in U-Boot, the watchdog_reset code is called via a
macro (WATCHDOG_RESET). In zlib.c this was done differently, by using
a function pointer which is initialized with WATCHDOG_RESET upon watchdog
usage or with NULL otherwise. This patch now uses the plain
WATCHDOG_RESET macros to call the function resulting in slightly smaller
U-Boot images and simpler code.
U-Boot code size reduction:
PowerPC board with watchdog support (lwmon5):
-> 80 bytes smaller image size
PowerPC board without watchdog support (sequoia):
-> 112 bytes smaller image size
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
Anatolij Gustschin [Tue, 17 Aug 2010 15:46:02 +0000 (17:46 +0200)]
pdm360ng: add EDID property to FDT display node
PDM360NG board uses this functionality to pass display
timing info to the Linux Framebuffer driver.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
Anatolij Gustschin [Wed, 18 Aug 2010 09:25:20 +0000 (11:25 +0200)]
fdt_support: support adding EDID property to FDT display nodes
Boards can pass display timing info for drivers using EDID
block. Provide common function to add board specific EDID
data to the device tree. Subsequent patch makes use of this
functionality.
Detailed timing descriptor data from EDID is used for
programming the display controller. This is currently
implemented on the Linux side by the fsl-diu-fb frame
buffer driver and it is documented there in
Documentation/powerpc/dts-bindings/fsl/diu.txt.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
Cc: Gerald Van Baren <vanbaren@cideas.com>
Alexander Stein [Wed, 11 Aug 2010 14:48:04 +0000 (16:48 +0200)]
CONFIG_CMD_JFFS2 is not necessary to use mtdparts on erase & protect on/off
The include <jffs2/jffs2.h> is still necessary though.
Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
Acked-by: Stefan Roese <sr@denx.de>
Wolfgang Denk [Tue, 12 Oct 2010 18:49:27 +0000 (20:49 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-cfi-flash
Wolfgang Denk [Tue, 12 Oct 2010 18:48:01 +0000 (20:48 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-microblaze
Wolfgang Denk [Tue, 12 Oct 2010 18:44:46 +0000 (20:44 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-net
Prafulla Wadaskar [Thu, 30 Sep 2010 17:27:02 +0000 (22:57 +0530)]
Kirkwood: Changes specific to ARM relocation support
All Kirkwood based boards are supported for this new implementation
ref: docs/README.arm-relocation
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Prafulla Wadaskar [Thu, 30 Sep 2010 17:23:43 +0000 (22:53 +0530)]
kirkwood: added common config file mv-common.h
It is observed that, in most of the board configs the code is being
duplicated, also for any common change all board files needs update
This issue was under discussion from long on mailing list and we
converge on introducing common config file.
With this patch-
1. Total Kirkwood specific configuration code is reduced by 210 lines
2. All common configuration can be shared by multiple boards
3. Easy to manage common updates like ARM relocation changes
mv-common.h file is added to include/configs/
It contains all common configuration supported for all Kirkwood boards
The respective board configs are updated for its usage
Build tested for guruplug, mv88f6281gtw_ge, openrd_base,
rd6281a and sheevaplug
Binary execution tested for sheevaplug
Todo:
1. Other custom Kirkwood boards to be synced
2. The support to be extended for Orion5X based boards
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Prafulla Wadaskar [Thu, 30 Sep 2010 14:03:19 +0000 (19:33 +0530)]
Kirkwood: dram_init is moved to dram.c
For all Kirkwood boards so far dram_init function is duplicated
dram_init function is moved to dram.c and relevant code from all
board specific files removed
If any board needs specific dram init handling than standard one,
then, a macro CONFIG_SYS_BOARD_DRAM_INIT should be defined in
board config header file and the dram_init function can be put
in board specific source file
For ex. keymile boards
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Albert Aribaud [Thu, 7 Oct 2010 14:49:53 +0000 (20:19 +0530)]
orion5x: optimize window size computation
Signed-off-by: Chris Moore <moore@free.fr>
Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Prafulla Wadaskar [Mon, 20 Sep 2010 11:49:42 +0000 (17:19 +0530)]
Kirkwood: print_cpuinfo fixed for valid devid revid
Earlier Device Identification register was used to detect
the type for SoC, considering
88F6282 support to be added,
It is not possible to detect the same using current
algorithm.
With this patch, device ID is being read using PCIE devid
register, also valid chip revision ID will also be read and
displayed
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Albert Aribaud [Thu, 16 Sep 2010 15:00:30 +0000 (20:30 +0530)]
mvsata_ide: adjust port init sequence
mvsata_ide_initialize_port(): adjust init sequence (SStatus
should be checked only after all writes to SControl) and
return success/failure to ide_preinit().
Also, as some tests showed init durations in the hundreds
of us, raise the time-out to 01 ms to be on the safe side.
Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
John Schmoller [Wed, 29 Sep 2010 18:49:05 +0000 (13:49 -0500)]
cfi_flash: Fix "Unknown FLASH" error message
When a CFI flash chip could not be detected an error message similar to
the following would be printed on bootup:
FLASH: ## Unknown FLASH on Bank 1 - Size = 0x01000000 = 0 MB
The printf incorrectly converted the flash size into megabytes. This
patch fixes the printing of the flash size in megabytes:
FLASH: ## Unknown FLASH on Bank 1 - Size = 0x01000000 = 16 MB
Signed-off-by: John Schmoller <jschmoller@xes-inc.com>
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Michal Simek [Thu, 12 Aug 2010 09:47:11 +0000 (11:47 +0200)]
microblaze: Support little-endian microblaze target
Microblaze little-endian toolchain should export
__MICROBLAZEEL__.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Mon, 2 Aug 2010 12:42:09 +0000 (14:42 +0200)]
microblaze: Add support for NET_MULTI api
Microblaze hasn't supported NET_MULTI support.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Mon, 2 Aug 2010 12:20:28 +0000 (14:20 +0200)]
microblaze: Fix microblaze-generic config file
1. Fix preprocessor statements
2. Clean coding style
Signed-off-by: Michal Simek <monstr@monstr.eu>
Stephan Linz [Mon, 21 Jun 2010 20:58:10 +0000 (22:58 +0200)]
microblaze: generic: rename MTD partition set to 'flash-0'
Signed-off-by: Stephan Linz <linz@li-pro.net>
Signed-off-by: Michal Simek <monstr@monstr.eu>
Stephan Linz [Mon, 21 Jun 2010 20:58:09 +0000 (22:58 +0200)]
microblaze: generic: adding DHCP support
Signed-off-by: Stephan Linz <linz@li-pro.net>
Signed-off-by: Michal Simek <monstr@monstr.eu>
Thomas Chou [Wed, 6 Oct 2010 01:16:10 +0000 (09:16 +0800)]
smc91111: add write_hwaddr
Add smc_write_hwaddr() to set mac address.
Clear dev before use.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Gardiner [Thu, 23 Sep 2010 13:58:43 +0000 (09:58 -0400)]
davinci_emac: davinci_eth_set_mac_addr to ->write_hwaddr
This patch proposes to migrate the davinci_emac driver to using the
eth_device->write_hwaddr function pointer as suggested by Ben Warren.
All the davinci boards had the behaviour, prior to this patch, of
sync'ing the environment variable enetaddr with the MAC address read
from non-volatile storage on boot -- when the two locations disagreed,
the environment variable value took precendence. This patch keeps the
same behaviour but lets eth_initialize take care of it.
This patch refactors davinci_emac setup in the boards so that the MAC
address is read from non-volatile storage into the environment variable
and then the environment variable value is use in eth_intialize. The
only exception is the direct call to davinci_eth_set_mac_addr made by
the da830evm board init which was changed into an assignment of the
enetaddr field.
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Tested-by: Nick Thompson <nick.thompson@ge.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Michal Simek [Mon, 11 Oct 2010 01:41:47 +0000 (11:41 +1000)]
net: Move Emaclite to NET_MULTI
Emaclite was using old net api that's why
this patch move emaclite to NET_MULTI api.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Peter Tyser [Thu, 30 Sep 2010 16:25:48 +0000 (11:25 -0500)]
rarp: Condtionally compile rarp support
Most people don't use the 'rarpboot' command, so only enable it when
CONFIG_CMD_RARP is defined.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Michal Simek [Mon, 11 Oct 2010 01:41:46 +0000 (11:41 +1000)]
net: Fix emaclite driver to support little-endian microblaze
Support New emaclite AXI IP.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ilya Yanok [Thu, 19 Aug 2010 09:09:06 +0000 (11:09 +0200)]
mpc5xxx_fec: add call to reset_phy() after PHY initialization
Some boards need their board-specific PHY quirks to be called
to PHY to work normally. As mpc5xxx_fec driver uses on demand
PHY initialization and can even reinit PHY during normal operation
we can't count on reset_phy() call from arch/<arch>/lib/board.c
(it is most likely called _before_ we init the PHY from the
driver) so we need to add call to reset_phy() directly in the
driver.
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Andreas Bießmann [Thu, 7 Oct 2010 07:44:47 +0000 (09:44 +0200)]
drivers/net/at91_emac.c: change return values
Some return values pretended correct pass. This patch changes them according
to README.drivers.net. This patch changes e.g. command 'dhcp' to stop after
errorneous autonegotiation.
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Andreas Bießmann [Thu, 7 Oct 2010 07:44:46 +0000 (09:44 +0200)]
drivers/net/at91_emac.c: increase timeout for autonegotiation
This patch increases timeout for autonegotiation from 1 second to 3 seconds.
Some boards (e.g. at91rm9200ek) did not negotiate within 1 second.
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Reinhard Meyer [Sun, 12 Sep 2010 14:23:49 +0000 (16:23 +0200)]
NET: add ENC28J60 driver using SPI framework
V3: further refinements:
- use priv member instead of container method
- allow setting of MAC address by write_hwaddr method
- avoid shutting down link between commands
Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Joakim Tjernlund [Tue, 10 Aug 2010 14:36:49 +0000 (16:36 +0200)]
UEC PHY: Speed up initial PHY neg.
Instead of always performing an autoneg, check if the PHY
already has a link and if it matches one of the requested
modes. Initially only 100MbFD is optimized this way.
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Mon, 2 Aug 2010 06:00:31 +0000 (23:00 -0700)]
Net: Remove redundant CONFIG_NET_MULTI directives
All are within an #ifdef CONFIG_NET_MULTI block already
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Joakim Tjernlund [Wed, 11 Aug 2010 09:44:22 +0000 (11:44 +0200)]
UEC PHY: Remove strange 0.5 sec delay
This udelay looks bogus and doesn't help my board.
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Joakim Tjernlund [Wed, 11 Aug 2010 09:44:21 +0000 (11:44 +0200)]
UEC: Don't udelay needlessly
uec_init() adds an udelay(100000) even though
the PHY status read went well, don't do that.
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>