oweals/u-boot.git
13 years agoboard/genietv/flash.c: Fix flash initialization
Wolfgang Denk [Fri, 4 Nov 2011 15:55:41 +0000 (15:55 +0000)]
board/genietv/flash.c: Fix flash initialization

The GENIETV has only one NOR flash bank.  Remove all code trying to
deal with a second bank.  This also fixes a number of GCC 4.6 build
warnings:
flash.c:65:12: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:66:12: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:69:12: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:183:2: warning: format '%x' expects argument of type 'unsigned
int', but argument 2 has type '

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/genietv/flash.c: CodingStyle cleanup
Wolfgang Denk [Fri, 4 Nov 2011 15:55:40 +0000 (15:55 +0000)]
board/genietv/flash.c: CodingStyle cleanup

Make (mostly) checkpatch clean (don't convert to use I/O accessors yet,
so there will be "Use of volatile is usually wrong" warnings left.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/etx094/flash.c: Fix flash initialization
Wolfgang Denk [Fri, 4 Nov 2011 15:55:39 +0000 (15:55 +0000)]
board/etx094/flash.c: Fix flash initialization

The ETX094 has only one NOR flash bank.  Remove all code trying to
deal with a second bank.  This also fixes a number of GCC 4.6 build
warnings:
flash.c: In function 'flash_init':
flash.c:68:13: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:70:13: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:72:13: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:128:13: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:129:13: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:133:12: warning: array subscript is above array bounds
[-Warray-bounds]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/etx094/flash.c: CodingStyle cleanup
Wolfgang Denk [Fri, 4 Nov 2011 15:55:38 +0000 (15:55 +0000)]
board/etx094/flash.c: CodingStyle cleanup

Make (mostly) checkpatch clean (don't convert to use I/O accessors yet,
so there will be "Use of volatile is usually wrong" warnings left.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agompc8xx/i2c.c: replace PRINTD() by debug()
Wolfgang Denk [Fri, 4 Nov 2011 15:55:37 +0000 (15:55 +0000)]
mpc8xx/i2c.c: replace PRINTD() by debug()

This also fixes some GCC 4.6 build warnings like:
warning: variable 'txbd' set but not used [-Wunused-but-set-variable]
warning: variable 'rxbd' set but not used [-Wunused-but-set-variable]

Signed-off-by: WOlfgang Denk <wd@denx.de>
Cc: Heiko Schocher <hs@denx.de>
13 years agompc8xx/i2c.c: CodungStyle cleanup
Wolfgang Denk [Fri, 4 Nov 2011 15:55:36 +0000 (15:55 +0000)]
mpc8xx/i2c.c: CodungStyle cleanup

Make (mostly) checkpatch-clean

We don't acctually change the code (like convert to use I/O
accessors), so there will be some remaining "Use of volatile"
warnings from checkpatch.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Heiko Schocher <hs@denx.de>
13 years agoboard/eltec/mhpc/flash.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:35 +0000 (15:55 +0000)]
board/eltec/mhpc/flash.c: Fix GCC 4.6 build warning

Fix:
flash.c: In function 'write_buff':
flash.c:314:6: warning: variable 'count' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Frank Gottschling <fgottschling@eltec.de>
13 years agoboard/kup/kup4k/kup4k.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:34 +0000 (15:55 +0000)]
board/kup/kup4k/kup4k.c: Fix GCC 4.6 build warning

Fix:
kup4k.c: In function 'initdram':
kup4k.c:155:19: warning: variable 'mod' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Klaus Heydeck <heydeck@kieback-peter.de>
13 years agoICU862: Fix incorrect flash handling
Wolfgang Denk [Fri, 4 Nov 2011 15:55:33 +0000 (15:55 +0000)]
ICU862: Fix incorrect flash handling

There is only one bank of NOR flash memory on ICU862 boards.
Remove code that attempts to deal with a second bank.

This also fixes build warnings:
flash.c: In function 'flash_init':
flash.c:120:12: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:121:12: warning: array subscript is above array bounds
[-Warray-bounds]
flash.c:124:12: warning: array subscript is above array bounds
[-Warray-bounds]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agompc8xx/cpu.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:32 +0000 (15:55 +0000)]
mpc8xx/cpu.c: Fix GCC 4.6 build warnings

Fix:
cpu.c: In function 'check_CPU':
cpu.c:188:8: warning: variable 'mid' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/r360mpi/pcmcia.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:31 +0000 (15:55 +0000)]
board/r360mpi/pcmcia.c: Fix GCC 4.6 build warnings

Fix:
pcmcia.c: In function 'pcmcia_hardware_enable':
pcmcia.c:22:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_hardware_disable':
pcmcia.c:130:25: warning: variable 'pcmp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/netta/pcmcia.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:30 +0000 (15:55 +0000)]
board/netta/pcmcia.c: Fix GCC 4.6 build warnings

Fix:
pcmcia.c: In function 'cfg_ports':
pcmcia.c:151:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:150:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_hardware_enable':
pcmcia.c:179:25: warning: variable 'sysp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:177:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:176:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_hardware_disable':
pcmcia.c:271:25: warning: variable 'pcmp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:270:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_voltage_set':
pcmcia.c:303:9: warning: variable 'sreg' set but not used
[-Wunused-but-set-variable]
pcmcia.c:300:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/netta/codec.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:29 +0000 (15:55 +0000)]
board/netta/codec.c: Fix GCC 4.6 build warnings

Fix:
codec.c: In function 's_write_BR':
codec.c:1389:15: warning: variable 'v' set but not used
[-Wunused-but-set-variable]
codec.c: In function 's_write_OR':
codec.c:1400:15: warning: variable 'v' set but not used
[-Wunused-but-set-variable]
codec.c: In function 's_write_NR':
codec.c:1411:15: warning: variable 'v' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/mbx8xx/pcmcia.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:28 +0000 (15:55 +0000)]
board/mbx8xx/pcmcia.c: Fix GCC 4.6 build warnings

Fix:
pcmcia.c: In function 'pcmcia_hardware_enable':
pcmcia.c:83:25: warning: variable 'sysp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:81:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:80:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/manroland/uc100/pcmcia.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:27 +0000 (15:55 +0000)]
board/manroland/uc100/pcmcia.c: Fix GCC 4.6 build warnings

Fix:
pcmcia.c: In function 'pcmcia_voltage_set':
pcmcia.c:158:25: warning: variable 'pcmp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:157:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/lwmon/pcmcia.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:26 +0000 (15:55 +0000)]
board/lwmon/pcmcia.c: Fix GCC 4.6 build warnings

Fix:
pcmcia.c: In function 'pcmcia_hardware_enable':
pcmcia.c:33:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]
pcmcia.c:32:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_voltage_set':
pcmcia.c:174:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/kup/common/pcmcia.c: Fix GCC 4.6 compiler warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:25 +0000 (15:55 +0000)]
board/kup/common/pcmcia.c: Fix GCC 4.6 compiler warnings

Fix:
../common/pcmcia.c: In function 'pcmcia_hardware_enable':
../common/pcmcia.c:23:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
../common/pcmcia.c: In function 'pcmcia_voltage_set':
../common/pcmcia.c:152:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Klaus Heydeck <heydeck@kieback-peter.de>
13 years agoboard/icu862/pcmcia.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:24 +0000 (15:55 +0000)]
board/icu862/pcmcia.c: Fix GCC 4.6 build warning

Fix:
pcmcia.c: In function 'cfg_port_B':
pcmcia.c:21:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_hardware_enable':
pcmcia.c:50:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]
pcmcia.c: In function 'pcmcia_voltage_set':
pcmcia.c:191:20: warning: variable 'immap' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/c2mon/pcmcia.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:23 +0000 (15:55 +0000)]
board/c2mon/pcmcia.c: Fix GCC 4.6 build warning

Fix:
pcmcia.c: In function 'pcmcia_voltage_set':
pcmcia.c:202:21: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agodrivers/pcmcia/mpc8xx_pcmcia.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:22 +0000 (15:55 +0000)]
drivers/pcmcia/mpc8xx_pcmcia.c: Fix GCC 4.6 build warning

Fix:
mpc8xx_pcmcia.c: In function 'pcmcia_on':
mpc8xx_pcmcia.c:76:8: warning: variable 'slotbit' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agompc8xx/fec.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:21 +0000 (15:55 +0000)]
mpc8xx/fec.c: Fix GCC 4.6 build warnings

Fix:
fec.c: In function 'fec_pin_init':
fec.c:381:18: warning: variable 'fecp' set but not used
[-Wunused-but-set-variable]
fec.c: In function 'fec8xx_miiphy_write':
fec.c:1013:8: warning: variable 'rdreg' set but not used
[-Wunused-but-set-variable]

Note: The code was slightly rearranged, but no functional changes
attempted, i. e. no conversion to use I/O accessors.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agodrivers/video/cfb_console.c:Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:20 +0000 (15:55 +0000)]
drivers/video/cfb_console.c:Fix GCC 4.6 build warning

Silence this warning:
cfb_console.c: In function 'video_logo':
cfb_console.c:1563:18: warning: variable 'y_off' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Anatolij Gustschin <agust@denx.de>
Acked-by: Anatolij Gustschin <agust@denx.de>
13 years agoboard/tqc/tqm5200/cam5200_flash.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:19 +0000 (15:55 +0000)]
board/tqc/tqm5200/cam5200_flash.c: Fix GCC 4.6 build warning

Fix:
cam5200_flash.c: In function 'flash_erase_32':
cam5200_flash.c:282:24: warning: variable 'l_sect' set but not used
[-Wunused-but-set-variable]
cam5200_flash.c: In function 'flash_erase_16':
cam5200_flash.c:612:24: warning: variable 'l_sect' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/esd/pf5200/pf5200.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:18 +0000 (15:55 +0000)]
board/esd/pf5200/pf5200.c: Fix GCC 4.6 build warning

Fix:
pf5200.c: In function 'do_phypower':
pf5200.c:330:6: warning: variable 'status' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Reinhard Arlt <reinhard.arlt@esd-electronics.com>
13 years agoboard/esd/cpci5200/strataflash.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:17 +0000 (15:55 +0000)]
board/esd/cpci5200/strataflash.c: Fix GCC 4.6 build warning

Fix:
strataflash.c: In function 'flash_write_cfiword':
strataflash.c:681:11: warning: variable 'ctladdr' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Reinhard Arlt <reinhard.arlt@esd-electronics.com>
13 years agoPM520: add missing enable_interrupts()
Wolfgang Denk [Fri, 4 Nov 2011 15:55:16 +0000 (15:55 +0000)]
PM520: add missing enable_interrupts()

The code disabled interrupts in several locations, without re-enabling
them again.  Fix this.

While we are at it, also fix a GCC 4.6 build warning:
flash.c: In function 'flash_erase':
flash.c:373:21: warning: variable 'last' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Josef Wagner <Wagner@Microsys.de>
13 years agofs/fat/fat.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:15 +0000 (15:55 +0000)]
fs/fat/fat.c: Fix GCC 4.6 build warning

Fix:
fat.c: In function 'fat_register_device':
fat.c:74:19: warning: variable 'info' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agodrivers/video/videomodes.c: fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:14 +0000 (15:55 +0000)]
drivers/video/videomodes.c: fix GCC 4.6 build warning

Fix:
videomodes.c: In function 'video_get_params':
videomodes.c:162:13: warning: variable 't' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Anatolij Gustschin <agust@denx.de>
13 years agodrivers/rtc/rv3029.c: fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:13 +0000 (15:55 +0000)]
drivers/rtc/rv3029.c: fix GCC 4.6 build warnings

Fix:
rv3029.c: In function 'rtc_set':
rv3029.c:98:6: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]
rv3029.c: In function 'set_eere_bit':
rv3029.c:131:6: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]
rv3029.c: In function 'wait_eebusy':
rv3029.c:149:9: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]
rv3029.c: In function 'rtc_reset':
rv3029.c:165:6: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agodrivers/rtc/ds3231.c: fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:12 +0000 (15:55 +0000)]
drivers/rtc/ds3231.c: fix GCC 4.6 build warnings

Fix:
ds3231.c: In function 'rtc_get':
ds3231.c:90:52: warning: variable 'control' set but not used
[-Wunused-but-set-variable]

Fix is done by switching to standard debug() instead of custom macro.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/mcc200/auto_update.c: fixx GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:11 +0000 (15:55 +0000)]
board/mcc200/auto_update.c: fixx GCC 4.6 build warnings

Fix:
auto_update.c: In function 'do_auto_update':
auto_update.c:344:48: warning: variable 'got_ctrlc' set but not used
[-Wunused-but-set-variable]
auto_update.c:344:18: warning: variable 'bitmap_first' set but not
used [-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoarch/powerpc/cpu/mpc5xxx/usb_ohci.c: fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:10 +0000 (15:55 +0000)]
arch/powerpc/cpu/mpc5xxx/usb_ohci.c: fix GCC 4.6 build warnings

Fix:
usb_ohci.c: In function 'dl_transfer_length':
usb_ohci.c:751:8: warning: variable 'tdINFO' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/tqc/tqm5200/cmd_stk52xx.c: fix GC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:09 +0000 (15:55 +0000)]
board/tqc/tqm5200/cmd_stk52xx.c: fix GC 4.6 build warnings

Fix:
cmd_stk52xx.c: In function 'spi_transmit':
cmd_stk52xx.c:85:6: warning: variable 'dummy' set but not used
[-Wunused-but-set-variable]
cmd_stk52xx.c: In function 'i2s_play_wave':
cmd_stk52xx.c:199:3: warning: dereferencing type-punned pointer will
break strict-aliasing rules [-Wstrict-aliasing]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoarch/powerpc/lib/board.c: fix build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:08 +0000 (15:55 +0000)]
arch/powerpc/lib/board.c: fix build warning

Fix:
board.c: In function 'board_init_r':
board.c:633:8: warning: unused variable 's' [-Wunused-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoarch/powerpc/lib/board.c: make (mostly) checkpatch-clean
Wolfgang Denk [Fri, 4 Nov 2011 15:55:07 +0000 (15:55 +0000)]
arch/powerpc/lib/board.c: make (mostly) checkpatch-clean

CodingStyle cleanup.

Accepted (in this cleanup) checkpatch messages:

- externs should be avoided
  (to be cleaned up later)
- no spaces at the start of a line
  (accepted in multi-line #if's)
- Macros with complex values
  (false reports)
- do not use assignment in if condition
  (accepted in one place, where avoiding it would have required an
  additional level of nesting, resulting in less readable code)

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoarch/powerpc/cpu/mpc5xxx/i2c.c: fix GC 4.6 build warnings
Wolfgang Denk [Fri, 4 Nov 2011 15:55:06 +0000 (15:55 +0000)]
arch/powerpc/cpu/mpc5xxx/i2c.c: fix GC 4.6 build warnings

Fix:
i2c.c: In function 'wait_for_bb':
i2c.c:104:16: warning: variable 'temp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Heiko Schocher <hs@denx.de>
13 years agoboard/mpl/common/flash.c: fix GCC 4.6 build warning
Wolfgang Denk [Fri, 4 Nov 2011 15:55:05 +0000 (15:55 +0000)]
board/mpl/common/flash.c: fix GCC 4.6 build warning

Fix:
../common/flash.c: In function 'flash_erase':
../common/flash.c:603:24: warning: variable 'l_sect' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Denis Peter <d.peter@mpl.ch>
13 years agoconfig.mk: use memoization in cc-option macro to speed up compilation
Daniel Schwierzeck [Mon, 7 Nov 2011 05:26:43 +0000 (05:26 +0000)]
config.mk: use memoization in cc-option macro to speed up compilation

Apply memoization to cc-option macro by caching the results of the
gcc calls. This macro is called very often so using cached results
leads to faster compilation times.

The old behaviour can be restored by defining the config option
CONFIG_CC_OPT_CACHE_DISABLE=y.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
13 years agosandbox: drop unused return
Mike Frysinger [Wed, 26 Oct 2011 00:22:14 +0000 (00:22 +0000)]
sandbox: drop unused return

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: put stdin into raw mode
Mike Frysinger [Wed, 26 Oct 2011 00:21:29 +0000 (00:21 +0000)]
sandbox: put stdin into raw mode

This allows us to act like a serial device: we get tab chars and CTRL+C
and respond appropriately.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Simon Glass <sjg@chromium.org>
13 years agoserial: sandbox: use ssize_t to match os_read
Mike Frysinger [Wed, 26 Oct 2011 00:21:01 +0000 (00:21 +0000)]
serial: sandbox: use ssize_t to match os_read

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Simon Glass <sjg@chromium.org>
13 years agoserial: sandbox: optimize puts
Mike Frysinger [Wed, 26 Oct 2011 00:20:39 +0000 (00:20 +0000)]
serial: sandbox: optimize puts

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Simon Glass <sjg@chromium.org>
13 years agosandbox/tegra2: fix typo in autocomplete define
Mike Frysinger [Wed, 26 Oct 2011 00:19:58 +0000 (00:19 +0000)]
sandbox/tegra2: fix typo in autocomplete define

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Change md command to use map_physmem
Simon Glass [Tue, 25 Oct 2011 13:51:09 +0000 (13:51 +0000)]
sandbox: Change md command to use map_physmem

Sandbox wants to support commands which use memory. The map_physmen()
call provides this feature, so should be used more consistently in
U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Matthias Weisser <weisserm@arcor.de>
13 years agosandbox: Adjust Makefile so that standalone/api are not built
Simon Glass [Tue, 25 Oct 2011 11:29:28 +0000 (11:29 +0000)]
sandbox: Adjust Makefile so that standalone/api are not built

The check for sandbox architecture is too early in the Makefile, so
standalone and api are built regardless. This moves the check until
after autoconf.mk has been read.

This fixes a build breakage.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Add asm/cache.h for sandbox
Anton staaf [Tue, 25 Oct 2011 10:48:03 +0000 (10:48 +0000)]
sandbox: Add asm/cache.h for sandbox

This file is required by the new DMA buffer alignment macro.

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agoReduce build times
Wolfgang Denk [Tue, 1 Nov 2011 20:54:02 +0000 (20:54 +0000)]
Reduce build times

U-Boot Makefiles contain a number of tests for compiler features etc.
which so far are executed again and again.  On some architectures
(especially ARM) this results in a large number of calls to gcc.

This patch makes sure to run such tests only once, thus largely
reducing the number of "execve" system calls.

Example: number of "execve" system calls for building the "P2020DS"
(Power Architecture) and "qong" (ARM) boards, measured as:
-> strace -f -e trace=execve -o /tmp/foo ./MAKEALL <board>
-> grep execve /tmp/foo | wc -l

Before: After: Reduction:
==================================
P2020DS 20555 15205 -26%
qong 31692 14490 -54%

As a result, built times are significantly reduced, typically by
30...50%.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: Albert Aribaud <albert.aribaud@free.fr>
cc: Graeme Russ <graeme.russ@gmail.com>
cc: Mike Frysinger <vapier@gentoo.org>
Tested-by: Graeme Russ <graeme.russ@gmail.com>
Tested-by: Matthias Weisser <weisserm@arcor.de>
Tested-by: Sanjeev Premi <premi@ti.com>
Tested-by: Simon Glass <sjg@chromium.org>
Tested-by: Macpaul Lin <macpaul@gmail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agopost/post.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:42:23 +0000 (09:42 +0000)]
post/post.c: fix GCC 4.6 build warnings

Fix:
post.c: In function 'post_log':
post.c:425:7: warning: variable 'i' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agopost/post.c: CodingStyle cleanup
Wolfgang Denk [Sat, 29 Oct 2011 09:42:22 +0000 (09:42 +0000)]
post/post.c: CodingStyle cleanup

Make checkpatch-clean..

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
13 years agocommon/cmd_ide.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:41:41 +0000 (09:41 +0000)]
common/cmd_ide.c: fix GCC 4.6 build warnings

Fix:
cmd_ide.c: In function 'ide_ident':
cmd_ide.c:988:6: warning: variable 'do_retry' set but not used
[-Wunused-but-set-variable]

Delete the unused variable.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agocommon/cmd_ide.c: CodingStyle cleanup
Wolfgang Denk [Sat, 29 Oct 2011 09:41:40 +0000 (09:41 +0000)]
common/cmd_ide.c: CodingStyle cleanup

Make file acceptable to checkpatch.

This is only a basic clean up to the extend possible without any real
changes to the source code. Warnings due to line over 80 characters
were accepted because these affect only printf()s with user visible
strings.  No attempts were made to fix warnings about volatile and
externs - these need a more thorough cleanup.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agodrivers/rtc/ds1337.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:39:11 +0000 (09:39 +0000)]
drivers/rtc/ds1337.c: fix GCC 4.6 build warnings

Fix:
ds1337.c: In function 'rtc_get':
ds1337.c:88:52: warning: variable 'control' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years ago4xx_pci.c: add error checking, fix GCC 4.6 build warning
Wolfgang Denk [Sat, 29 Oct 2011 09:38:31 +0000 (09:38 +0000)]
4xx_pci.c: add error checking, fix GCC 4.6 build warning

Fix:
4xx_pci.c: In function 'pci_init_board':
4xx_pci.c:855:6: warning: variable 'busno' 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>
13 years agoboard/prodrive/p3mx/mv_eth.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:38:21 +0000 (09:38 +0000)]
board/prodrive/p3mx/mv_eth.c: fix GCC 4.6 build warnings

Fix:
mv_eth.c: In function 'mv64460_eth_real_open':
mv_eth.c:471:6: warning: variable 'port_status' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_stop':
mv_eth.c:722:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_xmit':
mv_eth.c:796:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable]
mv_eth.c: In function 'mv64460_eth_receive':
mv_eth.c:877: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:979: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:1006:24: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]
mv_eth.c:1005: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:1087: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:2141:15: warning: variable 'dummy' set but not used [-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years ago4xx_enet.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:37:56 +0000 (09:37 +0000)]
4xx_enet.c: fix GCC 4.6 build warnings

Fix:
4xx_enet.c: In function 'enet_rcv':
4xx_enet.c:1772:21: warning: variable 'ef_ptr' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Stefan Roese <sr@denx.de>
13 years ago4xx_uart.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:37:52 +0000 (09:37 +0000)]
4xx_uart.c: fix GCC 4.6 build warnings

Fix:
4xx_uart.c: In function 'get_serial_clock':
4xx_uart.c:204:6: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Stefan Roese <sr@denx.de>
13 years agodrivers/net/eepro100.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:37:48 +0000 (09:37 +0000)]
drivers/net/eepro100.c: fix GCC 4.6 build warnings

Fix:
eepro100.c: In function 'read_hw_addr':
eepro100.c:926:6: warning: variable 'eeprom' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/g2000/strataflash.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:37:44 +0000 (09:37 +0000)]
board/g2000/strataflash.c: fix GCC 4.6 build warnings

Fix:
strataflash.c: In function 'flash_write_cfiword':
strataflash.c:669:11: warning: variable 'ctladdr' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoboard/jse/flash.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:37:40 +0000 (09:37 +0000)]
board/jse/flash.c: fix GCC 4.6 build warnings

Fix:
flash.c: In function 'flash_erase':
flash.c:304:24: warning: variable 'l_sect' set but not used
[-Wunused-but-set-variable]

In addition, remove some dead code.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agodrivers/net/ns8382x.c: fix GCC 4.6 build warnings
Wolfgang Denk [Sat, 29 Oct 2011 09:37:34 +0000 (09:37 +0000)]
drivers/net/ns8382x.c: fix GCC 4.6 build warnings

Fix:
ns8382x.c: In function 'ns8382x_check_duplex':
ns8382x.c:704:6: warning: variable 'hun' set but not used
[-Wunused-but-set-variable]

To fix this, we get rid of the NS8382X_DEBUG code and use standard
debug() instead.

This will now trigger a so far undetected warning:
ns8382x.c:780:2: warning: format '%X' expects argument of type
'unsigned int', but argument 2 has type 'long unsigned int' [-Wformat]

Fix that, too.

Signed-off-by: Wolfgang Denk <wd@denx.de>
13 years agoarch/powerpc/lib/board.c: fix build warning
Wolfgang Denk [Sun, 23 Oct 2011 11:58:52 +0000 (11:58 +0000)]
arch/powerpc/lib/board.c: fix build warning

Commit 1272592 "powerpc: Use getenv_ulong() in place of getenv(),
strtoul" instroduced a build warning for some PPC systems:

board.c: In function 'board_init_r':
board.c:626: warning: unused variable 's'

Fix it.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Simon Glass <sjg@chromium.org>
Acked-by: Heiko Schocher <hs@denx.de>
13 years agoMerge branch 'master' of git://git.denx.de/u-boot-mmc
Wolfgang Denk [Thu, 3 Nov 2011 19:36:16 +0000 (20:36 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mmc

* 'master' of git://git.denx.de/u-boot-mmc:
  tegra2: Move MMC clock initialization into MMC driver
  mmc: sdhci: fix sdma bug for large file transfer
  mmc: sdhci: add timeout for data transfer
  mmc: sdhci: add mmc structure for host
  mmc: sdhci: fix build warning
  mmc: sdhci: fix cache flush
  mmc: CMD7:MMC_CMD_SELECT_CARD response fix
  mmc: test mmc bus width on startup
  mmc: change magic number to macro define
  mmc: mv_sdhci: fix 8bus width access for 88SV331xV5
  mmc: retry the cmd8 to meet 74 clocks requirement in the spec
  PXA: Add MMC driver using the generic MMC framework

13 years agoMerge branch 'master' of git://git.denx.de/u-boot-x86
Wolfgang Denk [Thu, 3 Nov 2011 19:36:04 +0000 (20:36 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-x86

* 'master' of git://git.denx.de/u-boot-x86:
  x86: Fix a compiler warning in arch/x86/lib/realmode.c
  x86: Remove the prototype for the unused function board_init
  x86: Rename include/asm/ic to include/asm/arch-sc520
  x86: turn off cache: set control register properly

13 years agoMerge branch 'master' of git://git.denx.de/u-boot-nds32
Wolfgang Denk [Thu, 3 Nov 2011 19:35:45 +0000 (20:35 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-nds32

* 'master' of git://git.denx.de/u-boot-nds32:
  nds32: asm/io.h: add __iormb __iowmb and inline io support
  nds32: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
  nds32: Use getenv_ulong() in place of getenv(), strtoul

13 years agoe1000: fix bugs from recent commits
Wolfgang Denk [Fri, 28 Oct 2011 05:37:04 +0000 (07:37 +0200)]
e1000: fix bugs from recent commits

Commit 114d7fc0 "e1000: Rewrite EEPROM checksum error to give more
information" failed to initialize the checksum variable which should
result in random results. Fix that.

Commit 2326a94d caused a ton of "unused variable 'x'" warnings.
Fix these.  While we are at it, remove some bogus parens.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
13 years agotegra2: Move MMC clock initialization into MMC driver
Stephen Warren [Mon, 31 Oct 2011 06:51:34 +0000 (06:51 +0000)]
tegra2: Move MMC clock initialization into MMC driver

This centralizes knowledge of MMC clocking into the MMC driver. This also
removes clock setup from the board files, which will simplify later changes
that modify the Harmony board to support the correct set of MMC controllers.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Cc: Andy Fleming <afleming@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
13 years agommc: sdhci: fix sdma bug for large file transfer
Lei Wen [Sat, 8 Oct 2011 04:14:58 +0000 (04:14 +0000)]
mmc: sdhci: fix sdma bug for large file transfer

SDHCI spec need to reset the sdma base address while the software
try to accorss the 512k bytes address boundary. When meet such
accross behavior, sdhci controller would generate a interrupt
automatically, and software need handle this.

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: sdhci: add timeout for data transfer
Lei Wen [Sat, 8 Oct 2011 04:14:57 +0000 (04:14 +0000)]
mmc: sdhci: add timeout for data transfer

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: sdhci: add mmc structure for host
Lei Wen [Sat, 8 Oct 2011 04:14:56 +0000 (04:14 +0000)]
mmc: sdhci: add mmc structure for host

So that sdhci host would tell in the driver that the mmc current
attributes.

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: sdhci: fix build warning
Lei Wen [Sat, 8 Oct 2011 04:14:55 +0000 (04:14 +0000)]
mmc: sdhci: fix build warning

If CONFIG_MMC_SDHCI_IO_ACCESSORS is defined, the following warning would
shows up:

include/sdhci.h:224: warning: 'struct sdhci_host' declared inside
parameter list
include/sdhci.h:224: warning: its scope is only this definition or
declaration, which is probably not what you want
include/sdhci.h:225: warning: 'struct sdhci_host' declared inside
parameter list
include/sdhci.h:226: warning: 'struct sdhci_host' declared inside
parameter list
include/sdhci.h:227: warning: 'struct sdhci_host' declared inside
parameter list
include/sdhci.h:228: warning: 'struct sdhci_host' declared inside
parameter list
include/sdhci.h:229: warning: 'struct sdhci_host' declared inside
parameter list

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: sdhci: fix cache flush
Lei Wen [Sat, 8 Oct 2011 04:14:54 +0000 (04:14 +0000)]
mmc: sdhci: fix cache flush

Only flush the memory range needed.

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: CMD7:MMC_CMD_SELECT_CARD response fix
Ajay Bhargav [Wed, 5 Oct 2011 03:13:23 +0000 (03:13 +0000)]
mmc: CMD7:MMC_CMD_SELECT_CARD response fix

As per JEDEC document JESD84-A441 (page 105) response for CMD7
(MMC_CMD_SELECT_CARD) response should be R1 instead of R1b. In uboot we
never take MMC to disconnected state and on powerup its always ideal
state which later goes to stand-by state.

from document footnote:
R1 while selecting from Stand-By State to Transfer State; R1b while
selecting from Disconnected State to Programming State.

Signed-off-by: Ajay Bhargav <ajay.bhargav@einfochips.com>
13 years agommc: test mmc bus width on startup
Lei Wen [Mon, 3 Oct 2011 20:35:11 +0000 (20:35 +0000)]
mmc: test mmc bus width on startup

For we don't know mmc bus width from reading registers, the only way
to check is to test.

Current compare offset is:
EXT_CSD_PARTITIONING_SUPPORT
EXT_CSD_ERASE_GROUP_DEF
EXT_CSD_REV
EXT_CSD_HC_ERASE_GRP_SIZE
EXT_CSD_SEC_CNT

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: change magic number to macro define
Lei Wen [Mon, 3 Oct 2011 20:35:10 +0000 (20:35 +0000)]
mmc: change magic number to macro define

Previous magic number is hard to parse its meaning, change it to
respective macro definition

Signed-off-by: Lei Wen <leiwen@marvell.com>
Acked-by: WOlfgang Denk <wd@denx.de>
13 years agommc: mv_sdhci: fix 8bus width access for 88SV331xV5
Lei Wen [Mon, 3 Oct 2011 20:33:44 +0000 (20:33 +0000)]
mmc: mv_sdhci: fix 8bus width access for 88SV331xV5

Marvell 88SV331xV5 platform's sdhci host control is not very standard
with the spec in the 8bit handling. It need to set its private register
to switch to the 8bit mode which is not included in the standard sdhci
registers.

This patch mainly hacks the writeb method, and set its private register
if it find the driver is going to switch to the 8bit mode.

Signed-off-by: Lei Wen <leiwen@marvell.com>
13 years agommc: retry the cmd8 to meet 74 clocks requirement in the spec
Lei Wen [Fri, 2 Sep 2011 17:34:17 +0000 (17:34 +0000)]
mmc: retry the cmd8 to meet 74 clocks requirement in the spec

For some controller it has dynamic clock gating, and only toggle out clk
when the first cmd0 send out, while some card strictly obey the 74
clocks rule, the interval may not be sufficient between the cmd0 and
this cmd8, retry to fulfil the clock requirement.

Signed-off-by: Lei Wen <leiwen@marvell.com>
Tested-by: Marek Vasut <marek.vasut@gmail.com>
13 years agoPXA: Add MMC driver using the generic MMC framework
Marek Vasut [Wed, 2 Nov 2011 00:29:27 +0000 (00:29 +0000)]
PXA: Add MMC driver using the generic MMC framework

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
13 years agox86: Fix a compiler warning in arch/x86/lib/realmode.c
Gabe Black [Thu, 20 Oct 2011 18:29:17 +0000 (18:29 +0000)]
x86: Fix a compiler warning in arch/x86/lib/realmode.c

Ensure that the value being passed to a %d format specifier is of type
int.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
13 years agox86: Remove the prototype for the unused function board_init
Gabe Black [Fri, 28 Oct 2011 12:38:47 +0000 (12:38 +0000)]
x86: Remove the prototype for the unused function board_init

Signed-off-by: Gabe Black <gabeblack@chromium.org>
13 years agox86: Rename include/asm/ic to include/asm/arch-sc520
Graeme Russ [Thu, 4 Aug 2011 12:05:09 +0000 (22:05 +1000)]
x86: Rename include/asm/ic to include/asm/arch-sc520

Also include some trivial related cleanups

13 years agox86: turn off cache: set control register properly
Ondrej Kupka [Fri, 30 Sep 2011 10:05:11 +0000 (21:05 +1100)]
x86: turn off cache: set control register properly

Bits should be ORed when they are supposed to be added together

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
13 years agonds32: asm/io.h: add __iormb __iowmb and inline io support
Macpaul Lin [Mon, 24 Oct 2011 05:31:05 +0000 (13:31 +0800)]
nds32: asm/io.h: add __iormb __iowmb and inline io support

1. This patch add required __iormb and __iowmb to io.h.
   This also fix some misbehavior to periphal drivers.
   This io.h has been fixed with referencing arm/include/asm/io.h.
2. This patch replaced macro writeb and readb into inline function.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Macpaul Lin [Mon, 24 Oct 2011 08:48:39 +0000 (16:48 +0800)]
nds32: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Add ARCH_DMA_MINALIGN definition to asm/cache.h

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32: Use getenv_ulong() in place of getenv(), strtoul
Macpaul Lin [Mon, 24 Oct 2011 08:43:17 +0000 (16:43 +0800)]
nds32: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agoe1000: Allow direct access to the E1000 SPI EEPROM device
Kyle Moffett [Tue, 18 Oct 2011 11:05:29 +0000 (11:05 +0000)]
e1000: Allow direct access to the E1000 SPI EEPROM device

As a part of the manufacturing process for some of our custom hardware,
we are programming the EEPROMs attached to our Intel 82571EB controllers
from software using U-Boot and Linux.

This code provides several conditionally-compiled features to assist in
our manufacturing process:

  CONFIG_CMD_E1000:
    This is a basic "e1000" command which allows querying the controller
    and (if other config options are set) performing EEPROM programming.
    In particular, with CONFIG_E1000_SPI this allows you to display a
    hex-dump of the EEPROM, copy to/from main memory, and verify/update
    the software checksum.

  CONFIG_E1000_SPI_GENERIC:
    Build a generic SPI driver providing the standard U-Boot SPI driver
    interface.  This allows commands such as "sspi" to access the bus
    attached to the E1000 controller.  Additionally, some E1000 chipsets
    can support user data in a reserved space in the E1000 EEPROM which
    could be used for U-Boot environment storage.

  CONFIG_E1000_SPI:
    The core SPI access code used by the above interfaces.

For example, the following commands allow you to program the EEPROM from
a USB device (assumes CONFIG_E1000_SPI and CONFIG_CMD_E1000 are enabled):
  usb start
  fatload usb 0 $loadaddr 82571EB_No_Mgmt_Discrete-LOM.bin
  e1000 0 spi program $loadaddr 0 1024
  e1000 0 spi checksum update

Please keep in mind that the Intel-provided .eep files are organized as
16-bit words.  When converting them to binary form for programming you
must byteswap each 16-bit word so that it is in little-endian form.

This means that when reading and writing words to the SPI EEPROM, the
bit ordering for each word looks like this on the wire:

  Time >>>
------------------------------------------------------------------
  ... [7, 6, 5, 4, 3, 2, 1, 0, 15, 14, 13, 12, 11, 10, 9, 8], ...
------------------------------------------------------------------
  (MSB is 15, LSB is 0).

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Ben Warren <biggerbadderben@gmail.com>
13 years agoe1000: Export core EEPROM access functions for SPI support
Kyle Moffett [Tue, 18 Oct 2011 11:05:28 +0000 (11:05 +0000)]
e1000: Export core EEPROM access functions for SPI support

A followup patch will be adding a configurable feature to enable
programming of E1000 EEPROMs from the command line or via the generic
U-Boot SPI interface.

In order for it to work it needs access to certain E1000-internal
functions, so export those in the e1000.h header file.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Ben Warren <biggerbadderben@gmail.com>
13 years agoe1000: Rewrite EEPROM checksum error to give more information
Kyle Moffett [Tue, 18 Oct 2011 11:05:27 +0000 (11:05 +0000)]
e1000: Rewrite EEPROM checksum error to give more information

As an aide to debugging, we should print out the expected value of the
EEPROM checksum in addition to just saying that it is wrong.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Ben Warren <biggerbadderben@gmail.com>
13 years agoe1000: Restructure and streamline PCI device probing
Kyle Moffett [Tue, 18 Oct 2011 11:05:26 +0000 (11:05 +0000)]
e1000: Restructure and streamline PCI device probing

By allocating the e1000 device structures much earlier, we can easily
generate better error messages and siginficantly clean things up.

The only user-visable change (aside from reworded error messages) is
that a detected e1000 device which fails to initialize due to software
or hardware error will still be allocated a device number.

As one example, consider a system with 2 e1000 PCI devices where the
first controller has a corrupted EEPROM.  Using the old code the
second controller would be "e1000#0", while with this change it would be
"e1000#1".

This change should hopefully make such EEPROM errors much more
straightforward to handle correctly in boot scripts and the like.

It is also necessary for a followup patch which allows SPI programming
of an e1000 controller's EEPROM even if the checksum is invalid.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Ben Warren <biggerbadderben@gmail.com>
13 years agoe1000: Clean up handling of dual-port NICs and support 82571
Kyle Moffett [Mon, 13 Sep 2010 05:52:22 +0000 (05:52 +0000)]
e1000: Clean up handling of dual-port NICs and support 82571

Consolidate the test for a dual-port NIC to one location for easy
modification, then fix support for the dual-port 82571.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
13 years agozlib: Fix integer cast of pointer
Simon Glass [Mon, 17 Oct 2011 12:55:05 +0000 (12:55 +0000)]
zlib: Fix integer cast of pointer

Fix to cast an integer to a pointer using uintptr_t.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Thu, 27 Oct 2011 22:15:19 +0000 (00:15 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

* 'master' of git://git.denx.de/u-boot-arm:
  ARM: Add Calxeda Highbank platform
  dkb: make mmc command as default enabled
  Marvell: dkb: add mmc support
  ARM: pantheon: add mmc definition
  davinci: remove config.mk file from the sources
  ARM:AM33XX: Add support for TI AM335X EVM
  ARM:AM33XX: Added timer support
  ARM:AM33XX: Add emif/ddr support
  ARM:AM33XX: Add clock definitions
  ARM:AM33XX: Added support for AM33xx
  omap3/emif4: fix registers definition
  davinci: remove obsolete macro CONFIG_EMAC_MDIO_PHY_NUM
  davinci: emac: add support for more than 1 PHYs
  davinci: emac: add new features to autonegotiate for EMAC
  da850evm: Move LPSC configuration to board_early_init_f()
  omap4_panda: Build in cmd_gpio support on panda
  omap: Don't use gpio_free to change direction to input
  mmc: omap: Allow OMAP_HSMMC[23]_BASE to be unset
  OMAP3: overo : Add environment variable optargs to bootargs
  OMAP3: overo: Move ethernet CS4 configuration to execute based on board id
  OMAP3: overo : Use ttyO2 instead of ttyS2.
  da830: add support for NAND boot mode
  dm36x: revert cache disable patch
  dm644X: revert cache disable patch
  devkit8000: Add malloc space
  omap: spl: fix build break due to changes in FAT
  OMAP3 SPL: Provide weak omap_rev_string
  omap: beagle: Use ubifs instead of jffs2 for nand boot
  omap: overo: Disable pull-ups on camera PCLK, HS and VS signals
  omap: overo: Configure mux for gpio10
  SPL: Add DMA library
  omap3: Add interface for omap3 DMA
  omap3: Add DMA register accessors
  omap3: Add Base register for DMA
  arm, davinci: add missing LSPC define for MMC/SD1
  U-Boot/SPL: omap4: Make ddr pre-calculated timings as default.
  DaVinci: correct MDSTAT.STATE mask
  omap4: splitting padconfs into common, 4430 and 4460
  omap4: adding revision detection for 4460 ES1.1
  omap4: replacing OMAP4_CONTROL with OMAP4430_CONTROL
  gplug: fixed build error as a result of code cleanup patch
  kirkwood_spi: add dummy spi_init()
  gpio: mvmfp: reduce include platform file
  ARM: orion5x: reduce dependence of including platform file
  serial: reduce include platform file for marvell chip
  ARM: kirkwood: reduce dependence of including platform file
  ARM: armada100: reduce dependence of including platform file
  ARM: pantheon: reduce dependence of including platform file
  Armada100: Add env storage support for Marvell gplugD
  Armada100: Add SPI flash support for Marvell gplugD
  Armada100: Add SPI support for Marvell gplugD
  SPI: Add SPI driver support for Marvell Armada100
  dreamplug: initial board support.
  imx: fix coding style
  misc: pmic: drop old Freescale's pmic driver
  MX31: mx31pdk: use new pmic driver
  MX31: mx31ads: use new pmic driver
  MX31: mx31_litekit: use new pmic driver
  MX5: mx53evk: use new pmic driver
  MX5: mx51evk: use new pmic driver
  MX35: mx35pdk: use new pmic driver
  misc: pmic: addI2C  support to pmic_fsl driver
  misc: pmic: use I2C_SET_BUS in pmic I2C
  MX5: efikamx/efikasb: use new pmic driver
  MX3: qong: use new pmic driver
  RTC: Switch mc13783 to generic pmic code
  MX5: vision2: use new pmic driver
  misc: pmic: Freescale PMIC switches to generic PMIC driver
  misc:pmic:samsung Enable PMIC driver at GONI target
  misc:pmic:max8998 MAX8998 support at a new PMIC driver.
  misc:pmic:core New generic PMIC driver
  mx31pdk: Remove unneeded config
  mx31: provide readable WEIM CS accessor
  MX51: vision2: Set global macros
  I2C: Add i2c_get/set_speed() to mxc_i2c.c
  ARM: Update mach-types
  devkit8000: Add config to enable SPL MMC boot
  devkit8000: protect board_mmc_init
  arm, post: add missing post_time_ms for arm
  cosmetic, post: Codingstyle cleanup
  arm, logbuffer: make it compileclean
  tegra2: Enable MMC for Seaboard
  tegra2: Add more pinmux functions
  tegra2: Rename PIN_ to PINGRP_
  tegra2: Add more clock functions
  tegra2: Clean up board code a little
  tegra2: Rename CLOCK_PLL_ID to CLOCK_ID

13 years agoMerge branch 'master' of git://git.denx.de/u-boot-microblaze
Wolfgang Denk [Thu, 27 Oct 2011 22:14:16 +0000 (00:14 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-microblaze

* 'master' of git://git.denx.de/u-boot-microblaze:
  microblaze: Fix strict-aliasing rules for in_be32
  microblaze: Wire up axi_ethernet driver initialization

13 years agoDEBUG: Fix debug macros
Marek Vasut [Mon, 24 Oct 2011 23:41:42 +0000 (23:41 +0000)]
DEBUG: Fix debug macros

The current implementation of debug doesn't play well with GCC4.6.
This implementation also fixes GCC4.6 complaints about unused variables
while maintaining code size.

Also, drop the debugX() as that's not used anywhere anymore.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
13 years agoGCC4.6: Remove debugX() usage from spc1920 hpi
Marek Vasut [Mon, 24 Oct 2011 23:41:41 +0000 (23:41 +0000)]
GCC4.6: Remove debugX() usage from spc1920 hpi

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
13 years agoGCC4.6: Squash warnings in omap4 clocks.c
Marek Vasut [Mon, 24 Oct 2011 23:41:40 +0000 (23:41 +0000)]
GCC4.6: Squash warnings in omap4 clocks.c

clocks.c:606:2: warning: format '%08x' expects type 'unsigned int', but argument
2 has type 'u32 * const'
clocks.c:633:2: warning: format '%08x' expects type 'unsigned int', but argument
2 has type 'u32 * const'

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
13 years agoGCC4.6: Squash warning in tegra2 board.c
Marek Vasut [Mon, 24 Oct 2011 23:41:39 +0000 (23:41 +0000)]
GCC4.6: Squash warning in tegra2 board.c

board.c:43:2: warning: format '%08lX' expects type 'long unsigned int', but
argument 2 has type 'u32'

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
13 years agoGCC4.6: Squash warnings in yaffs_guts.c
Marek Vasut [Mon, 24 Oct 2011 23:41:38 +0000 (23:41 +0000)]
GCC4.6: Squash warnings in yaffs_guts.c

yaffs_guts.c: In function 'yaffs_ReadDataFromFile':
yaffs_guts.c:4461:8: warning: 'chunk' may be used uninitialized in this function
yaffs_guts.c:4462:8: warning: 'start' may be used uninitialized in this function
yaffs_guts.c: In function 'yaffs_WriteDataToFile':
yaffs_guts.c:4581:8: warning: 'chunk' may be used uninitialized in this function
yaffs_guts.c:4582:8: warning: 'start' may be used uninitialized in this function
yaffs_guts.c: In function 'yaffs_ResizeFile':
yaffs_guts.c:4816:8: warning: 'newSizeOfPartialChunk' may be used uninitialized
in this function
yaffs_guts.c:4817:8: warning: 'newFullChunks' may be used uninitialized in this
function

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: William Juul <william.juul@tandberg.com>
13 years agoGCC4.6: Drop dead code from yaffs_guts.c
Marek Vasut [Mon, 24 Oct 2011 23:41:37 +0000 (23:41 +0000)]
GCC4.6: Drop dead code from yaffs_guts.c

Drop yaffs_DeleteWorker():
yaffs_guts.c:1556:12: warning: 'yaffs_DeleteWorker' defined but not used

Drop yaffs_VerifyTnodeWorker():
yaffs_guts.c:600:12: warning: 'yaffs_VerifyTnodeWorker' defined but not used

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
13 years agoGCC4.6: Squash warnings in LzmaTools.c
Marek Vasut [Mon, 24 Oct 2011 23:41:36 +0000 (23:41 +0000)]
GCC4.6: Squash warnings in LzmaTools.c

LzmaTools.c: In function 'lzmaBuffToBuffDecompress':
LzmaTools.c:70:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'unsigned char *'
LzmaTools.c:71:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'unsigned char *'
LzmaTools.c:72:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'unsigned char *'
LzmaTools.c:73:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'unsigned char *'
LzmaTools.c:74:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'unsigned char *'
LzmaTools.c:110:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'SizeT'
LzmaTools.c:111:5: warning: format '%lx' expects type 'long unsigned int', but
argument 2 has type 'SizeT'

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
13 years agoGCC4.6: Squash warning in lcd.c
Marek Vasut [Mon, 24 Oct 2011 23:41:00 +0000 (23:41 +0000)]
GCC4.6: Squash warning in lcd.c

lcd.c: In function 'lcd_setmem':
lcd.c:446:2: warning: format '%d' expects type 'int', but argument 2 has type
'u_long'
lcd.c:446:2: warning: format '%d' expects type 'int', but argument 3 has type
'u_long'

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>