Commit graph

33364 commits

Author SHA1 Message Date
Wolfgang Denk
22bab87db1 Merge branch 'master' of git://git.denx.de/u-boot-mips 2008-12-30 23:28:13 +01:00
Wolfgang Denk
440db47449 Merge branch 'master' of git://git.denx.de/u-boot-nand-flash 2008-12-30 23:25:01 +01:00
Wolfgang Denk
b3a974d005 Merge branch 'master' of git://git.denx.de/u-boot-usb 2008-12-30 23:22:19 +01:00
Wolfgang Denk
0668236baf README: update mailing list name and hits to patch submission.
Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-30 22:56:11 +01:00
Peter Tyser
d9011f9b75 85xx: Enable inbound PCI config cycles for X-ES boards cleanup
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-29 12:48:19 -06:00
Peter Tyser
1f03cbfae2 XPedite5200 board support cleanup
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-29 12:46:36 -06:00
Jean-Christophe PLAGNIOL-VILLARD
fea91edee8 usb_kbd: fix usb_kbd_deregister when DEVICE_DEREGISTER not enable
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Remy Böhmer <linux@bohmer.net>
2008-12-20 11:03:01 +01:00
Trent Piepho
ada591d2a0 mpc8[56]xx: Put localbus clock in sysinfo and gd
Currently MPC85xx and MPC86xx boards just calculate the localbus frequency
and print it out, but don't save it.

This changes where its calculated and stored to be more consistent with the
CPU, CCB, TB, and DDR frequencies and the MPC83xx localbus clock.

The localbus frequency is added to sysinfo and calculated when sysinfo is
set up, in cpu/mpc8[56]xx/speed.c, the same as the other frequencies are.

get_clocks() copies the frequency into the global data, as the other
frequencies are, into a new field that is only enabled for MPC85xx and
MPC86xx.

checkcpu() in cpu/mpc8[56]xx/cpu.c will print out the local bus frequency
from sysinfo, like the other frequencies, instead of calculating it on the
spot.

Signed-off-by: Trent Piepho <tpiepho@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Jon Loeliger <jdl@freescale.com>
2008-12-19 18:32:49 -06:00
Trent Piepho
9863d6aca1 mpc86xx: Double local bus clock divider
The local bus clock divider should be doubled for both 8610 and 8641.

Signed-off-by: Trent Piepho <tpiepho@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Jon Loeliger <jdl@freescale.com>
2008-12-19 18:32:48 -06:00
Trent Piepho
446c381e3e mpc8568: Double local bus clock divider
The clock divider for the MPC8568 local bus should be doubled, like the
other newer MPC85xx chips.

Since there are now more chips with a 2x divider than a 1x, and any new
85xx chips will probably be 2x, invert the sense of the #if so that it
lists the 1x chips instead of the 2x ones.

Signed-off-by: Trent Piepho <tpiepho@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Jon Loeliger <jdl@freescale.com>
2008-12-19 18:32:48 -06:00
Dave Liu
f51f07eb58 85xx: Fix the boot window issue
If one custom board is using the 8MB flash, it is set
as FLASH_BASE = 0xef000000, TEXT_BASE = 0xef780000.
The current start.S code will be broken at switch_as.

It is because the TLB1[15] is set as 16MB page size,
EPN = TEXT_BASE & 0xff000000, RPN = 0xff000000.

For the 8MB flash case, the EPN = 0xefxxxxxx,
RPN = 0xffxxxxxx. Assume the virt address of switch_as
is 0xef7ff18c, the real address of the instruction at
switch_as should be 0xff7ff18c. the 0xff7ff18c is out
of the range of the default 8MB boot LAW window
0xff800000 - 0xffffffff.

So when we switch to AS1 address space at switch_as,
the core can't fetch the instruction at switch_as any
more. It will cause broken issue.

Signed-off-by: Dave Liu <daveliu@freescale.com>
2008-12-19 18:32:48 -06:00
Paul Gortmaker
58da8890d5 sbc8548: use proper PHY address
The values given for the PHY address were wrong, so the code
read no valid PHY ID, and fell through to the generic PHY
support, which would work on 1000M but would not auto negotiate
down to 100M or 10M.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2008-12-19 18:32:48 -06:00
Paul Gortmaker
ad22f9273c sbc8548: enable command line editing by default.
Lets make things a bit more user friendly.  It isn't 1985 anymore.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2008-12-19 18:32:47 -06:00
Paul Gortmaker
bd93105fa1 sbc8548: don't enable the 3rd and 4th eTSEC
These interfaces don't have usable connectors on the board, so don't
bother enumerating or configuring them.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2008-12-19 18:32:47 -06:00
Haiying Wang
181a365011 Set IVPR to kenrel entry point in second core boot page
Assuming the OSes exception vectors start from the base of kernel address, and
the kernel physical starting address can be relocated to an non-zero address.
This patch enables the second core to have a valid IVPR for debugger before
kernel setting IVPR in CAMP mode. Otherwise, IVPR is 0x0 and it is not a valid
value for second core which runs kernel at different physical address other
than 0x0.

Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
2008-12-19 18:32:41 -06:00
Trent Piepho
a5d212a263 mpc8xxx: LCRR[CLKDIV] is sometimes five bits
On newer CPUs, 8536, 8572, and 8610, the CLKDIV field of LCRR is five bits
instead of four.

In order to avoid an ifdef, LCRR_CLKDIV is set to 0x1f on all systems.  It
should be safe as the fifth bit was defined as reserved and set to 0.

Code that was using a hard coded 0x0f is changed to use LCRR_CLKDIV.

Signed-off-by: Trent Piepho <tpiepho@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Jon Loeliger <jdl@freescale.com>
2008-12-19 18:20:25 -06:00
Trent Piepho
58ec4866ed mpc8[56]xx: Put localbus clock in device tree
Export the localbus frequency in the device tree, the same way the CPU, TB,
CCB, and various other frequencies are exported in their respective device
tree nodes.

Some localbus devices need this information to be programed correctly, so
it makes sense to export it along with the other frequencies.

Unfortunately, when someone wrote the localbus dts bindings, they didn't
bother to define what the "compatible" property should be.  So it seems no
one was quite sure what to put in their dts files.

Based on current existing dts files in the kernel source, I've used
"fsl,pq3-localbus" and "fsl,elbc" for MPC85xx, which are used by almost all
of the 85xx devices, and are looked for by the Linux code.  The eLBC is
apparently not entirely backward compatible with the pq3 LBC and so eLBC
equipped platforms like 8572 won't use pq3-localbus.

For MPC86xx, I've used "fsl,elbc" which is used by some of the 86xx systems
and is also looked for by the Linux code.  On MPC8641, I've also used
"fsl,mpc8641-localbus" as it is also commonly used in dts files, some of
which don't use "fsl,elbc" or any other acceptable name to match on.

Signed-off-by: Trent Piepho <tpiepho@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Jon Loeliger <jdl@freescale.com>
2008-12-19 18:20:20 -06:00
Kumar Gala
9d94aff699 NAND FSL elbc: Use virt_to_phys to determine which bank is in use
The current code that determines which bank/chipselect is used for a
given NAND instance only worked for 32-bit addresses and assumed
a 1:1 mapping.  This breaks in 36-bit physical configs.

The proper way to handle this is to use the virt_to_phys() and
BR_PHYS_ADDR() routinues to match the 34-bit lbc bus address
with the the virtual address the NAND code uses.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Scott Wood <scottwood@freescale.com>
2008-12-19 18:20:08 -06:00
Kumar Gala
77c8115b1f ppc: Use addrmap in virt_to_phys and map_physmem.
If we have addr map support enabled use the mapping functions to
implement virt_to_phys() and map_physmem().

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-12-19 18:20:08 -06:00
Kumar Gala
ecf5b98c7a 85xx: Add support to populate addr map based on TLB settings
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-12-19 18:20:08 -06:00
Peter Tyser
78bbc5ce15 XPedite5200 board support
Initial support for Extreme Engineering Solutions XPedite5200 -
a MPC8548-based PMC single board computer.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-19 18:18:51 -06:00
Peter Tyser
487dcb4fb8 85xx: Enable inbound PCI config cycles for X-ES boards
Update X-ES Freescale boards to allow inbound PCI configuration
cycles when configured as agent/endpoint.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-19 18:17:22 -06:00
Peter Tyser
ccf0fdd02b XPedite5370 board support
Initial support for Extreme Engineering Solutions XPedite5370 -
a MPC8572-based 3U VPX single board computer with a PMC/XMC
site.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-19 18:11:49 -06:00
Peter Tyser
e92739d34e Add support for PCA953x I2C gpio devices
Initial support for NXP's 4 and 8 bit I2C gpio expanders
(eg pca9537, pca9557, etc). The CONFIG_PCA953X define
enables support for the devices while the CONFIG_CMD_PCA953X
define enables the pca953x command. The CONFIG_CMD_PCA953X_INFO
define enables an 'info' sub-command which provides summary
information for the given pca953x device.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-19 18:11:49 -06:00
Peter Tyser
7a89795911 pci/fsl_pci_init: Enable inbound PCI config cycles
Add fsl_pci_config_unlock() function to enable a
PCI/PCIe interface configured in agent/endpoint mode to
respond to inbound PCI configuration cycles.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-19 18:10:45 -06:00
Haavard Skinnemoen
cb54732052 Merge branch 'fixes' into cleanups
Conflicts:

	board/atmel/atngw100/atngw100.c
	board/atmel/atstk1000/atstk1000.c
	cpu/at32ap/at32ap700x/gpio.c
	include/asm-avr32/arch-at32ap700x/clk.h
	include/configs/atngw100.h
	include/configs/atstk1002.h
	include/configs/atstk1003.h
	include/configs/atstk1004.h
	include/configs/atstk1006.h
	include/configs/favr-32-ezkit.h
	include/configs/hammerhead.h
	include/configs/mimc200.h
2008-12-17 16:53:07 +01:00
Haavard Skinnemoen
92c78a3bbc avr32: Remove second definition of virt_to_phys()
The second definition introduced by 65e43a1063 conflicts with the
existing one.

Also, convert the existing definition to use phys_addr_t. The volatile
qualifier is still needed due to brain damage elsewhere.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
2008-12-17 16:43:18 +01:00
Jean-Christophe PLAGNIOL-VILLARD
b616f2b545 MIPS: qemu_mips: update doc to generate and to use qemu flash, ide file
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
2008-12-17 22:29:05 +09:00
Jean-Christophe PLAGNIOL-VILLARD
16cdf81677 MIPS: qemu_mips: update doc to use all disk and boot linux kernel
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
2008-12-17 22:28:41 +09:00
Jean-Christophe PLAGNIOL-VILLARD
13095b2f07 MIPS: qemu_mips: move env storage just after u-boot
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
2008-12-17 22:27:27 +09:00
Wolfgang Denk
aced78d852 Prepare 2009.01-rc1
Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 23:48:27 +01:00
Wolfgang Denk
9e2a79b4c5 include/configs/at91cap9adk.h: fix typo.
Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 23:13:46 +01:00
Wolfgang Denk
45ca04f237 board/trab/memory.c: Fix compile problems.
Apply changes from commit 44b4dbed to board/trab/memory.c, too.

Actually we'd need a major cleanup here - as it turns out,
board/trab/memory.c is more or less a verbatim copy of
post/drivers/memory.c ... but then, trab is EOL anyway,r
so this is not worth the effort.

Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 22:32:25 +01:00
Scott Wood
ff49ea8977 NAND: Mark the BBT as scanned prior to calling scan_bbt.
Otherwise, recursion can occur if scan_bbt does not find a bad block
table, and tries to write one, and the attempt to erase the BBT area
causes a bad block check.

Signed-off-by: Scott Wood <scottwood@freescale.com>
2008-12-16 14:40:34 -06:00
Wolfgang Denk
7f20221735 Merge branch 'master' of ssh://gemini/home/wd/git/u-boot/master 2008-12-16 17:16:34 +01:00
Ilya Yanok
584eedab66 jffs2: include <linux/mtd/compat.h> instead of defining own min_t
Include <linux/mtd/compat.h> header for min_t definition instead of
providing our own one. Removes warnings in case of OneNAND support
enabled.

Although I thinks it's a bit silly to include <linux/mtd/compat.h>
just for min_t...

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Acked-by: Stefan Roese <sr@denx.de>
2008-12-16 17:14:54 +01:00
Becky Bruce
b1ffecec37 powerpc: fix io.h build warning with CONFIG_PHYS_64BIT
Casting a pointer to a phys_addr_t when it's an unsigned long long
on a 32-bit system without first casting to a non-pointer type
generates a compiler warning. Fix this.

Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
2008-12-16 16:54:41 +01:00
Wolfgang Denk
6cdadcb3f1 trab: make trab_fkt standalone code independent of libgcc
Use our own local functions in lib_arm/ instead.

Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 16:22:50 +01:00
Wolfgang Denk
aa1bcca3d2 post/Makefile: fix dependency problem with parallel builds
Parallel builds (using "make -jN") would occasionally fail with error
messages like
	ppc_4xxFP-objdump: string.o: File format not recognized
or
	post/libpost.a(cpu.o): In function `cpu_post_test':
	/home/wd/git/u-boot/work/post/lib_ppc/cpu.c:130: undefined reference to `cpu_post_test_string'
or similar. We now make sure to run the 'postdeps" step before
attempting to build the specific POST libraries.

Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 14:44:06 +01:00
Wolfgang Denk
4a0f7538c5 Makefile: fix dependency problem with parallel builds
Parallel builds (using "make -jN") would occasionally fail with error
messages like
	include/autoconf.mk:212: *** missing separator.  Stop.
Line numbers and affected boards were changing. Obviously some
Makefiles included autoconf.mk while it was still being written to.
As a fix, we now write to a temporary file first and then rename it,
so that it is really ready to use as soon as it appears.

Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 14:41:02 +01:00
Wolfgang Denk
455ae7e87f Coding style cleanup, update CHANGELOG.
Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-16 01:02:17 +01:00
Mike Frysinger
84bc72d90c spi/stmicro: fix debug() display of cmd
The stmicro_wait_ready() func tries to show the actual opcode that was sent
to the device, but instead it displays the array pointer.  Fix it to pull
out the opcode from the start of the array.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2008-12-16 00:48:18 +01:00
Mike Frysinger
5b3375ac8c env_sf: support embedded environments
If both CONFIG_ENV_SECT_SIZE and CONFIG_ENV_SIZE are defined, and the sect
size is larger than the env size, then it means the env is embedded in a
block.  So we have to save/restore the part of the sector which is not the
environment.  Previously, saving the environment in SPI flash in this
setup would probably brick the board as the rest of the sector tends to
contain actual U-Boot data/code.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
2008-12-16 00:47:10 +01:00
Timur Tabi
ecf5f077c8 i2c: merge all i2c_reg_read() and i2c_reg_write() into inline functions
All implementations of the functions i2c_reg_read() and
i2c_reg_write() are identical. We can save space and simplify the
code by converting these functions into inlines and putting them in
i2c.h.

Signed-off-by: Timur Tabi <timur@freescale.com>
Acked-By: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2008-12-15 23:46:21 +01:00
Dave Liu
e39cd81c44 lib_ppc: rework the flush_cache
- It is possible to miss flush/invalidate the last
  cache line, we fix it at here.
- add the volatile and memory clobber.

They are pointed by Scott Wood.

Signed-off-by: Dave Liu <daveliu@freescale.com>
2008-12-15 22:31:39 +01:00
Kumar Gala
63240ba88c Introduce addr_map library
Add a library that helps in translating between virtual and physical
addresses.  This library can be useful as a simple means to implement
map_physmem() and virt_to_phys() for platforms that need functionality
beyond the simple 1:1 mapping.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-12-15 22:05:36 +01:00
Kumar Gala
65e43a1063 Introduce virt_to_phys()
virt_to_phys() returns the physical address given a virtual. In most
cases this will be just the input value as the vast majority of
systems run in a 1:1 mode.

However in systems that are not running this way it should report the
physical address or ~0 if no mapping exists for the given virtual
address.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-12-15 22:04:29 +01:00
Yuri Tikhonov
45845301af POST Make: fix the sub-dir dependencies missing.
Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
2008-12-15 22:02:15 +01:00
Martin Michlmayr
22525779cb Fix a typo in fw_env.config
Reported-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-12-15 21:49:03 +01:00
Peter Tyser
ba490b7761 Remove unused CONFIG_ADDR_STREAMING defines
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2008-12-14 12:42:42 +01:00