Wolfgang Denk [Tue, 29 Nov 2011 22:17:49 +0000 (22:17 +0000)]
DB64460: Fix GCC 4.6 build warnings
Fix:
db64460.c: In function 'debug_led':
db64460.c:413:6: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_real_open':
mv_eth.c:423:6: warning: variable 'port_status' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_stop':
mv_eth.c:641:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_xmit':
mv_eth.c:717:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_receive':
mv_eth.c:802:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_get_stats':
mv_eth.c:901:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_update_stat':
mv_eth.c:929:24: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
mv_eth.c:928:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_print_stat':
mv_eth.c:1010:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'eth_clear_mib_counters':
mv_eth.c:2067:15: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
sdram_init.c: In function 'check_dimm':
sdram_init.c:289:50: warning: variable 'trrd_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:289:37: warning: variable 'tras_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:289:24: warning: variable 'trcd_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:289:8: warning: variable 'trp_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:279:34: warning: variable 'devicesForErrCheck' set but not used [-Wunused-but-set-variable]
sdram_init.c: In function 'setup_sdram':
sdram_init.c:1255:13: warning: variable 'check' set but not used [-Wunused-but-set-variable]
sdram_init.c: In function 'initdram':
sdram_init.c:1744:25: warning: variable 'check' set but not used [-Wunused-but-set-variable]
sdram_init.c:1742:14: warning: variable 's1' set but not used [-Wunused-but-set-variable]
sdram_init.c:1742:6: warning: variable 's0' set but not used [-Wunused-but-set-variable]
Note: no attempt was make to clean up the mess coding style and
other issues in sdram_init.c
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Tue, 29 Nov 2011 22:17:48 +0000 (22:17 +0000)]
DB64360: Fix GCC 4.6 build warnings
Fix:
db64360.c: In function 'debug_led':
db64360.c:413:6: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_real_open':
mv_eth.c:424:6: warning: variable 'port_status' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_stop':
mv_eth.c:642:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_xmit':
mv_eth.c:718:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_receive':
mv_eth.c:803:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_get_stats':
mv_eth.c:902:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_update_stat':
mv_eth.c:930:24: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
mv_eth.c:929:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64360_eth_print_stat':
mv_eth.c:1011:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'eth_clear_mib_counters':
mv_eth.c:2068:15: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
sdram_init.c: In function 'check_dimm':
sdram_init.c:289:50: warning: variable 'trrd_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:289:37: warning: variable 'tras_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:289:24: warning: variable 'trcd_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:289:8: warning: variable 'trp_clocks' set but not used [-Wunused-but-set-variable]
sdram_init.c:279:34: warning: variable 'devicesForErrCheck' set but not used [-Wunused-but-set-variable]
sdram_init.c: In function 'setup_sdram':
sdram_init.c:1256:13: warning: variable 'check' set but not used [-Wunused-but-set-variable]
sdram_init.c: In function 'initdram':
sdram_init.c:1735:25: warning: variable 'check' set but not used [-Wunused-but-set-variable]
sdram_init.c:1733:14: warning: variable 's1' set but not used [-Wunused-but-set-variable]
sdram_init.c:1733:6: warning: variable 's0' set but not used [-Wunused-but-set-variable]
Note: no attempt was make to clean up the mess coding style and
other issues in sdram_init.c
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Tue, 29 Nov 2011 22:17:47 +0000 (22:17 +0000)]
board/cray/L1/flash.c: Fix GCC 4.6 build warning
Fix:
flash.c: In function 'flash_erase':
flash.c:276:24: warning: variable 'l_sect' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Wolfgang Denk [Tue, 29 Nov 2011 22:17:46 +0000 (22:17 +0000)]
drivers/block/sata_dwc.c: Fix GCC 4.6 build warning
Fix:
sata_dwc.c: In function 'scan_sata':
sata_dwc.c:535:38: warning: variable 'udma_mask' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kazuaki Ichinohe <kazuichi@fsi.co.jp>
Wolfgang Denk [Tue, 29 Nov 2011 22:17:45 +0000 (22:17 +0000)]
board/amirix/ap1000/flash.c: Fix GCC 4.6 build warning
Fix:
flash.c: In function 'flash_write_cfiword':
flash.c:778:11: warning: variable 'ctladdr' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Wolfgang Denk [Tue, 29 Nov 2011 22:17:44 +0000 (22:17 +0000)]
alpr board: Fix GCC 4.6 build warnings
Fix:
fpga.c: In function 'fpga_pre_fn':
fpga.c:88:16: warning: variable 'reg' set but not used
[-Wunused-but-set-variable]
nand.c: In function 'alpr_nand_dev_ready':
nand.c:125:18: warning: variable 'val' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Stefan Roese <sr@denx.de>
Acked-by: Stefan Roese <sr@denx.de>
Wolfgang Denk [Thu, 1 Dec 2011 23:05:25 +0000 (00:05 +0100)]
Merge branch 'sr@denx.de' of git://git.denx.de/u-boot-staging
* 'sr@denx.de' of git://git.denx.de/u-boot-staging:
image: Don't detect XIP images as overlapping.
image: Implement IH_TYPE_KERNEL_NOLOAD
Wolfgang Denk [Thu, 1 Dec 2011 23:03:08 +0000 (00:03 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx
* 'master' of git://git.denx.de/u-boot-ppc4xx:
ppc4xx: Add Io64 board support
ppc4xx: fix PMC440 painit command
ppc4xx: remove invalid access to PCI_BRDGOPT2 register
ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation
Wolfgang Denk [Thu, 1 Dec 2011 22:58:11 +0000 (23:58 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
* 'master' of git://git.denx.de/u-boot-mpc85xx:
mpc85xx: support for Freescale COM Express P2020
arch/powerpc/cpu/mpc8xxx/ddr/interactive.c: Fix GCC 4.6 build warning
mpc85xx: support board-specific reset function
powerpc/85xx: verify the localbus device tree address before booting the OS
mpc8xxx: update module_type values from JEDEC DDR3 SPD Specification
powerpc/p3060qds: Add board related support for P3060QDS platform
powerpc/85xx: clean up and document the QE/FMAN microcode macros
powerpc/85xx: always implement the work-around for Erratum SATA_A001
powerpc/85xx: CONFIG_FSL_SATA_V2 should be defined in config_mpc85xx.h
powerpc/85xx: Add workaround for erratum A-003474
powerpc/85xx: fixup flexcan device tree clock-frequency
powerpc/85xx: Add workaround for erratum CPU-A003999
Stephen Warren [Thu, 10 Nov 2011 20:17:54 +0000 (13:17 -0700)]
image: Don't detect XIP images as overlapping.
bootm_load_os() detects when it writes the decompressed image over
the top of the compressed image. If this happens, the original image
is corrupted. When the original image is a multi-component legacy image,
or a (potentially multi-component) FIT image, this implies that other
components may be corrupted. In turn, this means that booting is unlikely
to be successful.
However, in the case of no image compresssion coupled with an image with
load address equal to where the image is already located (e.g. an XIP
kernel, or IH_TYPE_KERNEL_ANYLOAD), there has been no copy and hence no
corruption, no matter whether it's a single-component legacy image, a
multi-component legacy image, or a FIT image. In this case, disable the
overlap detection, and allow boot to continue.
Without this change, when booting a single-component legacy image that
contains an IH_TYPE_KERNEL_ANYLOAD, bootm_load_os() would have returned
BOOTM_ERR_OVERLAP, but the caller ignores this, and boot continues and
succeeds. Now, the false error is no longer even returned.
Without this change, when booting a FIT image that contains an
IH_TYPE_KERNEL_ANYLOAD, bootm_load_os() would have returned
BOOTM_ERR_OVERLAP, which would then cause the caller to reset the board.
Now, the false error is no longer returned, and boot succeeds.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Stephen Warren [Thu, 10 Nov 2011 20:17:53 +0000 (13:17 -0700)]
image: Implement IH_TYPE_KERNEL_NOLOAD
The legacy uImage format includes an absolute load and entry-point
address. When bootm operates on a kernel uImage in memory that isn't
loaded at the address in the image's load address, U-Boot will copy
the image to its address in the header.
Some kernel images can actually be loaded and used at any arbitrary
address. An example is an ARM Linux kernel zImage file. To represent
this capability, IH_TYPE_KERNEL_NOLOAD is implemented, which operates
just like IH_TYPE_KERNEL, except that the load address header is
ignored, and U-Boot does not copy the image to its load address, but
rather uses it in-place.
This is useful when sharing a single (uImage-wrapped) zImage across
multiple boards with different memory layouts; in this case, a specific
load address need not be picked when creating the uImage, but instead
is selected by the board-specific U-Boot environment used to load and
boot that image.
v2: Rename from IH_TYPE_KERNEL_ANYLOAD to IH_TYPE_KERNEL_NOLOAD.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Dirk Eibach [Thu, 20 Oct 2011 09:12:55 +0000 (11:12 +0200)]
ppc4xx: Add Io64 board support
Board support for the Guntermann & Drunck Io64.
Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Signed-off-by: Stefan Roese <sr@denx.de>
Matthias Fuchs [Thu, 24 Nov 2011 15:36:06 +0000 (16:36 +0100)]
ppc4xx: fix PMC440 painit command
This patch fixes the PMC440 BSP command painit. The implementation was
broken since the step to the new environment handling.
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
Matthias Fuchs [Thu, 13 Oct 2011 13:12:23 +0000 (15:12 +0200)]
ppc4xx: remove invalid access to PCI_BRDGOPT2 register
This patch removes an invalid call to pci_write_config_dword to
PCI_BRDGOPT2 register. This function must not be used from pci_target_init
and is also at the wrong place. The correct call is done later in
pci_target_init via pci_hose_write_config_dword.
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
Matthias Fuchs [Thu, 13 Oct 2011 13:12:22 +0000 (15:12 +0200)]
ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation
This patch switches PMC440 board code to the CONFIG_PCI_BOOTDELAY option
instead of using a private implemention. This relies on Anatolji's patch
that moves the pcidelay handling behind pci_target_init.
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
Ira W. Snyder [Wed, 23 Nov 2011 16:25:58 +0000 (08:25 -0800)]
mpc85xx: support for Freescale COM Express P2020
This adds support for the Freescale COM Express P2020 board. This board
is similar to the P1_P2_RDB, but has some extra (as well as missing)
peripherals.
Unlike all other mpc85xx boards, it uses a watchdog timeout to reset.
Using the HRESET_REQ register does not work.
This board has no NOR flash, and can only be booted via SD or SPI. This
procedure is documented in Freescale Document Number AN3659 "Booting
from On-Chip ROM (eSDHC or eSPI)." Some alternative documentation is
provided in Freescale Document Number P2020RM "P2020 QorIQ Integrated
Processor Reference Manual" (section 4.5).
Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Wed, 23 Nov 2011 16:02:41 +0000 (10:02 -0600)]
arch/powerpc/cpu/mpc8xxx/ddr/interactive.c: Fix GCC 4.6 build warning
Fix:
interactive.c: In function 'fsl_ddr_interactive':
interactive.c:1357:15: warning: variable 'len' set but not used [-Wunused-but-set-variable]
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Ira W. Snyder [Mon, 21 Nov 2011 21:20:32 +0000 (13:20 -0800)]
mpc85xx: support board-specific reset function
This is useful for boards which cannot be reset in the usual way for the
85xx CPU. An example is a board which can only be reset by a hardware
watchdog.
Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Timur Tabi [Wed, 16 Nov 2011 19:28:34 +0000 (13:28 -0600)]
powerpc/85xx: verify the localbus device tree address before booting the OS
The localbus controller node in the device tree is typically a root node,
even though the controller is part of CCSR. If we were to put the lbc
node under the SOC node, then the 'ranges' property in the lbc node would
translate through the 'ranges' property of the parent SOC node, and we
don't want that.
Since the lbc is a separate node, it's possible for the 'reg' property to
be wrong. This happened with the original version of p1022ds.dts, which
used a 32-bit value in the 'reg' address, instead of a 36-bit address.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Ira W. Snyder [Mon, 21 Nov 2011 21:20:33 +0000 (13:20 -0800)]
mpc8xxx: update module_type values from JEDEC DDR3 SPD Specification
Newer JEDEC DDR3 SPD Specifications define several additional values for
the DDR3 module_type field which were undefined when this code was
written. Update the code to handle the newer module types.
Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Cc: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Shengzhou Liu [Tue, 22 Nov 2011 08:51:13 +0000 (16:51 +0800)]
powerpc/p3060qds: Add board related support for P3060QDS platform
The P3060QDS is a Freescale reference board for the six-core P3060 SOC.
P3060QDS Board Overview:
Memory subsystem:
- 2G Bytes unbuffered DDR3 SDRAM SO-DIMM(64bit bus)
- 128M Bytes NOR flash single-chip memory
- 16M Bytes SPI flash
- 8K Bytes AT24C64 I2C EEPROM for RCW
Ethernet:
- Eight Ethernet controllers (4x1G + 4x1G/2.5G)
- Three VSC8641 PHYs on board (2xRGMII + 1xMII)
- Suport multiple Vitesse VSC8234 SGMII Cards in Slot1/2/3
PCIe: Two PCI Express 2.0 controllers/ports
USB: Two USB2.0, USB1(TYPE-A) and USB2(TYPE-AB) on board
I2C: Four I2C controllers
UART: Supports two dUARTs up to 115200 bps for console
RapidIO: Two RapidIO, sRIO1 and sRIO2
Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Timur Tabi [Tue, 22 Nov 2011 15:21:25 +0000 (09:21 -0600)]
powerpc/85xx: clean up and document the QE/FMAN microcode macros
Several macros are used to identify and locate the microcode binary image
that U-boot needs to upload to the QE or Fman. Both the QE and the Fman
use the QE Firmware binary format to package their respective microcode data,
which is why the same macros are used for both. A given SOC will only have
a QE or an Fman, so this is safe.
Unfortunately, the current macro definition and usage has inconsistencies.
For example, CONFIG_SYS_FMAN_FW_ADDR was used to define the address of Fman
firmware in NOR flash, but CONFIG_SYS_QE_FW_IN_NAND contains the address
of NAND. There's no way to know by looking at a variable how it's supposed
to be used.
In the future, the code which uploads QE firmware and Fman firmware will
be merged.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Timur Tabi [Mon, 21 Nov 2011 23:10:23 +0000 (17:10 -0600)]
powerpc/85xx: always implement the work-around for Erratum SATA_A001
On the P1022/P1013, the work-around for erratum SATA_A001 was implemented
only if U-Boot initializes SATA, but SATA is not initialized by default. So
move the work-around to the CPU initialization function, so that it's always
executed on the SOCs that need it.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Timur Tabi [Mon, 21 Nov 2011 23:10:22 +0000 (17:10 -0600)]
powerpc/85xx: CONFIG_FSL_SATA_V2 should be defined in config_mpc85xx.h
Macro CONFIG_FSL_SATA_V2 is defined if the SOC has a V2 Freescale SATA
controller, so it should be defined in config_mpc85xx.h instead of the various
board header files. So now CONFIG_FSL_SATA_V2 is always defined on the P1013,
P1022, P2041, P3041, P5010, and P5020. It was already defined for the
P1010 and P1014.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
York Sun [Sun, 20 Nov 2011 18:01:35 +0000 (10:01 -0800)]
powerpc/85xx: Add workaround for erratum A-003474
Erratum A-003474: Internal DDR calibration circuit is not supported
Impact:
Experience shows no significant benefit to device operation with
auto-calibration enabled versus it disabled. To ensure consistent timing
results, Freescale recommends this feature be disabled in future customer
products. There should be no impact to parts that are already operating
in the field.
Workaround:
Prior to setting DDR_SDRAM_CFG[MEM_EN]=1, do the following:
1. Write a value of 0x0000_0015 to the register at offset
CCSRBAR + DDR OFFSET + 0xf30
2. Write a value of 0x2400_0000 to the register at offset
CCSRBAR + DDR OFFSET + 0xf54
Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Jia Hongtao [Tue, 15 Nov 2011 07:04:11 +0000 (15:04 +0800)]
powerpc/85xx: fixup flexcan device tree clock-frequency
Make the fixup matchable with dts and kernel. Update the compatible from
"fsl,flexcan-v1.0" to "fsl,p1010-flexcan" and Change the "clock-freq"
property to "clock-frequency". We also change flexcan frequency from
CCB-clock to CCB-clock/2 according to P1010 spec.
We now keep the old interfaces to make previous kernel work. They should
be removed in the future.
Signed-off-by: Jia Hongtao <B38951@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Tue, 22 Nov 2011 12:51:15 +0000 (06:51 -0600)]
powerpc/85xx: Add workaround for erratum CPU-A003999
Erratum A-003999: Running Floating Point instructions requires special
initialization.
Impact:
Floating point arithmetic operations may result in an incorrect value.
Workaround:
Perform a read modify write to set bit 7 to a 1 in SPR 977 before
executing any floating point arithmetic operation. This bit can be set
when setting MSR[FP], and can be cleared when clearing MSR[FP].
Alternatively, the bit can be set once at boot time, and never cleared.
There will be no performance degradation due to setting this bit.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Gabe Black [Mon, 14 Nov 2011 20:18:12 +0000 (20:18 +0000)]
x86: Fix some bugs in the i8402 driver when no controller is present
If no controller is present, the i8402 driver should return immediately and
not attempt to operate on the missing hardware.
In kbd_input_empty, the status register is checked every millisecond to see
whether the input buffer is empty, up to a timeout which is tracked by
decrimenting a counter each time the check is performed. The decrement is
performed with a postfix -- operator, and the value of the counter is
checked in place. That means that when the counter reaches zero and the
loop terminates, it will actually be decrimented one more time and become
-1. That value is returned as the return value of the function. That would
give the right answer if it wasn't for that extra decrement because a
timeout would indicate that the buffer never became empty.
This change fixes both of those bugs.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Gabe Black [Mon, 14 Nov 2011 19:24:14 +0000 (19:24 +0000)]
x86: Make the i8042 driver checkpatch clean
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Gabe Black [Wed, 16 Nov 2011 23:01:37 +0000 (23:01 +0000)]
x86: Wrap small helper functions from libgcc to avoid an ABI mismatch
When gcc compiles some 64 bit operations on a 32 bit machine, it generates
calls to small functions instead of instructions which do the job directly.
Those functions are defined in libgcc and transparently provide whatever
functionality was necessary. Unfortunately, u-boot can be built with a
non-standard ABI when libgcc isn't. More specifically, u-boot uses
-mregparm. When the u-boot and libgcc are linked together, very confusing
bugs can crop up, for instance seemingly normal integer division or modulus
getting the wrong answer or even raising a spurious divide by zero
exception.
This change borrows (steals) a technique and some code from coreboot which
solves this problem by creating wrappers which translate the calling
convention when calling the functions in libgcc. Unfortunately that means
that these instructions which had already been turned into functions have
even more overhead, but more importantly it makes them work properly.
To find all of the functions that needed wrapping, u-boot was compiled
without linking in libgcc. All the symbols the linker complained were
undefined were presumed to be the symbols that are needed from libgcc.
These were a subset of the symbols covered by the coreboot code, so it was
used unmodified.
To prevent symbols which are provided by libgcc but not currently wrapped
(or even known about) from being silently linked against by code generated
by libgcc, a new copy of libgcc is created where all the symbols are
prefixed with __normal_. Without being purposefully wrapped, these symbols
will cause linker errors instead of silently introducing very subtle,
confusing bugs.
Another approach would be to whitelist symbols from libgcc and strip out
all the others. The problem with this approach is that it requires the
white listed symbols to be specified three times, once for objcopy, once so
the linker inserts the wrapped, and once to generate the wrapper itself,
while this implementation needs it to be listed only twice. There isn't
much tangible difference in what each approach produces, so this one was
preferred.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Gabe Black [Mon, 14 Nov 2011 14:47:18 +0000 (14:47 +0000)]
x86: Import the glibc memset implementation
The new implementation is about twice as fast as the old. This is from
glibc-2.14, sysdeps/i386/memset.c.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Gabe Black [Wed, 16 Nov 2011 23:32:50 +0000 (23:32 +0000)]
x86: Fix a few recently added bugs
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Gabe Black [Sat, 12 Nov 2011 16:34:48 +0000 (16:34 +0000)]
x86: Don't relocate symbols which point to things that aren't relocated
This change adds an upper bound for symbols which are fixed up after u-boot
is relocated into RAM. This way portions that are left at their original
location can be referred to without having to manually fix up any pointers.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Gabe Black [Sat, 12 Nov 2011 16:31:18 +0000 (16:31 +0000)]
x86: Fix how the location of the realmode and bios blobs are calculated
There are two blobs embedded into the u-boot image which are linked to run
at an address which is different from where they actually end up in the
ROM, one called "realmode" and one called "bios". There are realmode_setup
and bios_setup functions which prepare those blobs by copying them into the
location they're supposed to run from, among other things.
During u-boot relocation from ROM to RAM, the text and a few data segments
are copied over. The realmode and bios sections are not copied, and so the
only place they can be read from is their original location in the ROM.
Looking specifically at the bios blob, there are symbols defined in the
linker script called __bios_start and __bios_size which are defined to be
the start and size of the blob in the ROM.
In the bios_setup function, there seem to be two mistakes happening. First,
the offset from ROM to RAM is being added to __bios_start which implies that
this code expects to use the copy moved to RAM. No such copy is made, so
that's wrong. More subtly, when u-boot relocates itself, it goes through
all of the relocations stored in .rel.dyn and fixes them up. This has the
effect of transforming the __bios_start reference in bios_setup so that it
refers to the version in RAM (if one existed) instead of the one in ROM. To
correct for that, the offset actually needs to be subtracted out again to
translate the address back into the ROM.
The net effect is that for both blobs, a + needs to be changed to a -.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Graeme Russ [Tue, 8 Nov 2011 02:33:23 +0000 (02:33 +0000)]
x86: Misc cleanups
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:22 +0000 (02:33 +0000)]
x86: Misc PCI touchups
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:21 +0000 (02:33 +0000)]
x86: Ensure IDT and GDT remain 16-byte aligned post relocation
Some CPUs have strict alignment requirements for these tables
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:20 +0000 (02:33 +0000)]
x86: Provide more configuration granularity
Planned future ports requires more granularity for some options
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:19 +0000 (02:33 +0000)]
x86: Add multiboot header
By adding a multiboot header, U-Boot can be loaded by GRUB2. Using GRUB2 to
bootstrap U-Boot is useful for using an existing BIOS to get an initial
U-Boot port up and running before implementing the low-level reset vector
code, SDRAM init, etc. and overwriting the BIOS
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:18 +0000 (02:33 +0000)]
sc520: Create arch asm-offsets
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:17 +0000 (02:33 +0000)]
x86: Punt cold- and warm-boot flags
Nobody uses them anyway
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Graeme Russ [Tue, 8 Nov 2011 02:33:16 +0000 (02:33 +0000)]
cosmetic: checkpatch cleanup of board/eNET/*.c
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:15 +0000 (02:33 +0000)]
cosmetic: checkpatch cleanup of arch/x86/lib/*.c
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:14 +0000 (02:33 +0000)]
cosmetic: checkpatch cleanup of arch/x86/cpu/sc520/*.c
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:13 +0000 (02:33 +0000)]
cosmetic: checkpatch cleanup of arch/x86/cpu/*.c
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Graeme Russ [Tue, 8 Nov 2011 02:33:12 +0000 (02:33 +0000)]
x86: Call hang() on unrecoverable exception
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Wolfgang Denk [Mon, 28 Nov 2011 19:19:41 +0000 (20:19 +0100)]
menu.c: use puts() instead of printf() where possible
common/menu.c used printf() in a number of places to print user
provided, constant strings (like the "title" string). printf() is
dangerous here for example in case the user unwittingly embeds some
'%' caracters that printf() would interpret as formatting and then
pick up random arguments. Use puts() instead.
We also omit the trailing ':' in the title line - if a user wants
this, he can provide it as part of the title string.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Mon, 28 Nov 2011 18:57:38 +0000 (19:57 +0100)]
Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging
* 'agust@denx.de' of git://git.denx.de/u-boot-staging:
MAKEALL: drop obsolete mx31pdk_nand target
dataflash: fix parameters order in write_dataflash()
hawkboard: Replace HAWKBOARD_KICK{0, 1}_UNLOCK defines
davinci_sonata: define CONFIG_MACH_TYPE for davinci_sonata board
davinci_schmoogie: define CONFIG_MACH_TYPE for davinci_schmoogie board
arm: a320evb: define mach-type in board config file
OMAP3: Use sdelay from arch/arm/cpu/armv7/syslib.c instead of cloning that.
Fix Stelian's email address
Wolfgang Denk [Mon, 28 Nov 2011 18:53:31 +0000 (19:53 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-video
* 'master' of git://git.denx.de/u-boot-video:
DIU: 1080P and 720P support
CFB: Fix font rendering on mx5 framebuffer
Stefano Babic [Thu, 17 Nov 2011 23:16:14 +0000 (23:16 +0000)]
MAKEALL: drop obsolete mx31pdk_nand target
The mx31pdk can boot only from NAND and the target was
already updated in boards.cfg. mx31pdk_nand is obsolete
and is dropped.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Igor Grinberg [Sat, 26 Nov 2011 23:06:46 +0000 (23:06 +0000)]
dataflash: fix parameters order in write_dataflash()
Fix parameters order in write_dataflash() function extern declaration in
the header file.
Parameters order, as in function definition, should be:
addr_dest, addr_src, size.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Christian Riesch [Sat, 19 Nov 2011 00:45:44 +0000 (00:45 +0000)]
hawkboard: Replace HAWKBOARD_KICK{0, 1}_UNLOCK defines
This patch replaces the HAWKBOARD_KICK{0,1}_UNLOCK defines by
DV_SYSCFG_KICK{0,1}_UNLOCK.
The kick register values are not hawkboard specific but may be used
for all davinci boards. In commit
f3c149d6c6e5ba8dd72baa86fe527837e4fb0e9a
new defines for these values wer introduced.
Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Syed Mohammed Khasim <sm.khasim@gmail.com>
Cc: Sughosh Ganu <urwithsughosh@gmail.com>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Christian Riesch [Sat, 19 Nov 2011 00:45:43 +0000 (00:45 +0000)]
davinci_sonata: define CONFIG_MACH_TYPE for davinci_sonata board
This patch fixes the build breakage for the davinci_sonata board.
Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Sergey Kubushyn <ksi@koi8.net>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Christian Riesch [Sat, 19 Nov 2011 00:45:42 +0000 (00:45 +0000)]
davinci_schmoogie: define CONFIG_MACH_TYPE for davinci_schmoogie board
This patch fixes the build breakage for the davinci_schmoogie board.
Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Sergey Kubushyn <ksi@koi8.net>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Yan-Pai Chen [Mon, 7 Nov 2011 19:40:25 +0000 (19:40 +0000)]
arm: a320evb: define mach-type in board config file
MACH_TYPE_FARADAY was dropped from mach-types.h. Add it back to
board config file.
Signed-off-by: Yan-Pai Chen <ypchen@faraday-tech.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Alexander Holler [Sat, 18 Dec 2010 12:24:20 +0000 (13:24 +0100)]
OMAP3: Use sdelay from arch/arm/cpu/armv7/syslib.c instead of cloning that.
There is no need to have such a function twice.
Signed-off-by: Alexander Holler <holler@ahsoftware.de>
Acked-by: Dirk Behme <dirk.behme@googlemail.com>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Stelian Pop [Mon, 31 Oct 2011 23:00:39 +0000 (00:00 +0100)]
Fix Stelian's email address
Change my old email address which is no longer valid.
Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Wolfgang Denk [Sun, 27 Nov 2011 15:03:21 +0000 (16:03 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mmc
* 'master' of git://git.denx.de/u-boot-mmc:
Revert "mmc: retry the cmd8 to meet 74 clocks requirement in the spec"
mmc: mv_sdhci: Fix host version read for Armada100
Stephan Linz [Thu, 24 Nov 2011 12:32:52 +0000 (12:32 +0000)]
microblaze: usable uart16550 for big endian systems
As a result of the commit 6833260 the uart16550 driver
is broken for Microblaze big endian systems, because of
the missing 3 byte offset. Other than as described, not
all U-Boot BSP will treat properly the 3 byte offset.
This why prefer to mask out the 3 byte offset in general
and setup correct _REG_SIZE value depending on edianess.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Tested-by: Michal Simek <monstr@monstr.eu>
Michael Jones [Sun, 6 Nov 2011 22:44:29 +0000 (22:44 +0000)]
mvblx: punt unused clean/distclean targets
Signed-off-by: Michael Jones <michael.jones@matrix-vision.de>
Kumar Gala [Wed, 23 Nov 2011 09:48:02 +0000 (09:48 +0000)]
cmd_nvedit.c: Fix compiler warning introduced by checkpatch cleanup
cmd_nvedit.c: In function 'do_env_grep':
cmd_nvedit.c:182:3: warning: suggest parentheses around assignment used as truth value
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Kumar Gala [Wed, 23 Nov 2011 06:31:04 +0000 (06:31 +0000)]
drivers/bios_emulator/x86emu/ops2.c: Fix GCC 4.6 build warning
Fix:
x86emu/ops2.c: In function 'x86emuOp2_set_byte':
x86emu/ops2.c:171:11: warning: variable 'name' set but not used [-Wunused-but-set-variable]
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Mike Frysinger [Fri, 25 Nov 2011 10:58:13 +0000 (10:58 +0000)]
ignore new mkenvimage tool
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Macpaul Lin [Mon, 14 Nov 2011 23:35:39 +0000 (23:35 +0000)]
Revert "mmc: retry the cmd8 to meet 74 clocks requirement in the spec"
This reverts commit
02f3029f1810b99869254d0cf0a71946a008a728.
This patch add 3 times retry to CMD8 because the Marvell mmc controller
doesn't obey the power ramp up process in the SD specification 6.4.1.
(Please refer to figure 6.1 and 6.2 in the specification.)
The CMD0 should be send after power ramp up has been finished.
However, the Marvell mmc contorller must do power ramp up after the
first CMD0 command has been send.
This patch also affect existing platforms like Nokia N900 and other
platforms.
Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Acked-by: Lei Wen <leiwen@marvell.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Ajay Bhargav [Sun, 13 Nov 2011 23:43:12 +0000 (23:43 +0000)]
mmc: mv_sdhci: Fix host version read for Armada100
sdhci_readw does not work for host version read in Armada100 series
SoCs. This patch fix this issue by making a sdhci_readl call to get host
version.
Signed-off-by: Ajay Bhargav <ajay.bhargav@einfochips.com>
Jerry Huang [Tue, 1 Nov 2011 15:16:43 +0000 (15:16 +0000)]
DIU: 1080P and 720P support
Add the 1920x1080 and 1280x720 resolution support.
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Acked-by: Timur Tabi <timur@freescale.com>
CC: Anatolij Gustschin <agust@denx.de>
Marek Vasut [Wed, 23 Nov 2011 16:32:16 +0000 (16:32 +0000)]
CFB: Fix font rendering on mx5 framebuffer
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Wolfgang Denk [Wed, 23 Nov 2011 20:23:45 +0000 (21:23 +0100)]
Merge branch 'hs@denx.de' of git://git.denx.de/u-boot-staging
* 'hs@denx.de' of git://git.denx.de/u-boot-staging:
drivers/net/dnet.c: Fix GCC 4.6 warnings
board/xaeniax/flash.c: Fix GCC 4.6 warnings
net/bootp.c: Fix GCC 4.6 warning
common/cmd_bootm.c: Fix GCC 4.6 warnings
board/mx1ads/mx1ads.c: Fix GCC 4.6 warning
board/mx1ads/syncflash.c: Fix GCC 4.6 warnings
board/lubbock/flash.c: Fix GCC 4.6 warnings
drivers/net/cs8900.c: Fix GCC 4.6 warning
arch/arm/cpu/arm926ejs/omap/cpuinfo.c: Fix GCC 4.6 warnings
drivers/net/lan91c96.c: Fix GCC 4.6 warning
board/ronetix/pm9263/pm9263.c: Fix GCC 4.6 warning
drivers/mtd/onenand/samsung.c: Fix GCC 4.6 warning
drivers/usb/musb/musb_hcd.c: Fix GCC 4.6 warning
Anatolij Gustschin [Sat, 19 Nov 2011 02:51:38 +0000 (02:51 +0000)]
drivers/i2c/davinci_i2c.c: Fix GCC 4.6 warning
Fix:
davinci_i2c.c: In function 'flush_rx':
davinci_i2c.c:81:6: warning: variable 'dummy' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Heiko Schocher <hs@denx.de>
Heiko Schocher [Thu, 17 Nov 2011 06:57:20 +0000 (07:57 +0100)]
i2c: Codingstyle cleanup for i2c evb64260 board driver
There are some magic constants in this drivers, which I cannot
fixup ... Eran, can you help here?
Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Eran Man <eran@nbase.co.il>
Nobuhiro Iwamatsu [Mon, 14 Nov 2011 18:27:04 +0000 (18:27 +0000)]
i2c: sh: Add support I2C for Renesas SH
This supports I2C of Renesas SH.
I tested on SH7724.
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
CC: Heiko Schocher <hs@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 10:06:30 +0000 (10:06 +0000)]
drivers/net/dnet.c: Fix GCC 4.6 warnings
Fix:
dnet.c: In function 'dnet_send':
dnet.c:136:9: warning: variable 'len' set but not used
[-Wunused-but-set-variable]
dnet.c: In function 'dnet_set_hwaddr':
dnet.c:209:2: warning: dereferencing type-punned pointer will
break strict-aliasing rules [-Wstrict-aliasing]
dnet.c:209:2: warning: dereferencing type-punned pointer will
break strict-aliasing rules [-Wstrict-aliasing]
dnet.c:209:2: warning: dereferencing type-punned pointer will
break strict-aliasing rules [-Wstrict-aliasing]
dnet.c:209:2: warning: dereferencing type-punned pointer will
break strict-aliasing rules [-Wstrict-aliasing]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 10:17:04 +0000 (10:17 +0000)]
board/xaeniax/flash.c: Fix GCC 4.6 warnings
Fix:
flash.c: In function 'flash_erase':
flash.c:223:6: warning: variable 'flag' set but not used
[-Wunused-but-set-variable]
flash.c: In function 'write_data':
flash.c:392:6: warning: variable 'flag' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 10:29:58 +0000 (10:29 +0000)]
net/bootp.c: Fix GCC 4.6 warning
Fix:
bootp.c: In function 'BootpCopyNetParams':
bootp.c:108:11: warning: unused variable 'tmp_ip' [-Wunused-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:18 +0000 (13:12 +0000)]
common/cmd_bootm.c: Fix GCC 4.6 warnings
Fix:
cmd_bootm.c: In function 'bootm_load_os':
cmd_bootm.c:315:7: warning: unused variable 'unc_len'
[-Wunused-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:17 +0000 (13:12 +0000)]
board/mx1ads/mx1ads.c: Fix GCC 4.6 warning
Fix:
mx1ads.c: In function 'board_early_init_f':
mx1ads.c:83:24: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:16 +0000 (13:12 +0000)]
board/mx1ads/syncflash.c: Fix GCC 4.6 warnings
Fix:
syncflash.c: In function 'SF_SR':
syncflash.c:60:10: warning: variable 'tmp1' set but not used
[-Wunused-but-set-variable]
syncflash.c: In function 'SF_PrechargeAll':
syncflash.c:96:6: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
mx1ads.c: In function 'board_early_init_f':
mx1ads.c:83:24: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
syncflash.c: In function 'SF_Erase':
syncflash.c:112:6: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
syncflash.c: In function 'flash_init':
syncflash.c:155:6: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:15 +0000 (13:12 +0000)]
board/lubbock/flash.c: Fix GCC 4.6 warnings
Fix:
flash.c: In function 'flash_erase':
flash.c:223:6: warning: variable 'flag' set but not used [-Wunused-but-set-variable]
flash.c: In function 'write_data':
flash.c:392:6: warning: variable 'flag' set but not used [-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:14 +0000 (13:12 +0000)]
drivers/net/cs8900.c: Fix GCC 4.6 warning
Fix:
cs8900.c: In function 'get_reg_init_bus':
cs8900.c:69:14: warning: variable 'c' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:13 +0000 (13:12 +0000)]
arch/arm/cpu/arm926ejs/omap/cpuinfo.c: Fix GCC 4.6 warnings
Fix:
cpuinfo.c: In function 'print_cpuinfo':
cpuinfo.c:155:6: warning: variable 'system_serial_low' set but not used
[-Wunused-but-set-variable]
cpuinfo.c:154:6: warning: variable 'system_serial_high' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:12 +0000 (13:12 +0000)]
drivers/net/lan91c96.c: Fix GCC 4.6 warning
Fix:
lan91c96.c: In function 'dump_memory_info':
lan91c96.c:157:7: warning: variable 'mem_info' set but not used
[-Wunused-but-set-variable]
lan91c96.c: In function 'smc_send_packet':
lan91c96.c:320:16: warning: variable 'ioaddr' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:11 +0000 (13:12 +0000)]
board/ronetix/pm9263/pm9263.c: Fix GCC 4.6 warning
Fix:
pm9263.c: In function 'pm9263_lcd_hw_psram_init':
pm9263.c:167:20: warning: variable 'x' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:10 +0000 (13:12 +0000)]
drivers/mtd/onenand/samsung.c: Fix GCC 4.6 warning
Fix:
samsung.c: In function 's3c_onenand_check_lock_status':
samsung.c:486:6: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin [Sat, 19 Nov 2011 13:12:09 +0000 (13:12 +0000)]
drivers/usb/musb/musb_hcd.c: Fix GCC 4.6 warning
Fix:
musb_hcd.c: In function 'submit_control_msg':
musb_hcd.c:851:6: warning: variable 'csr' set but not used
[-Wunused-but-set-variable]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Stefan Kristiansson [Mon, 21 Nov 2011 23:43:58 +0000 (23:43 +0000)]
Fix clash between IH_ARCH_NDS32 and IH_ARCH_SANDBOX
NDS32 and SANDBOX architecture were sharing the same IH_ARCH number
Signed-off-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Acked-by: Macpaul Lin <macpaul@andestech.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Macpaul Lin [Wed, 23 Nov 2011 05:56:50 +0000 (13:56 +0800)]
nds32/ag101: clean up for SoC related code
Remove unneccessary codes.
1. Clean up for cpu related code.
2. Clean up for timer related code.
Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Andreas Bießmann [Mon, 17 Oct 2011 22:11:12 +0000 (22:11 +0000)]
tools/env: use lib/crc32.c directly
Instead of linking the file into $(obj) tree use directly the source file.
This also prevents littered source tree if building not out-of-tree.
Signed-off-by: Andreas Bießmann <biessmann@corscience.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Simon Glass [Mon, 21 Nov 2011 19:04:23 +0000 (19:04 +0000)]
sandbox: Fix warnings in hashtable.c
This fixes a few printf() strings for size_t which are missing the 'z'
modifier.
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
bertrand.cachet@heig-vd.ch [Tue, 15 Nov 2011 03:40:53 +0000 (03:40 +0000)]
Improve Power Management in SMC911X driver.
device is already in *normal* (D0) mode => it doesn't need to be wake-up.
With this patch, we only wake-up (writing on TEST_BYTE register) if PM_MODE
bits of PM_CTRL register is in sleep (D1/D2) mode.
Signed-off-by: Bertrand Cachet <bertrand.cachet@heig-vd.ch>
Igor Grinberg [Mon, 7 Nov 2011 01:14:11 +0000 (01:14 +0000)]
env: clean env_common.c checkpatch and code style
Cleanup the env_common.c checkpatch warnings, errors and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:10 +0000 (01:14 +0000)]
env: clean env_nand.c checkpatch and code style
Cleanup the env_nand.c checkpatch warnings, errors and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:09 +0000 (01:14 +0000)]
env: clean env_flash.c checkpatch and code style
Cleanup the env_flash.c checkpatch warnings, errors and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:08 +0000 (01:14 +0000)]
env: clean env_sf.c checkpatch and code style
Cleanup the env_sf.c checkpatch warnings, errors and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:07 +0000 (01:14 +0000)]
env: clean env_eeprom.c checkpatch and code style
Cleanup the env_eeprom.c checkpatch warnings, errors and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:06 +0000 (01:14 +0000)]
env: clean env_embedded.c checkpatch and code style
Cleanup the env_embedded.c checkpatch warnings, errors and coding style.
There is one error left though:
ERROR: Macros with multiple statements should be enclosed in a do - while loop
#79: FILE: u-boot/common/env_embedded.c:79:
+#define GEN_ABS(name, value) \
+ asm(".globl " GEN_SYMNAME(name)); \
+ GEN_SET_VALUE(name, value)
total: 1 errors, 0 warnings, 213 lines checked
We cannot enclose that statement in a do - while loop,
because these are a global assembly declarations.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:05 +0000 (01:14 +0000)]
env: clean env_mmc.c checkpatch and code style
Cleanup the env_mmc.c checkpatch warnings, errors and coding style.
Simplify env_relocate_spec() function implementation.
Also mark internal functions as static.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:04 +0000 (01:14 +0000)]
env: clean env_nvram.c checkpatch and code style
Cleanup the env_nvram.c checkpatch warnings, errors and coding style.
There are 2 wanring left about the extern used in c file:
WARNING: externs should be avoided in .c files
#53: FILE: env_nvram.c:53:
+extern void *nvram_read(void *dest, const long src, size_t count);
WARNING: externs should be avoided in .c files
#54: FILE: env_nvram.c:54:
+extern void nvram_write(long dest, const void *src, size_t count);
total: 0 errors, 2 warnings, 138 lines checked
There is no common nvram header file to use instead of the externs.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:03 +0000 (01:14 +0000)]
env: clean env_onenand.c checkpatch and code style
Cleanup the env_onenand.c checkpatch warnings, errors and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:02 +0000 (01:14 +0000)]
env: clean env_dataflash.c checkpatch and code style
Cleanup the env_dataflash.c checkpatch warnings, errors
and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Igor Grinberg [Mon, 7 Nov 2011 01:14:01 +0000 (01:14 +0000)]
env: clean env_mgdisk.c checkpatch and code style
Cleanup the env_mgdisk.c checkpatch warnings, errors
and coding style.
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>