u-boot-brain/common
Stephen Warren 84d35b2863 common: rework bouncebuf implementation
The current bouncebuf API requires all parameters to be passed to both
bounce_buffer_start() and bounce_buffer_stop(). Modify the bouncebuf
start function to accept a state structure as a parameter, and only
require that state struct to be passed to the stop function. This
simplifies usage of the bounce buffer by clients.

Don't modify the data pointer, but rather store the temporary buffer in
this state struct. The bouncebuf code ensures that client code can
always use a single buffer pointer in the state structure, irrespective
of whether a bounce buffer actually had to be allocated.

Move cache management logic into the bounce buffer code, so that each
client doesn't have to duplicate this. I believe there's no need to
invalidate the buffer before a DMA operation, since flushing the cache
should prevent any write-backs.

Update the MXS MMC driver for this change.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Andy Fleming <afleming@freescale.com>
2012-11-27 17:26:48 -06:00
..
spl SPL: make jump_to_image_no_args a weak symbol 2012-10-29 09:07:05 -07:00
bedbug.c common: Move conditional compilation to Makefile 2008-08-13 01:40:38 +02:00
bootstage.c bootstage: Add feature to stash/unstash bootstage info 2012-10-03 00:52:40 +02:00
bouncebuf.c common: rework bouncebuf implementation 2012-11-27 17:26:48 -06:00
cmd_ambapp.c various cmd_* files: fixed layout a little bit 2010-08-09 01:07:37 +02:00
cmd_bdinfo.c x86: Change global data baudrate to int 2012-10-19 15:25:46 -07:00
cmd_bedbug.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_bmp.c video: Provide an API to access video parameters 2012-11-06 22:57:32 +01:00
cmd_boot.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_bootldr.c Blackfin: bootldr: use common defines 2011-04-08 00:44:27 -04:00
cmd_bootm.c fdt: Add option to default to most compatible conf in a fit image 2012-11-12 23:14:57 -05:00
cmd_bootstage.c bootstage: Add bootstage command 2012-10-03 00:52:44 +02:00
cmd_cache.c Cleanup cache command prints 2012-10-03 16:01:22 -07:00
cmd_cbfs.c fs: Add a Coreboot Filesystem (CBFS) driver and commands 2012-10-22 08:29:55 -07:00
cmd_console.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_cplbinfo.c various cmd_* files: fixed layout a little bit 2010-08-09 01:07:37 +02:00
cmd_cramfs.c cramfs: make cramfs usable without a NOR flash 2011-05-10 22:47:32 +02:00
cmd_dataflash_mmc_mux.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_date.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_dcr.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_df.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_dfu.c ARM: prevent misaligned array inits 2012-10-15 11:53:07 -07:00
cmd_diag.c Make sure that argv[] argument pointers are not modified. 2010-07-04 23:55:42 +02:00
cmd_disk.c disk: get_device_and_partition() "auto" partition and cleanup 2012-09-25 14:58:48 -07:00
cmd_display.c led_display: split led display support into generic and hw-dependent parts 2010-10-12 22:44:33 +02:00
cmd_dtt.c hwmon: Provide dtt_init() 2011-10-22 01:22:21 +02:00
cmd_echo.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_eeprom.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_elf.c common: cmd_elf.c: use uintptr_t for casts from u32 to void* 2012-10-15 11:53:46 -07:00
cmd_exit.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_ext2.c fs: rename fsload command to load 2012-11-04 11:00:34 -07:00
cmd_ext4.c fs: rename fsload command to load 2012-11-04 11:00:34 -07:00
cmd_fat.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_fdc.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_fdos.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_fdt.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_fitupd.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_flash.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_fpga.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_fs.c fs: rename fsload command to load 2012-11-04 11:00:34 -07:00
cmd_gpio.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_help.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_i2c.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_ide.c ide: Correct function signatures for ide_read/write() 2012-11-02 15:20:43 -07:00
cmd_immap.c Make sure that argv[] argument pointers are not modified. 2010-07-04 23:55:42 +02:00
cmd_ini.c Improve license declaration for cmd_ini.h 2012-10-05 11:07:42 -07:00
cmd_irq.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_itest.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_jffs2.c cmd_jffs2: Fix get_part_sector_size_nor() overflow bug 2011-01-19 00:04:43 +01:00
cmd_ldrinfo.c Blackfin: ldrinfo: new command 2011-04-08 00:44:27 -04:00
cmd_led.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_license.c various cmd_* files: fixed layout a little bit 2010-08-09 01:07:37 +02:00
cmd_load.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_log.c cmd_log: print log->v2.con value in the "log info" command 2012-03-30 22:32:50 +02:00
cmd_mac.c cmd_mac: fix help for 'mac read' 2011-07-28 16:41:06 +02:00
cmd_md5sum.c Add parameter to md5sum to save the md5 sum 2012-10-03 16:01:22 -07:00
cmd_mdio.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_mem.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_mfsl.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_mii.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_misc.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_mmc_spi.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_mmc.c cmd_mmc.c: Fix typo, "dislay" -> "display" 2012-11-14 14:29:27 +01:00
cmd_mp.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_mtdparts.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_nand.c nand: Add torture feature 2012-11-26 15:41:29 -06:00
cmd_net.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_nvedit.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_onenand.c linux/compat.h: rename from linux/mtd/compat.h 2012-04-30 16:54:51 +02:00
cmd_otp.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_part.c cmd_part: add partition-related command 2012-09-25 15:05:47 -07:00
cmd_pci.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_pcmcia.c Make sure that argv[] argument pointers are not modified. 2010-07-04 23:55:42 +02:00
cmd_portio.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_pxe.c PXE: FDT: Add support for fdt in PXE 2012-09-27 12:22:11 -05:00
cmd_reginfo.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_reiser.c disk: get_device_and_partition() "auto" partition and cleanup 2012-09-25 14:58:48 -07:00
cmd_sata.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_scsi.c ahci: Support 64-bit LBA option when reading capacity 2012-11-02 15:20:42 -07:00
cmd_setexpr.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_sf.c cmd_sf: add size checking to spi flash commands 2012-04-03 04:34:13 +00:00
cmd_sha1sum.c Add parameter to sha1sum to save the SHA1 sum 2012-10-03 16:01:22 -07:00
cmd_source.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_spi.c cmd_spi: remove superfluous semicolon 2012-08-09 20:41:32 -04:00
cmd_spibootldr.c various cmd_* files: fixed layout a little bit 2010-08-09 01:07:37 +02:00
cmd_spl.c Add cmd_spl command 2012-03-27 22:05:28 +02:00
cmd_strings.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_terminal.c Make sure that argv[] argument pointers are not modified. 2010-07-04 23:55:42 +02:00
cmd_test.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_time.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_tpm.c Add a cli command to test the TPM device. 2011-12-06 21:30:03 +01:00
cmd_tsi148.c common: tsi148 - fix gcc 4.6 compiler warning 2011-11-16 21:42:17 +01:00
cmd_ubi.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_ubifs.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_universe.c common/cmd_universe.c: Fix GCC 4.6 build warning 2011-11-16 21:04:55 +01:00
cmd_unzip.c Convert cmd_usage() calls in common to use a return value 2012-03-06 21:09:46 +01:00
cmd_usb.c usb: use linux/usb/ch9.h instead of usbdescriptors.h 2012-11-20 00:16:06 +01:00
cmd_version.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_ximg.c common/cmd_*.c: sparse fixes 2012-11-04 11:00:35 -07:00
cmd_yaffs2.c u-boot: Update yaffs2 file system 2012-08-09 23:39:18 +02:00
cmd_zfs.c ZFS: Fix compile warning in cmd_zfs.c (GCC 4.6.4 from ELDK 5.2.1) 2012-11-02 15:20:39 -07:00
cmd_zip.c common: add zip command support 2012-09-29 07:26:09 -07:00
command.c common/command.c: revert changes from commit 199adb60 2012-11-08 13:18:10 +01:00
console.c Revert "Add board_pre_console_putc to deal with early console output" 2012-03-23 21:27:32 +01:00
ddr_spd.c mpc8xxx: DDR2/DDR3: Clean up DIMM-type switch statements 2011-04-04 09:24:43 -05:00
dlmalloc.c common/misc: sparse fixes 2012-11-04 11:00:35 -07:00
dlmalloc.src * Code cleanup: 2003-06-27 21:31:46 +00:00
env_common.c env: cosmetic: Consilidate the default env definition 2012-10-19 15:25:43 -07:00
env_dataflash.c env: clean env_dataflash.c checkpatch and code style 2011-11-22 08:39:26 +01:00
env_eeprom.c env: clean env_eeprom.c checkpatch and code style 2011-11-22 08:39:26 +01:00
env_embedded.c env: cosmetic: Consilidate the default env definition 2012-10-19 15:25:43 -07:00
env_fat.c env: checkpatch clean env_fat 2012-09-26 11:08:32 -07:00
env_flash.c env: factor out the env_get_char_spec() function 2012-01-05 16:34:10 +01:00
env_mmc.c env_mmc: allow environment to be in an eMMC partition 2012-09-07 13:54:31 -07:00
env_nand.c env_nand: fix incorrect size parameter to ALLOC_CACHE_ALIGN_BUFFER 2012-09-18 12:01:51 -07:00
env_nowhere.c env: factor out the env_get_char_spec() function 2012-01-05 16:34:10 +01:00
env_nvram.c env: factor out the env_get_char_spec() function 2012-01-05 16:34:10 +01:00
env_onenand.c env_onenand: set ONENAND_MAX_ENV_SIZE to CONFIG_ENV_SIZE 2012-08-06 10:38:47 +02:00
env_remote.c env: remove duplicated env_get_char_spec() 2012-09-26 11:08:32 -07:00
env_sf.c env: factor out the env_get_char_spec() function 2012-01-05 16:34:10 +01:00
exports.c Fix SPI build errors in exports.c 2011-12-07 08:41:22 +01:00
fdt_support.c serial: Remove CONFIG_SERIAL_MULTI from remaining sources 2012-10-15 11:53:59 -07:00
flash.c cfi: Make the flash erase and write operations abortable 2012-09-03 11:24:27 +02:00
hush.c common/misc: sparse fixes 2012-11-04 11:00:35 -07:00
hwconfig.c Minor Coding Style Cleanup. 2011-02-02 22:36:10 +01:00
image.c fdt: Add option to default to most compatible conf in a fit image 2012-11-12 23:14:57 -05:00
iomux.c serial: remove calls to serial_assign() 2012-10-29 09:07:06 -07:00
kallsyms.c Add support for Linux-like kallsysms 2009-06-12 20:45:48 +02:00
kgdb_stubs.c kgdb: add default generic stubs 2010-01-18 00:23:00 +01:00
kgdb.c Make sure that argv[] argument pointers are not modified. 2010-07-04 23:55:42 +02:00
lcd.c lcd: Implement RLE8 bitmap decoding 2012-11-07 00:57:25 +01:00
lynxkdi.c checkpatch whitespace cleanups 2011-10-22 01:13:35 +02:00
main.c fdt: Set kernaddr if fdt indicates a kernel is present 2012-11-12 23:14:57 -05:00
Makefile fs: add filesystem switch libary, implement ls and fsload commands 2012-10-29 14:21:20 -07:00
memsize.c Revert "memsize: Fix for bug in memory sizing code" 2012-09-21 08:14:05 -07:00
menu.c menu: only timeout when menu is displayed 2012-06-21 22:34:00 +02:00
miiphyutil.c Revert "mii: miiphy register address width change" 2011-12-07 08:35:14 +01:00
modem.c common: move extern char console_buffer[] to common.h 2011-11-22 08:39:25 +01:00
s_record.c Initial revision 2002-08-17 09:36:01 +00:00
stdio.c serial: Remove CONFIG_SERIAL_MULTI from remaining sources 2012-10-15 11:53:59 -07:00
system_map.c Add support for Linux-like kallsysms 2009-06-12 20:45:48 +02:00
update.c net/: sparse fixes 2012-11-04 11:00:36 -07:00
usb_hub.c usb: lowlevel interface change to support multiple controllers 2012-10-15 11:54:00 -07:00
usb_kbd.c USB: add arrow key support to usb_kbd 2012-11-20 00:16:06 +01:00
usb_storage.c common/misc: sparse fixes 2012-11-04 11:00:35 -07:00
usb.c usb: use linux/usb/ch9.h instead of usbdescriptors.h 2012-11-20 00:16:06 +01:00
xyzModem.c common/misc: sparse fixes 2012-11-04 11:00:35 -07:00