Ben Warren [Mon, 26 Apr 2010 18:11:46 +0000 (11:11 -0700)]
Program net device MAC addresses after initializing
Add a new function to the eth_device struct for programming a network
controller's hardware address.
After all network devices have been initialized and the proper MAC address
for each has been determined, make a device driver call to program the
address into the device. Only device instances with valid unicast addresses
will be programmed.
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Acked-by: Detlev Zundel <dzu@denx.de>
Tested-by: Prafulla Wadaskar <prafulla@marvell.com>
Tested-by: Heiko Schocher <hs@denx.de>
Tested-by: Thomas Chou <thomas@wytron.com.tw>
Thomas Chou [Tue, 20 Apr 2010 04:49:52 +0000 (12:49 +0800)]
net: add altera triple speeds ethernet mac driver
This driver supports the Altera triple speeds 10/100/1000 ethernet
mac.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Thomas Chou [Thu, 15 Apr 2010 14:32:38 +0000 (22:32 +0800)]
net: add opencore 10/100 ethernet mac driver
This patch ports the opencore 10/100 ethernet mac driver ethoc.c
from linux kernel to u-boot.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Valentin Yakovenkov [Fri, 23 Apr 2010 05:40:23 +0000 (09:40 +0400)]
smc911x driver frame alignment patch
SMSC911x chips have alignment function to allow frame payload data
(which comes after 14-bytes ethernet header) to be aligned at some
boundary when reading it from fifo (usually - 4 bytes boundary).
This is done by inserting fake zeros bytes BEFORE actual frame data when
reading from SMSC's fifo.
This function controlled by RX_CFG register. There are bits that
represents amount of fake bytes to be inserted.
Linux uses alignment of 4 bytes. Ethernet frame header is 14 bytes long,
so we need to add 2 fake bytes to get payload data aligned at 4-bytes
boundary.
Linux driver does this by adding IP_ALIGNMENT constant (defined at
skb.h) when calculating fifo data length. All network subsystem of Linux
uses this constant too when calculating different offsets.
But u-boot does not use any packet data alignment, so we don't need to
add anything when calculating fifo data length.
Moreover, driver zeros the RX_CFG register just one line up, so chip
does not insert any fake data at the beginig. So calculated data length
is always bigger by 1 word.
It seems that at almost every packet read we get an underflow condition
at fifo and possible corruption of data. Especially at continuous
transfers, such as tftp.
Just after removing this magic addition, I've got tftp transfer speed as
it aught to be at 100Mbps. It was really slow before.
It seems that fifo underflow occurs only when using byte packing on
32-bit blackfin bus (may be because of very small delay between reads).
Signed-off-by: Valentin Yakovenkov <yakovenkov@niistt.ru>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Prafulla Wadaskar [Tue, 6 Apr 2010 16:03:08 +0000 (21:33 +0530)]
net: Kirkwood_egiga.c bugfixes for rx path
Cosmetic changes: Few comments updated
Functionality: Rx packet frame size is programming should
be done when port is in disabled state. this is corrected
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Eric Jarrige [Thu, 15 Apr 2010 22:03:19 +0000 (00:03 +0200)]
fec_mxc.c: Fix MX27 FEC MAC validity check
Fix MX27 FEC logic to check validity of the MAC address in fuse.
Only null (empty fuse) or invalid MAC address was retrieved from mx27 fuses before this change.
Signed-off-by: Eric Jarrige <jorasse@armadeus.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Andy Fleming [Mon, 19 Apr 2010 19:54:49 +0000 (14:54 -0500)]
tsec: Wait for both RX and TX to stop
When gracefully stopping the controller, the driver was continuing if
*either* RX or TX had stopped. We need to wait for both, or the
controller could get into an invalid state.
Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Mike Frysinger [Wed, 14 Apr 2010 20:29:06 +0000 (16:29 -0400)]
net: dm9000x: use standard I/O accessors
The current dm9000x driver accesses its memory mapped registers directly
instead of using the standard I/O accessors. This can cause problems on
Blackfin systems as the accesses can get out of order. So convert the
direct volatile dereferences to use the normal in/out macros.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Detlev Zundel [Thu, 8 Apr 2010 09:49:59 +0000 (11:49 +0200)]
mpc512x_fec: Move PHY initialization from probe into init routine.
This saves the autonegotation delay when not using ethernet in U-Boot
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
John Rigby [Thu, 8 Apr 2010 05:29:40 +0000 (23:29 -0600)]
fec_mxc don't use internal eeprom on MX25
Avoid using the internal eeprom on MX25 like MX51 already does.
Signed-off-by: John Rigby <jcrigby@gmail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Wolfgang Wegner [Tue, 6 Apr 2010 09:13:02 +0000 (11:13 +0200)]
fix lockup in mcfmii/mii_discover_phy() in case communication fails
Signed-off-by: Wolfgang Wegner <w.wegner@astro-kom.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Richard Retanubun [Wed, 17 Jun 2009 20:00:41 +0000 (16:00 -0400)]
83xx: UEC: Added support for bitBang MII driver access to PHYs
This patch enabled support for having PHYs on bitBang MII and uec MII
operating at the same time. Modeled after the MPC8360ADS implementation.
Added the ability to specify which ethernet interfaces have bitbang SMI
on the board header file.
Signed-off-by: Richard Retanubun <RichardRetanubun@RuggedCom.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Robin Getz [Mon, 8 Mar 2010 19:07:00 +0000 (14:07 -0500)]
./net/net.c - make Microsoft dns servers happy with random_port() numbers
For some reason, (which I can't find any documentation on), if U-Boot
gives a port number higher than 17500 to a Microsoft DNS server, the
server will reply to port 17500, and U-Boot will ignore things (since
that isn't the port it asked the DNS server to reply to).
This fixes that by ensuring the random port number is less than 17500.
Signed-off-by: Robin Getz <rgetz@blackfin.uclinux.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Detlev Zundel [Thu, 1 Apr 2010 12:16:41 +0000 (14:16 +0200)]
Remove unused "local_crc32" function.
For code archeologists, this is a nice example of copy and paste history.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Detlev Zundel [Wed, 31 Mar 2010 15:56:08 +0000 (17:56 +0200)]
net: Trivial coding style issue with empty for statement
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Prafulla Wadaskar [Wed, 3 Mar 2010 09:57:21 +0000 (15:27 +0530)]
net: Kirkwood_egiga.c: fixed build warnings
This patch fixes following build warnings for kirkwood_egiga.c
kirkwood_egiga.c: In function "kwgbe_init":
kirkwood_egiga.c:448: warning: dereferencing type-punned pointer will break strict-aliasing rules
kirkwood_egiga.c: In function "kwgbe_recv":
kirkwood_egiga.c:609: warning: dereferencing type-punned pointer will break strict-aliasing rules
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Wolfgang Denk [Fri, 30 Apr 2010 22:44:42 +0000 (00:44 +0200)]
Merge branch 'master' of ssh://gemini/home/wd/git/u-boot/master
Wolfgang Denk [Fri, 30 Apr 2010 22:42:22 +0000 (00:42 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Stefan Roese [Wed, 28 Apr 2010 09:09:59 +0000 (11:09 +0200)]
ppc4xx: Fix APC405 build breakage
This patch fixes APC405 build, by defining CONFIG_PPC4XX_I2C. This is
needed since the move of the PPC4xx I2C driver into the drivers/i2c
directory.
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Matthias Fuchs <matthias.fuchs@esd.eu>
Stefan Roese [Tue, 27 Apr 2010 09:37:28 +0000 (11:37 +0200)]
ppc4xx: Add support for ICON board (PPC440SPe)
This patch adds support for the Mosaix Technologies, Inc. ICON board,
based on the AppliedMicro (AMCC) PPC440SPe. It's equipped with an SODIMM
(512MB standard) and 64MByte of NOR FLASH.
Support for the onboard SM502 will be added later.
Signed-off-by: Stefan Roese <sr@denx.de>
Stefan Roese [Mon, 26 Apr 2010 11:31:08 +0000 (13:31 +0200)]
ppc4xx: Add missing APC405 to MAKEALL
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Matthias Fuchs <matthias.fuchs@esd.eu>
Larry Johnson [Tue, 20 Apr 2010 12:11:40 +0000 (08:11 -0400)]
Fix typos in Korat board console output
Signed-off-by: Larry Johnson <lrj@acm.org>
Signed-off-by: Stefan Roese <sr@denx.de>
Wolfgang Denk [Wed, 28 Apr 2010 10:54:43 +0000 (12:54 +0200)]
QONG: Adapt flash addresses and mtdparts to grown image size
Also enable HUSH shell.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Wed, 28 Apr 2010 08:58:10 +0000 (10:58 +0200)]
mtdparts: get rid of custom DEBUG macro, use debug()
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Wed, 28 Apr 2010 08:53:47 +0000 (10:53 +0200)]
mtdparts: fix write through NULL pointer
The "mtdparts add" command wrote through a NULL pointer - on many
systems this went unnoticed (PowerPC has writable RAM there, some ARM
systems have ROM where a write has no effect), but on arm1136
(i.MX31) it crashed the system.
Add appropriate checks.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Stefano Babic [Wed, 21 Apr 2010 07:47:19 +0000 (09:47 +0200)]
ubifsmount fails due to not initialized list
ubifsmount is not working and causes an access with
a pointer set to zero because the ubifs_fs_type
is not initialized correctly.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
Wolfgang Denk [Tue, 27 Apr 2010 22:10:41 +0000 (00:10 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-video
Wolfgang Denk [Tue, 27 Apr 2010 22:09:53 +0000 (00:09 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Stefano Babic [Wed, 21 Apr 2010 07:56:31 +0000 (09:56 +0200)]
MX31: Added LCD support for QONG module
Added support for LCD and splash image to the QONG module.
The supported display is VBEST-VGG322403.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Wolfgang Denk [Tue, 27 Apr 2010 21:02:12 +0000 (23:02 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc5xxx
Wolfgang Denk [Tue, 27 Apr 2010 20:57:41 +0000 (22:57 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Tue, 27 Apr 2010 20:53:04 +0000 (22:53 +0200)]
Merge branch 'next' of git://git.denx.de/u-boot-nios
Kumar Gala [Tue, 20 Apr 2010 15:02:24 +0000 (10:02 -0500)]
ppc: Split MPC83xx SERDES code from MPC85xx/MPC86xx/QorIQ
The MPC83xx SERDES control is different from the other FSL PPC chips.
For now lets split it out so we can standardize on interfaces for
determining of a device on SERDES is configured.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
Lan Chunhe [Wed, 21 Apr 2010 12:40:50 +0000 (07:40 -0500)]
mpc85xx: Add the ability to set LCRR[CLKDIV] to improve R/W speed of flash
Signed-off-by: Lan Chunhe <b25806@freescale.com>
Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Wed, 14 Apr 2010 11:05:06 +0000 (19:05 +0800)]
85xx: clean up the io_sel for PCI express of P1022
clean up the wrong io_sel for PCI express according to latest manual.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Detlev Zundel [Wed, 14 Apr 2010 09:32:20 +0000 (11:32 +0200)]
85xx/socrates: Remove NFS support to fit image size.
This fixes an overflow during the link phase.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Tue, 13 Apr 2010 16:07:57 +0000 (11:07 -0500)]
85xx: Fix compile warning
cpu.c: In function 'checkcpu':
cpu.c:47: warning: unused variable 'gur'
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Wed, 14 Apr 2010 04:56:23 +0000 (23:56 -0500)]
85xx: Convert cpu_init_f code to use out_be32 for LBC registers
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Mon, 12 Apr 2010 06:23:35 +0000 (14:23 +0800)]
fsl_sata: Move the snoop bit to another place
For P1022 SATA host controller, the data snoop bit of DW3 in PRDT
is moved to bit28.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Mon, 12 Apr 2010 06:23:25 +0000 (14:23 +0800)]
fsl_sata: Add the workaround for errata SATA-A001
After power on, the SATA host controller of P1022 Rev1 is configured
in legacy mode instead of the expected enterprise mode.
Software needs to clear bit[28] of HControl register to change to
enterprise mode after bringing the host offline.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Tue, 8 Dec 2009 03:56:48 +0000 (11:56 +0800)]
fsl-ddr: Add extra cycle to turnaround times
Add an extra cycle turnaround time to read->write to ensure stability
at high DDR frequencies.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Fri, 5 Mar 2010 04:23:00 +0000 (12:23 +0800)]
fsl-ddr: add the macro for Rtt_Nom definition
add the macro definition for Rtt_Nom termination value for DDR3
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Wed, 7 Apr 2010 15:39:46 +0000 (10:39 -0500)]
ppc/p4080: Add p4080 DEVDISR2 & SRDS_PLLCR0 defines
Added some needed fines and some misc additional defines
used by p4080 initialization.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Fri, 5 Mar 2010 04:23:00 +0000 (12:23 +0800)]
ppc/p4080: Extend the GUTS memory map
Extend pin control and clock control to GUTS memory map
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Srikanth Srinivasan [Wed, 10 Feb 2010 09:32:43 +0000 (17:32 +0800)]
ppc/p4080: Fix synchronous frequency calculations
When DDR is in synchronous mode, the existing code assigns sysclk
frequency to DDR frequency. It should be synchronous with the platform
frequency. CPU frequency is based on platform frequency in synchronous
mode.
Also fix:
* Fixes the bit mask for DDR_SYNC (RCWSR5[184])
* Corrects the detection of synchronous mode.
Signed-off-by: Srikanth Srinivasan <srikanth.srinivasan@freescale.com>
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Wed, 7 Apr 2010 07:49:12 +0000 (02:49 -0500)]
ppc/85xx: Fixup PCI nodes for P1_P2_RDB
While we had ft_pci_board_setup it wasn't being called by
ft_board_setup. Fix that so we actually update the device tree PCI
nodes on P1_P2_RDB boards.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Thomas Chou [Wed, 21 Apr 2010 00:40:59 +0000 (08:40 +0800)]
nios2: add nios2-generic board
This is a generic approach to port u-boot for nios2 boards.
You may find the usage of this approach on the nioswiki,
http://nioswiki.com/DasUBoot
A fpga parameter file, which contains base address information
and drivers declaration, is generated from Altera's hardware system
description sopc file using tools.
The example fpga parameter file is compatible with EP1C20, EP1S10
and EP1S40 boards. So these boards can be removed after this commit.
Though epcs controller is removed to cut the dependency of altera_spi
driver.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Thu, 22 Apr 2010 09:27:16 +0000 (17:27 +0800)]
nios2: fix no flash, add nand and mmc init in board.c
This patch fixes error when CONFIG_SYS_NO_FLASH. And adds
nand flash and mmc initialization, which should go before
env initialization.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Tue, 20 Apr 2010 03:01:11 +0000 (11:01 +0800)]
nios2: consolidate reset initialization
Global interrupt should be disabled from the beginning.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Wed, 31 Mar 2010 00:30:08 +0000 (08:30 +0800)]
altera_jtag_uart: bypass when no jtag connection
This patch adds an option to bypass output waiting when there
is no jtag connection. This allows the jtag uart work similar
to a serial uart, ie, boot even without connection.
This option is enabled with CONFIG_ALTERA_JTAG_UART_BYPASS
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Sat, 17 Apr 2010 15:34:40 +0000 (23:34 +0800)]
nios2: add dma_alloc_coherent
This function return cache-line aligned allocation which is mapped
to uncached io region.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Sat, 17 Apr 2010 15:10:09 +0000 (23:10 +0800)]
nios2: add 64 bits swab support
This patch adds 64 bits swab support. Most 32 bits processors use
this. We need 64 bits swab for UBI.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Wed, 31 Mar 2010 00:36:24 +0000 (08:36 +0800)]
nios2: add altera cf reset
This patch toggles power to reset the cf card.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Thomas Chou [Sat, 17 Apr 2010 09:39:12 +0000 (17:39 +0800)]
nios2: allow link script overriding from boards
This patch allow boards to override the default link script.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:11 +0000 (19:27 +0200)]
mpc5121: pdm360ng: add coprocessor POST
Adds coprocessor communication POST code
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:10 +0000 (19:27 +0200)]
mpc5121: add common post_word_load/store code
Add common post_word_load/post_word_store routines
for all mpc5121 boards. pdm360ng board POST support
added by subsequent patch needs them.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:09 +0000 (19:27 +0200)]
mpc5121: add support for PDM360NG board
PDM360NG is a MPC5121E based board by ifm ecomatic gmbh.
Signed-off-by: Michael Weiss <michael.weiss@ifm.com>
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:08 +0000 (19:27 +0200)]
mpc5121: determine RAM size using get_ram_size()
Configure CONFIG_SYS_MAX_RAM_SIZE address range in
DDR Local Access Window and determine the RAM size.
Fix DDR LAW afterwards using detected RAM size.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:07 +0000 (19:27 +0200)]
mpc512x: make MEM IO Control configuration a board config option
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:06 +0000 (19:27 +0200)]
mpc5121: add PSC serial communication routines
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:05 +0000 (19:27 +0200)]
mpc512x: add multi serial PSC support
Extend mpc512x serial driver to support multiple PSC ports.
Subsequent patches for PDM360NG board support make use of this
functionality by defining CONFIG_SERIAL_MULTI in the board config
file. Additionally the used PSC devices are specified by defining
e.g. CONFIG_SYS_PSC1, CONFIG_SYS_PSC4 and CONFIG_SYS_PSC6.
Support for PSC devices other than 1, 3, 4 and 6 is not added
by this patch because these aren't used currently. In the future
it can be easily added using DECLARE_PSC_SERIAL_FUNCTIONS(N) and
INIT_PSC_SERIAL_STRUCTURE(N) macros in cpu/mpc512x/serial.c.
Additionally you have to add code for registering added
devices in serial_initialize() in common/serial.c.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 24 Apr 2010 17:27:04 +0000 (19:27 +0200)]
serial: struct serial_device: add uninit() entry for drivers
Subsequent patch extends mpc512x serial driver to support
multiple PSC ports. The driver will provide an uninit()
function to stop the serial controller and to disable the
controller's clock. Adding uninit() entry to struct serial_device
allows disabling the serial controller after usage of
a stdio serial device.
This patch adds uninit() entry to the struct serial_device
and fixes initialization of this structure in the code
accordingly.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Wolfgang Denk [Sat, 24 Apr 2010 19:25:42 +0000 (21:25 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mmc
Wolfgang Denk [Sat, 24 Apr 2010 19:16:57 +0000 (21:16 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Sat, 24 Apr 2010 19:13:31 +0000 (21:13 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-microblaze
Wolfgang Denk [Sat, 24 Apr 2010 19:11:56 +0000 (21:11 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c
Dipen Dudhat [Mon, 5 Oct 2009 10:11:58 +0000 (15:41 +0530)]
ppc/85xx: PIO Support for FSL eSDHC Controller Driver
On some Freescale SoC Internal DMA of eSDHC controller has bug.
So PIO Mode has been introduced to do data transfer using CPU.
Signed-off-by: Dipen Dudhat <dipen.dudhat@freescale.com>
Kim Phillips [Wed, 21 Apr 2010 00:37:54 +0000 (19:37 -0500)]
mpc83xx: turn on icache in core initialization to improve u-boot boot time
before, MPC8349ITX boots u-boot in 4.3sec:
column1 is elapsed time since first message
column2 is elapsed time since previous message
column3 is the message
0.000 0.000: U-Boot
2010.03-00126-gfd4e49c (Apr 11 2010 - 17:25:29) MPC83XX
0.000 0.000:
0.000 0.000: Reset Status:
0.000 0.000:
0.032 0.032: CPU: e300c1, MPC8349E, Rev: 1.1 at 533.333 MHz, CSB: 266.667 MHz
0.032 0.000: Board: Freescale MPC8349E-mITX
0.032 0.000: UPMA: Configured for compact flash
0.032 0.000: I2C: ready
0.061 0.028: DRAM: 256 MB (DDR1, 64-bit, ECC off, 266.667 MHz)
1.516 1.456: FLASH: 16 MB
2.641 1.125: PCI: Bus Dev VenId DevId Class Int
2.652 0.011: 00 10 1095 3114 0180 00
2.652 0.000: PCI: Bus Dev VenId DevId Class Int
2.652 0.000: In: serial
2.652 0.000: Out: serial
2.652 0.000: Err: serial
2.682 0.030: Board revision: 1.0 (PCF8475A)
3.080 0.398: Net: TSEC1: No support for PHY id
ffffffff; assuming generic
3.080 0.000: TSEC0, TSEC1
4.300 1.219: IDE: Bus 0: .** Timeout **
after, MPC8349ITX boots u-boot in 3.0sec:
0.010 0.010: U-Boot
2010.03-00127-g4b468cc-dirty (Apr 11 2010 - 17:47:29) MPC83XX
0.010 0.000:
0.010 0.000: Reset Status:
0.010 0.000:
0.017 0.007: CPU: e300c1, MPC8349E, Rev: 1.1 at 533.333 MHz, CSB: 266.667 MHz
0.017 0.000: Board: Freescale MPC8349E-mITX
0.038 0.020: UPMA: Configured for compact flash
0.038 0.000: I2C: ready
0.038 0.000: DRAM: 256 MB (DDR1, 64-bit, ECC off, 266.667 MHz)
0.260 0.222: FLASH: 16 MB
1.390 1.130: PCI: Bus Dev VenId DevId Class Int
1.390 0.000: 00 10 1095 3114 0180 00
1.390 0.000: PCI: Bus Dev VenId DevId Class Int
1.400 0.010: In: serial
1.400 0.000: Out: serial
1.400 0.000: Err: serial
1.400 0.000: Board revision: 1.0 (PCF8475A)
1.832 0.432: Net: TSEC1: No support for PHY id
ffffffff; assuming generic
1.832 0.000: TSEC0, TSEC1
3.038 1.205: IDE: Bus 0: .** Timeout **
also tested on these boards (albeit with a less accurate
boottime measurement method):
seconds: before after
8349MDS ~2.6 ~2.2
8360MDS ~2.8 ~2.6
8313RDB ~2.5 ~2.3 #nand boot
837xRDB ~3.1 ~2.3
also tested on an 8323ERDB.
v2: also remove the delayed icache enablement assumption in arch ppc's
board.c, and add a CONFIG_MPC83xx define in the ITX config file for
consistency (even though it was already being defined in 83xx'
config.mk).
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Kim Phillips [Thu, 15 Apr 2010 22:36:05 +0000 (17:36 -0500)]
mpc83xx: enable command line autocompletion
because it's convenient.
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Kim Phillips [Thu, 15 Apr 2010 22:36:02 +0000 (17:36 -0500)]
mpc83xx: use "A" nomenclature only on mpc834x and mpc836x families
marketing didn't extend their postpend-with-an-A naming strategy
on rev.2's and higher beyond the first two 83xx families. This
patch stops us from misreporting we're running e.g., on an MPC8313EA,
when such a name doesn't exist.
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Rini van Zetten [Thu, 15 Apr 2010 14:03:05 +0000 (16:03 +0200)]
mpc83xx: Use CONFIG_FSL_ESDHC to enable sdhc clk
Enable eSDHC Clock based on generic CONFIG_FSL_ESDHC define
instead of a platform define. This will enable all the 83xx
platforms to use sdhc_clk based on CONFIG_FSL_ESDHC. It's
the same patch as commit
6b9ea08c5010eab5ad1056bc9bf033afb672d9cc
for the ppc/85xx.
Signed-off-by: Rini <rini@arvoo.nl>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Stefan Roese [Thu, 15 Apr 2010 14:07:28 +0000 (16:07 +0200)]
Move arch/ppc to arch/powerpc
As discussed on the list, move "arch/ppc" to "arch/powerpc" to
better match the Linux directory structure.
Please note that this patch also changes the "ppc" target in
MAKEALL to "powerpc" to match this new infrastructure. But "ppc"
is kept as an alias for now, to not break compatibility with
scripts using this name.
Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Wolfgang Denk <wd@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
Cc: Peter Tyser <ptyser@xes-inc.com>
Cc: Anatolij Gustschin <agust@denx.de>
Stefan Roese [Wed, 14 Apr 2010 11:57:18 +0000 (13:57 +0200)]
ppc4xx: TLB init file cleanup
This patch adds new macros, with frequently used combinations of the
4xx TLB access control and storage attibutes. Additionally the 4xx init.S
files are updated to make use of these new macros. Resulting in easier
to read TLB definitions.
Additionally some init.S files are updated to use the mmu header for the
TLB defines, instead of defining their own macros.
Signed-off-by: Stefan Roese <sr@denx.de>
Richard Retanubun [Mon, 12 Apr 2010 19:08:17 +0000 (15:08 -0400)]
fsl_i2c: Added a callpoint for i2c_board_late_init
This patch adds a callpoint in i2c_init that allows board specific
i2c board initialization (typically for i2c bus reset) that is called
after i2c_init operations, allowing the i2c_board_late_init function
to use the pre-configured i2c bus speed and slave address.
Scott McNutt [Fri, 16 Apr 2010 20:12:39 +0000 (16:12 -0400)]
nios2: Move individual board linker scripts to common script in cpu tree.
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
Michal Simek [Fri, 16 Apr 2010 10:56:33 +0000 (12:56 +0200)]
microblaze: Consolidate cache code
Merge cpu and lib cache code.
Flush cache before disabling.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 10:01:32 +0000 (12:01 +0200)]
microblaze: Flush cache before jumping to kernel
There is used max cache size on system which doesn't define
cache size.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:59:29 +0000 (11:59 +0200)]
microblaze: Support system with WB cache
WB cache use different instruction that WT cache but the major code
is that same. That means that wdc.flush on system with WT cache
do the same thing as before.
You need newer toolchain with wdc.flush support.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:57:35 +0000 (11:57 +0200)]
microblaze: Change initialization sequence
env_relocation should be called first.
Added stdio_init too.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:55:01 +0000 (11:55 +0200)]
microblaze: Change cache report messages
It is more accurate to show that caches are OFF instead of FAIL.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:51:59 +0000 (11:51 +0200)]
microblaze: Fix interrupt handler code
It is better to read ivr and react on it than do long parsing from
two regs. Interrupt controller returs actual irq number.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:43:43 +0000 (11:43 +0200)]
microblaze: Move FSL initialization to board.c
Move FSL out of interrupt controller.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:37:41 +0000 (11:37 +0200)]
microblaze: Move timer initialization to board.c
I would like to handle case where system doesn't contain
intc that's why I need timer initialization out of intc code.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek [Fri, 16 Apr 2010 09:30:16 +0000 (11:30 +0200)]
microblaze: Fix irq.S code
It is ancient code. There is possible to save several instructions
just if we use offset instead of addik
Signed-off-by: Michal Simek <monstr@monstr.eu>
Arun Bhanu [Thu, 15 Apr 2010 10:27:17 +0000 (18:27 +0800)]
microblaze: Add FDT support
This patch adds FDT (flattened device tree) support to microblaze arch.
Tested with Linux arch/microblaze kernels with and without compiled in
FDT on Xilinx ML506 board.
Signed-off-by: Arun Bhanu <arun@bhanu.net>
Signed-off-by: Michal Simek <monstr@monstr.eu>
Stefan Roese [Fri, 9 Apr 2010 12:03:59 +0000 (14:03 +0200)]
ppc4xx: Add option for PPC440SPe ports without old Rev. A support
The 440SPe Rev. A is quite old and newer 440SPe boards don't need support
for this CPU revision. Since removing support for this older version
simplifies the creation for newer U-Boot ports, this patch now enables
440SPe > Rev. A support by creating the CONFIG_440SPE_REVA define. By
defining this in the board config header, Rev. A will still be supported.
Otherwise (default for newer board ports), Rev. A will not be supported.
Signed-off-by: Stefan Roese <sr@denx.de>
Stefan Roese [Thu, 8 Apr 2010 07:33:13 +0000 (09:33 +0200)]
ppc4xx: alpr: Remove some not needed commands to make image fit again
The latest changes increased the size of the alpr image a bit more.
Now it doesn't fit into the 256k reserved for it. This patch now removes
the commands "loads" and "loadb" which are not needed in the production
systems.
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Pieter Voorthuijsen <pieter.voorthuijsen@prodrive.nl>
Peter Tyser [Tue, 13 Apr 2010 03:28:21 +0000 (22:28 -0500)]
Update README to reflect new directory structure
Also fix up some whitespace issues that were introduced when moving
directory locations.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:20 +0000 (22:28 -0500)]
nios2: Move cpu/nios2/* to arch/nios2/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:19 +0000 (22:28 -0500)]
nios: Move cpu/nios/* to arch/nios/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:18 +0000 (22:28 -0500)]
sparc: Move cpu/leon[23] to arch/sparc/cpu/leon[23]
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:17 +0000 (22:28 -0500)]
i386: Move cpu/i386/* to arch/i386/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:16 +0000 (22:28 -0500)]
microblaze: Move cpu/microblaze/* to arch/microblaze/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:15 +0000 (22:28 -0500)]
avr32: Move cpu/at32ap/* to arch/avr32/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:14 +0000 (22:28 -0500)]
mips: Move cpu/mips/* to arch/mips/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:13 +0000 (22:28 -0500)]
blackfin: Move cpu/blackfin/* to arch/blackfin/cpu/*
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:12 +0000 (22:28 -0500)]
m68k: Move cpu/$CPU to arch/m68k/cpu/$CPU
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:11 +0000 (22:28 -0500)]
arm: Move cpu/$CPU to arch/arm/cpu/$CPU
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:10 +0000 (22:28 -0500)]
sh: Move cpu/$CPU to arch/sh/cpu/$CPU
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Peter Tyser [Tue, 13 Apr 2010 03:28:09 +0000 (22:28 -0500)]
ppc: Move cpu/$CPU to arch/ppc/cpu/$CPU
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>