Kumar Gala [Mon, 24 Nov 2008 16:29:26 +0000 (10:29 -0600)]
85xx: init gd as early as possible
Moved up the initialization of GD so C code like set_tlb() can use
gd->flags to determine if we've relocated or not in the future.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Kumar Gala [Mon, 24 Nov 2008 16:29:25 +0000 (10:29 -0600)]
85xx: Fix relocation of CCSRBAR
If the virtual address for CCSRBAR is the same after relocation but
the physical address is changing we'd end up having two TLB entries with
the same VA. Instead we new us the new CCSRBAR virt address + 4k as a
temp virt address to access the old CCSRBAR to relocate it.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Kumar Gala [Mon, 24 Nov 2008 16:25:14 +0000 (10:25 -0600)]
FSL: Moved BR_PHYS_ADDR for localbus to common header
The BR_PHYS_ADDR macro is useful on all machines that have local bus
which is pretty much all 83xx/85xx/86xx chips.
Additionally most 85xx & 86xx will need it if they want to support
36-bit physical addresses.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Peter Tyser [Mon, 1 Dec 2008 19:47:12 +0000 (13:47 -0600)]
85xx: Add PORDEVSR_PCI1 define
Add define used to determine if PCI1 interface is in PCI or PCIX mode.
Convert users of the old PORDEVSR_PCI constant to use MPC85xx_PORDEVSR_PCI1
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
Becky Bruce [Sat, 22 Nov 2008 01:24:22 +0000 (19:24 -0600)]
drivers/fsl_pci_init: Fix inbound window mapping bug
The current code will cause the creation of a 4GB window
starting at 0 if we have more than 4GB of RAM installed,
which overlaps with PCI_MEM space and causes pci_bus_to_phys()
to return erroneous information. Limit the size to 4GB - 1;
which causes the code to create one 2GB and one 1GB window
instead.
Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Jon Loeliger [Thu, 20 Nov 2008 21:36:48 +0000 (15:36 -0600)]
Removed unused CONFIG_L1_INIT_RAM symbol.
Prevent further viral propogation of the unused
symbol CONFIG_L1_INIT_RAM by just removing it.
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Acked-by: Andy Fleming <afleming@freescale.com>
Ed Swarthout [Wed, 29 Oct 2008 14:21:44 +0000 (09:21 -0500)]
fsl ddr skip interleaving if not supported.
Removed while(1) hang if memctl_intlv_ctl is set wrong.
Remove embedded tabs from strings.
Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Anatolij Gustschin [Thu, 13 Nov 2008 17:08:57 +0000 (18:08 +0100)]
85xx: socrates: fix DDR SDRAM tlb entry configuration
since commit
be0bd8234b9777ecd63c4c686f72af070d886517
tlb entry for socrates DDR SDRAM will be reconfigured
by setup_ddr_tlbs() from initdram() causing an
inconsistency with previously configured DDR SDRAM tlb
entry from tlb_table:
socrates>l2cam 7 9
IDX PID EPN SIZE V TS RPN U0-U3 WIMGE UUUSSS
7 : 00
00000000 256MB V 0 -> 0_00000000 0000 -I-G- ---RWX
8 : 00
00000000 256MB V 0 -> 0_00000000 0000 ----- ---RWX
9 : 00
10000000 256MB V 0 -> 0_10000000 0000 ----- ---RWX
This patch makes the presence of the DDR SDRAM tlb entry in
the tlb_table dependent on CONFIG_SPD_EEPROM to avoid this
inconsistency.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Andy Fleming <afleming@freescale.com>
Peter Tyser [Tue, 11 Nov 2008 16:17:10 +0000 (10:17 -0600)]
85xx: Add CPU 2 errata workaround to all 8548 boards
All mpc8548-based boards should implement the suggested workaround
to CPU 2 errata. Without the workaround, its possible for the
8548's core to hang while executing a msync or mbar 0 instruction
and a snoopable transaction from an I/O master tagged to make
quick forward progress is present.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Acked-by: Andy Fleming <afleming@freescale.com>
Dave Liu [Tue, 28 Oct 2008 09:53:45 +0000 (17:53 +0800)]
85xx: the DDR tlb is missed for the !CONFIG_SPD_EEPROM case
we need TLB entry for DDR at !SPD case.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Acked-by: Andy Fleming <afleming@freescale.com>
Dave Liu [Tue, 28 Oct 2008 09:53:38 +0000 (17:53 +0800)]
85xx: remove the unused ddr_enable_ecc in the board file
The DDR controller of 8548/8544/8568/8572/8536 processors
have the ECC data init feature, and the new DDR code is
using the feature, and we don't need the way with DMA to
init memory any more.
Signed-off-by: Dave Liu <daveliu@freescale.com>
Acked-by: Andy Fleming <afleming@freescale.com>
Scott Wood [Tue, 25 Nov 2008 16:47:02 +0000 (10:47 -0600)]
NAND: Fix misplaced return statement in nand_{read,write}_skip_bad().
This caused the operation to be needlessly repeated if there were
no bad blocks and no errors.
Signed-off-by: Valeriy Glushkov <gvv@lstec.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Wolfgang Denk [Tue, 25 Nov 2008 11:04:41 +0000 (12:04 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Tue, 25 Nov 2008 10:47:41 +0000 (11:47 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Tue, 25 Nov 2008 10:45:34 +0000 (11:45 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Tue, 25 Nov 2008 10:40:57 +0000 (11:40 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ubi
Wolfgang Denk [Tue, 25 Nov 2008 10:32:10 +0000 (11:32 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-cfi-flash
Michal Simek [Mon, 24 Nov 2008 11:09:50 +0000 (12:09 +0100)]
ppc4xx: ml300 remove Xilinx BSP from ml300 folder
This BSP should be outside u-boot source tree.
The second reason is that xilinx ppc405 was moved to generic platform.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
Matthias Fuchs [Mon, 24 Nov 2008 14:11:10 +0000 (15:11 +0100)]
ppc4xx: Remove unused features
This patch disables some unused features from the PCI405 configuration
to keep U-Boot image size below 192k.
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Matthias Fuchs [Mon, 24 Nov 2008 14:11:09 +0000 (15:11 +0100)]
ppc4xx: Use correct io accessors for PCI405
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Matthias Fuchs [Mon, 24 Nov 2008 14:11:08 +0000 (15:11 +0100)]
ppc4xx: Remove unused code from PCI405 code
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Wolfgang Denk [Mon, 24 Nov 2008 20:50:59 +0000 (21:50 +0100)]
AT91RM9200DK: fix broken boot from NOR flash
Signed-off-by: Wolfgang Denk <wd@denx.de>
Jens Scharsig [Tue, 18 Nov 2008 09:48:46 +0000 (10:48 +0100)]
at91rm9200: fix broken boot from nor flash
This patch fix the broken boot from NOR Flash on AT91RM9200 boards, if
CONFIG_AT91RM9200 is defined and nor preloader is used.
Signed-off-by: Jens Scharsig <esw@bus-elektronik.de>
Piotr Ziecik [Mon, 17 Nov 2008 14:58:00 +0000 (15:58 +0100)]
UBI: Add proof-of-concept CFI flash support
With this patch UBI can be used on CFI flash chips.
Signed-off-by: Piotr Ziecik <kosmo@semihalf.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Piotr Ziecik [Mon, 17 Nov 2008 14:57:59 +0000 (15:57 +0100)]
mtd: Remove a printf() from add_mtd_device().
Remove a printf() from add_mtd_device(), which produces spurious output.
Signed-off-by: Piotr Ziecik <kosmo@semihalf.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Piotr Ziecik [Mon, 17 Nov 2008 14:57:58 +0000 (15:57 +0100)]
cfi-mtd: Add cfi-mtd driver.
Add cfi-mtd driver, which exports CFI flash to MTD layer.
This allows CFI flash devices to be used from MTD layer.
Building of the new driver is controlled by CONFIG_FLASH_CFI_MTD
option. Initialization is done by calling cfi_mtd_init() from
flash_init().
Signed-off-by: Piotr Ziecik <kosmo@semihalf.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Piotr Ziecik [Mon, 17 Nov 2008 14:49:32 +0000 (15:49 +0100)]
cfi_flash: Add interface for flash verbosity control
Add interface for flash verbosity control. It allows
to disable output from low-level flash API. It is useful
when calling these low-level functions from context other
than flash commands (for example the MTD/CFI interface
implmentation).
Signed-off-by: Piotr Ziecik <kosmo@semihalf.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Piotr Ziecik [Thu, 20 Nov 2008 14:17:38 +0000 (15:17 +0100)]
cfi_flash: Export flash_sector_size() function.
Export flash_sector_size() function from drivers/mtd/cfi_flash.c,
so that it can be used in the upcoming cfi-mtd driver.
Signed-off-by: Piotr Ziecik <kosmo@semihalf.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Stefan Roese [Mon, 17 Nov 2008 13:45:22 +0000 (14:45 +0100)]
cfi_flash: Make all flash access functions weak
This patch defines all flash access functions as weak so that
they can be overridden by board specific versions.
This will be used by the upcoming VCTH board support where the NOR
FLASH unfortunately can't be accessed memory-mapped. Special
accessor functions are needed here.
To enable this weak functions you need to define
CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS in your board config header.
Otherwise the "old" default functions will be used resulting
in smaller code.
Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Stefan Roese [Mon, 24 Nov 2008 07:31:16 +0000 (08:31 +0100)]
UBI: Change parsing of size in commands to default to hex
Currently the size parameters of the UBI commands (e.g. "ubi write") are
decoded as decimal instead of hex as default. This patch now interprets
all these values consistantly as hex, as all other standard U-Boot commands
do.
Signed-off-by: Stefan Roese <sr@denx.de>
Stefan Roese [Fri, 21 Nov 2008 12:06:06 +0000 (13:06 +0100)]
ppc4xx: ML2 shouldn't include the 4xx EMAC driver
Signed-off-by: Stefan Roese <sr@denx.de>
Yuri Tikhonov [Fri, 14 Nov 2008 13:19:19 +0000 (16:19 +0300)]
ppc4xx: katmai: Change default config
This patch enables support for EXT2, and increases the
CONFIG_SYS_BOOTMAPSZ size for the default configuration
of the katmai boards to use them as the RAID-reference
AMCC setups.
EXT2 enabling allows one to boot kernels from the EXT2
formatted Compact Flash cards.
CONFIG_SYS_BOOTMAPSZ increasing allows one to boot the
Linux kernels, which use PAGE_SIZE of 256KB. Otherwise,
the memory area with DTB file (which is placed at the
end of the bootmap area) will turn out to be overlapped
with the BSS segment of the 256KB kernel, and zeroed
in early_init() of Linux.
Actually, increasing of the bootmap size could be done
via setting of the bootm_size U-Boot variable, but it looks
like the current U-Boot implementation have some bootm_size-
related functionality lost. In many places through the U-Boot
code the CONFIG_SYS_BOOTMAPSZ definition is used directly
(instead of trying to read the corresponding value from the
environment). The same is truth for the boot_jump_linux()
function in lib_ppc/bootm.c, where U-Boot transfers control
to Linux passing the CONFIG_SYS_BOOTMAPSZ (not bootm_size)
value to the booting kernel.
Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Dave Mitchell [Thu, 20 Nov 2008 20:09:50 +0000 (14:09 -0600)]
ppc4xx: Changed 460EX/GT OCM TLB and internal SRAM initialization
Expanded OCM TLB to allow access to 64K OCM as well as 256K of
internal SRAM.
Adjusted internal SRAM initialization to match updated user
manual recommendation.
OCM & ISRAM are now mapped as follows:
physical virtual size
ISRAM 0x4_0000_0000 0xE300_0000 256k
OCM 0x4_0004_0000 0xE304_0000 64k
A single TLB was used for this mapping.
Signed-off-by: Dave Mitchell <dmitch71@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Dave Mitchell [Thu, 20 Nov 2008 20:00:49 +0000 (14:00 -0600)]
ppc4xx: Added ppc4xx-isram.h for internal SRAM and L2 cache DCRs
Added include/asm-ppc/ppc4xx-isram.h and moved internal SRAM and
L2 cache DCRs from ppc440.h to this new header.
Also converted these DCR defines from lowercase to uppercase and
modified referencing modules to use them.
Signed-off-by: Dave Mitchell <dmitch71@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Steven A. Falco [Thu, 20 Nov 2008 19:37:57 +0000 (14:37 -0500)]
ppc4xx: Delete unused definitions for SDR0_DDRCFG from ppc4xx.h
The definitions of bits in SDR_CFG are incorrect, and not used within
U-Boot. Therefore, they can be removed.
The naming of the sdr_ddrdl/sdr_cfg registers do not follow conventions,
and are unused, so they can be removed too.
A definition for SDR0_DDRCFG is added.
Signed-off-by: Steven A. Falco <sfalco@harris.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Dirk Behme [Mon, 10 Nov 2008 19:15:25 +0000 (20:15 +0100)]
ARM: OMAP: Convert IO macros
Convert IO macros to readx/writex.
Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
Ilko Iliev [Sun, 9 Nov 2008 14:53:14 +0000 (15:53 +0100)]
lib_arm: do_bootm_linux() - correct a small mistake
This patch corrects a small bug in the "if" condition:
the parameter "flag" is 0 and the "if" condition is always true.
The result is - the boom command doesn't start the kernel.
Affected targets: all arm based.
Signed-off-by: Ilko Iliev <iliev@ronetix.at>
Stelian Pop [Sat, 8 Nov 2008 23:14:46 +0000 (00:14 +0100)]
AT91: Enable PLLB for USB
At least some (old ?) versions of the AT91Bootstrap do not set up the
PLLB correctly to 48 MHz in order to make USB host function correctly.
This patch sets up the PLLB to the same values Linux uses, and makes USB
work ok on the following CPUs:
- AT91CAP9
- AT91SAM9260
- AT91SAM9263
This patch also defines CONFIG_USB_STORAGE and CONFIG_CMD_FAT for all
the relevant AT91CAP9/AT91SAM9 atmel boards.
Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Stelian Pop [Fri, 7 Nov 2008 12:55:14 +0000 (13:55 +0100)]
AT91: Use AT91_CPU_CLOCK in displays
Introduce AT91_CPU_CLOCK and use it for displaying the CPU
speed in the LCD driver.
Also make AT91_MAIN_CLOCK and AT91_MASTER_CLOCK reflect the
corresponding board clocks.
Signed-off-by: Stelian Pop <stelian@popies.net>
Stefan Roese [Thu, 20 Nov 2008 10:46:20 +0000 (11:46 +0100)]
ppc4xx: Clear all potentially pending exceptions in MCSR
This is needed on Canyonlands which still has an exception pending
while running relocate_code(). This leads to a failure after trap_init()
is moved to the top of board_init_r().
Signed-off-by: Stefan Roese <sr@denx.de>
Heiko Schocher [Wed, 19 Nov 2008 09:10:30 +0000 (10:10 +0100)]
powerpc: 83xx: add missing TIMING_CFG1_CASLAT_* defines
Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Howard Gregory [Tue, 4 Nov 2008 06:55:33 +0000 (14:55 +0800)]
mpc83xx: Improve the performance of DDR memory
modify the CAS timings. my understanding is that these
settings decrease various wait times in the DDR interface.
Because these wait times are in clock cycles, and the DDR
clock on the 8315 RDB runs slower than on some other 83xx
platforms, we can dial down these values without a problem,
thereby decreasing the latency of memory a little.
Signed-off-by: Howard Gregory <Greg.Howard@freescale.com>
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Kyungmin Park [Fri, 24 Oct 2008 12:55:33 +0000 (14:55 +0200)]
ARM: Add Apollon UBI support
To enable UBI on Apollon you need to uncomment the CONFIG_SYS_USE_UBI
macro.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 10:47:05 +0000 (11:47 +0100)]
UBI: Add UBI command support
This patch adds these UBI commands:
ubi part [nand|onenand] [part] - Show or set current partition
ubi info [l[ayout]] -Display volume and UBI layout information
ubi create[vol] volume [size] [type] - Create volume name with size
ubi write[vol] address volume size - Write volume from address with size
ubi read[vol] address volume [size] - Read volume to address with size
ubi remove[vol] volume - Remove volume
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:38:24 +0000 (16:38 +0100)]
UBI: Add basic UBI support to U-Boot (Part 8/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:36:36 +0000 (16:36 +0100)]
UBI: Add basic UBI support to U-Boot (Part 7/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:32:36 +0000 (16:32 +0100)]
UBI: Add basic UBI support to U-Boot (Part 6/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:28:06 +0000 (16:28 +0100)]
UBI: Add basic UBI support to U-Boot (Part 5/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:27:23 +0000 (16:27 +0100)]
UBI: Add basic UBI support to U-Boot (Part 4/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:26:54 +0000 (16:26 +0100)]
UBI: Add basic UBI support to U-Boot (Part 3/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:25:44 +0000 (16:25 +0100)]
UBI: Add basic UBI support to U-Boot (Part 2/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:23:06 +0000 (16:23 +0100)]
UBI: Add basic UBI support to U-Boot (Part 1/8)
This patch adds basic UBI (Unsorted Block Image) support to U-Boot.
It's based on the Linux UBI version and basically has a "OS"
translation wrapper that defines most Linux specific calls
(spin_lock() etc.) into no-ops. Some source code parts have been
uncommented by "#ifdef UBI_LINUX". This makes it easier to compare
this version with the Linux version and simplifies future UBI
ports/bug-fixes from the Linux version.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Kyungmin Park [Wed, 19 Nov 2008 15:20:36 +0000 (16:20 +0100)]
MTD: Add MTD paritioning infrastructure
This MTD part infrastructure will be used by the upcoming
UBI support.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Selvamuthukumar [Thu, 16 Oct 2008 17:24:03 +0000 (22:54 +0530)]
Align end of bss by 4 bytes
Most of the bss initialization loop increments 4 bytes
at a time. And the loop end is checked for an 'equal'
condition. Make the bss end address aligned by 4, so
that the loop will end as expected.
Signed-off-by: Selvamuthukumar <selva.muthukumar@e-coninfotech.com>
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Tue, 18 Nov 2008 20:40:38 +0000 (21:40 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc86xx
Becky Bruce [Tue, 11 Nov 2008 01:45:35 +0000 (19:45 -0600)]
mpc8641: fix address-cells default in old .dts detection
address-cells defaults to 2, not 1; so in the unlikely
event that it isn't specified, this patch is required
for correct operation.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Fri, 31 Oct 2008 22:14:39 +0000 (17:14 -0500)]
lib_ppc: Move trap_init to occur earlier
Doing trap_init immediately once we're running from RAM
means we're no longer dependent on the physical location of
the flash on non-BookE platforms. Before trap_init, those
platforms switch to real mode and go to 0xfff00100 on exception.
After the switch, they go to 0x00000100 This makes it easier to
move the flash location.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Fri, 7 Nov 2008 19:46:19 +0000 (13:46 -0600)]
mpc8641: Try to detect old .dts files
Since we've changed the memory map of the board, be nice and
add some checking to try to catch out-of-date .dts files. We do
this by checking the CCSRBAR location in the .dts and comparing
it to the CCSRBAR location in u-boot. If they don't match, a
warning msg is printed. This isn't foolproof, but it's simple and
will catch most of the cases where an out-of-date .dts is present,
including all of the cases where a new u-boot is used with an old
standard MPC8641 .dts file as supplied with Linux.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Thu, 6 Nov 2008 19:04:09 +0000 (13:04 -0600)]
toplevel Makefile: Add MPC8641HPCN_36BIT target
This will enable CONFIG_PHYS_36BIT for MPC8641HPCN.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Thu, 6 Nov 2008 23:37:35 +0000 (17:37 -0600)]
mpc8641: Support 36-bit physical addressing
This patch creates a memory map with all the devices
in 36-bit physical space, in addition to the 32-bit map.
The CCSR relocation is moved (again, sorry) to
allow for the physical address to be 36 bits - this
requires translation to be enabled. With 36-bit physical
addressing enabled, we are no longer running with VA=PA
translations. This means we have to distinguish between
the two in the config file. The existing region name is
used to indicate the virtual address, and a _PHYS variety
is created to represent the physical address.
Large physical addressing is not enabled by default.
Set CONFIG_PHYS_64BIT in the config file to turn this on.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Thu, 6 Nov 2008 23:36:04 +0000 (17:36 -0600)]
mpc8641: Change 32-bit memory map
The memory map on the 8641hpcn is modified to look more like
the 85xx boards; this is a step towards a more standardized
layout going forward. As part of this change, we now relocate
the flash.
The regions for some of the mappings were far larger than they
needed to be. I have reduced the mappings to match the
actual sizes supported by the hardware.
In addition I have removed the comments at the head
of the BAT blocks in the config file, rather than updating
them. These get horribly out of date, and it's a simple
matter to look at the defines to see what they are set to
since everything is right here in the same file.
Documentation has been changed to reflect the new map, as this
change is user visible, and affects the OS which runs post-uboot.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:35 +0000 (14:55 -0600)]
mpc86xx: Change early FLASH mapping to 1M at CONFIG_MONITOR_BASE_EARLY
We define CONFIG_MONITOR_BASE_EARLY to define the initial location
of the bootpage in flash. Use this to create an early mapping
definition for the FLASH, and change the early_bats code to use this.
This change facilitates the relocation of the flash since the early
mappings are no longer tied to the final location of the flash.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:34 +0000 (14:55 -0600)]
mpc86xx: Use SRR0/1/rfi to enable address translation, not blr
Using a mtmsr/blr means that you have to be executing at the
same virtual address once you enable translation. This is
unnecessarily restrictive, and is not really how this is
usually done. Change it to use the more common mtspr SRR0/SRR1
and rfi method.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:33 +0000 (14:55 -0600)]
mpc8641: make DIAG_ADDR == FLASH_BASE
Currently, that's what it is, but it's hardcoded.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:32 +0000 (14:55 -0600)]
mpc8641: Drop imaginary second flash bank, map 8MB
There's a lot of setup and foo for the second flash
bank. The problem is, this board doesn't actually have one.
Clean this up. Also, the flash is 8M in size. Get rid
of the confusing aliased overmapping, and just map 8M.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:31 +0000 (14:55 -0600)]
mpc8641: only define CONFIG_ENV_SIZE once
It's currently defined twice inside in an if/else block, but
both halves set the same value. Move the define outside
the if.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:30 +0000 (14:55 -0600)]
mpc86xx: Move setup_bats into cpu_init_f
In order to later allow for a physical relocation of the
flash, setup_bats, which sets up the final BAT mapping
for the board, needs to happen *after* init_laws().
Otherwise, there will be no window programmed for the flash
at the new physical location at the point when we change
the mmu translation.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Wed, 5 Nov 2008 20:55:29 +0000 (14:55 -0600)]
mpc8641: Remove extra "0" from BR2 define
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Jon Loeliger [Mon, 10 Nov 2008 16:04:51 +0000 (10:04 -0600)]
Merge commit 'wd/master'
Richard Retanubun [Thu, 23 Oct 2008 13:08:18 +0000 (09:08 -0400)]
drivers/qe/uec_phy.c: Added PHY-less (fixed PHY) driver.
Copied over the fixed PHY driver as used in pp4xx/4xx_enet.c.
This adds support for PHY-less MAC connections to the UEC.
Signed-off-by: Richard Retanubun <RichardRetanubun@RuggedCom.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
TsiChung Liew [Thu, 23 Oct 2008 16:27:24 +0000 (16:27 +0000)]
ColdFire: Add mii driver in drivers/net
All CF platforms' mii.c are consolidated into one
Signed-off-by: TsiChung Liew <Tsi-Chung.Liew@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Tue, 28 Oct 2008 06:53:17 +0000 (23:53 -0700)]
Moved initialization of PPC4xx EMAC to cpu_eth_init()
Removed initialization of the driver from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Acked-by: Stefan Roese <sr@denx.de>
Ben Warren [Mon, 10 Nov 2008 05:29:23 +0000 (21:29 -0800)]
Moved PPC4xx EMAC driver to drivers/net
Also changed path in all linker scripts that reference this driver
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Acked-by: Stefan Roese <sr@denx.de>
Ben Warren [Tue, 28 Oct 2008 06:50:15 +0000 (23:50 -0700)]
Changed PPC4xx EMAC driver to require CONFIG_PPC4xx_EMAC
All in-tree IBM/AMCC PPC4xx boards using the EMAC get this new CONFIG
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Acked-by: Stefan Roese <sr@denx.de>
Ben Warren [Fri, 24 Oct 2008 05:02:49 +0000 (22:02 -0700)]
Moved initialization of MPC8XX SCC to cpu_eth_init()
Removed initialization of the driver from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Thu, 23 Oct 2008 06:47:51 +0000 (23:47 -0700)]
Moved initialization of MPC8220 FEC to cpu_eth_init()
Removed initialization of the driver from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Thu, 23 Oct 2008 06:32:48 +0000 (23:32 -0700)]
Moved initialization of QE Ethernet controller to cpu_eth_init()
Removed initialization of the driver from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Thu, 23 Oct 2008 06:20:29 +0000 (23:20 -0700)]
Moved initialization of FCC Ethernet controller to cpu_eth_init
Affected boards:
Several MPC8xx boards
Several MPC8260/MPC8272 boards
Several MPC85xx boards
Removed initialization of the driver from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Fri, 31 Oct 2008 05:15:35 +0000 (22:15 -0700)]
Fix typo in cpu/mpc85xx/cpu.c
CONFIG_MPC85xx_FEC -> CONFIG_MPC85XX_FEC
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Shinya Kuribayashi [Sun, 19 Oct 2008 03:08:50 +0000 (12:08 +0900)]
net: Move initialization of Au1x00 SoC ethernet MAC to cpu_eth_init
This patch will move au1x00_eth_initialize from net/eth.c to cpu_eth_init
as a part of ongoing eth_initialize cleanup work. The function ret value
is also fixed as it should be negative on fail.
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren [Fri, 5 Sep 2008 05:55:22 +0000 (01:55 -0400)]
Moved initialization of IXP4XX_NPE Ethernet controller to cpu_eth_init()
Also, removed the driver initialization from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Clive Stubbings [Mon, 27 Oct 2008 15:05:00 +0000 (15:05 +0000)]
xilinx_emaclite buffer overrun
Patch to fix buffer allocation size and alignment. Buffer needs to be u32 aligned and
PKTSIZE_ALIGN bytes long.
Acked-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
richardretanubun [Fri, 26 Sep 2008 12:59:12 +0000 (08:59 -0400)]
NET: QE: UEC: Make uec_miiphy_read() and uec_miiphy_write() use the devname arg.
The current uec_miiphy_read and uec_miiphy_write hardcode access devlist[0]
This patch makes these function use the devname argument that is passed in to
allow access to the phy registers of other devices in devlist[].
Signed-of-by: Richard Retanubun <RichardRetanubun@RugggedCom.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
richardretanubun [Mon, 6 Oct 2008 19:31:43 +0000 (15:31 -0400)]
Adds two more ethernet interface to 83xx
Fixed compiler warning "declared but unused" eth5_uec_info and eth6_uec_info.
Signed-off-by: Richard Retanubun <RichardRetanubun@RugggedCom.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Wolfgang Denk [Sat, 8 Nov 2008 23:33:44 +0000 (00:33 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 8 Nov 2008 23:33:10 +0000 (00:33 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Sat, 8 Nov 2008 23:10:03 +0000 (00:10 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 8 Nov 2008 23:09:51 +0000 (00:09 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-at91
Wolfgang Denk [Sat, 8 Nov 2008 23:01:59 +0000 (00:01 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 8 Nov 2008 23:01:42 +0000 (00:01 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-coldfire
Stelian Pop [Fri, 7 Nov 2008 12:54:31 +0000 (13:54 +0100)]
AT91: Replace AT91_BASE_EMAC by the board specific values.
AT91_BASE_EMAC is never used outside the board specific files,
so replace its usage by the board specific AT91xxx_BASE_EMAC.
Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Stelian Pop [Fri, 7 Nov 2008 11:09:21 +0000 (12:09 +0100)]
AT91: Replace (undefined) AT91_ID_US* by the board specific values.
AT91_ID_US0 / AT91_ID_US1 / AT91_ID_US2 were used but never defined.
Since they are never used outside the board specific files, they can
be replaced by the board specific AT91xxx_ID_US0 / AT91xxx_ID_US1 /
AT91xxx_ID_US2.
Bug spotted by Jesus Alvarez <jalvarez@micromint.com>.
Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 1 Nov 2008 09:47:59 +0000 (10:47 +0100)]
Makefile/at91sam9: move some at91sam9 to the correct subsection for arm926ejs
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Sergey Lapin [Fri, 31 Oct 2008 11:28:43 +0000 (12:28 +0100)]
Custom
AFEB9260 board support
This patch provides support for
AFEB9260 board, a product of
OpenSource hardware and software. Some commertial projects
are made with this design. A board is basically AT91SAM9260-EK
with some modifications and different peripherals and different
parts used. Main purpose of this project is to gain experience in
hardware design.
More info: http://groups.google.com/group/arm9fpga-evolution-board
(In Russian only, sorry).
Subversion repository: svn://194.85.238.22/home/users/george/svn/arm9eb
Signed-off-by: Sergey Lapin <slapin@ossfans.org>
Tomohiro Masubuchi [Tue, 21 Oct 2008 04:17:16 +0000 (13:17 +0900)]
Change to use "do_div" macro
Signed-off-by: Tomohiro Masubuchi <tomohiro_masubuchi@tripeaks.co.jp>
Roman Mashak [Wed, 22 Oct 2008 20:00:26 +0000 (16:00 -0400)]
ARM926EJ-S: relocate OMAP specific 'cpuinfo.c' into OMAP directory
OMAP identification is implemented in 'cpuinfo.c' and located in ARM926EJ-S directory.
It makes sense to place this file in OMAP specific subdirectory, i.e. cpu/arm926ejs/omap
Signed-off-by: Roman Mashak <romez777@gmail.com>
Roman Mashak [Tue, 21 Oct 2008 10:01:41 +0000 (03:01 -0700)]
ARM/Versatile port: Removed unused functions
Removal of never used functions.
Signed-off-by: Roman Mashak <romez777@gmail.com>
Becky Bruce [Mon, 3 Nov 2008 21:44:01 +0000 (15:44 -0600)]
powerpc: change 86xx SMP boot method
We put the bootpg for the secondary cpus into memory and use
BPTR to get to it. This is a step towards converting to the
ePAPR boot methodology. Also, the code is written to
deal properly with more than 4GB of RAM.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Fri, 31 Oct 2008 22:13:49 +0000 (17:13 -0500)]
8641HPCN: Config file cleanup
There are several items in the config file that were hardcoded
but that should really be based on other config options, since
the regions are contiguous and depend on being so. This cleans
that up a bit. Also, add BR_PHYS_ADDR() macro to convert
addresses into the proper format for BR registers.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Becky Bruce [Fri, 31 Oct 2008 22:13:32 +0000 (17:13 -0500)]
86xx: Make dram_size a phys_size_t
It's currently a long and should be phys_size_t.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>