u-boot-brain/drivers
Afzal Mohammed a9479f0431 dfu: ram support
DFU spec mentions it as a method to upgrade firmware (software stored
in writable non-volatile memory). It also says other potential uses of
DFU is beyond scope of the spec.

Here such a beyond the scope use is being attempted - directly pumping
binary images from host via USB to RAM. This facility is a developer
centric one in that it gives advantage over upgrading non-volatile
memory for testing new images every time during development and/or
testing.

Directly putting image onto RAM would speed up upgrade process. This and
convenience was the initial thoughts that led to doing this, speed
improvement over MMC was only 1 second though - 6 sec on RAM as opposed
to 7 sec on MMC in beagle bone, perhaps enabling cache and/or optimizing
DFU framework to avoid multiple copy for ram (if worth) may help, and
on other platforms and other boot media like NAND maybe improvement
would be higher.

And for a platform that doesn't yet have proper DFU suppport for
non-volatile media's, DFU to RAM can be used.

Another minor advantage would be to increase life of mmc/nand as it
would be less used during development/testing.

usage: <image name> ram <start address> <size>
eg. kernel ram 0x81000000 0x1000000

Downloading images to RAM using DFU is not something new, this is
acheived in openmoko also.

DFU on RAM can be used for extracting RAM contents to host using dfu
upload. Perhaps this can be extended to io for squeezing out register
dump through usb, if it is worth.

Signed-off-by: Afzal Mohammed <afzal.mohd.ma@gmail.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Gerhard Sittig <gsi@denx.de>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Lukasz Majewski <l.majewski@samsung.com>
Acked-by: Heiko Schocher <hs@denx.de>
2013-09-24 17:51:35 +02:00
..
bios_emulator biosemu: include <asm/io.h> header 2013-04-02 16:23:35 -04:00
block Fix some obvious typos across multiple subsystems. 2013-09-20 10:29:48 -04:00
bootcount Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
crypto Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
dfu dfu: ram support 2013-09-24 17:51:35 +02:00
dma dma: apbh: Add special circular mode for LCD 2013-08-09 21:48:34 +02:00
fpga fpga: zynqpl: Clear loopback mode during device init 2013-08-12 08:52:01 +02:00
gpio Merge branch 'u-boot-atmel/master' into 'u-boot-arm/master' 2013-09-04 11:50:25 +02:00
hwmon Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
i2c fsl_i2c: add workaround for the erratum I2C A004447 2013-08-20 11:15:31 +02:00
input Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
misc Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mmc Fix wrong sdhci host control register read and write 2013-09-20 19:02:29 +03:00
mtd mtd: atmel_nand: pmecc: fix bug fail to correct bit error in 1024-bytes sector 2013-09-04 17:07:21 +02:00
net SPDX: fix IBM-pibs license identifier 2013-09-20 10:30:54 -04:00
pci powerpc/pcie: add PCIe version 3.x support 2013-08-09 12:41:41 -07:00
pcmcia Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
power Merge branch 'u-boot-samsung/master' into 'u-boot-arm/master' 2013-09-11 09:59:27 +02:00
qe Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
rtc Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
serial Merge branch 'u-boot-imx/master' into 'u-boot-arm/master' 2013-09-05 11:15:26 +02:00
sound Sound: MAX98095: Support I2S0 channel 2013-09-24 09:10:33 -04:00
spi spi: mxs_spi: Configure chipselect after block reset 2013-08-27 19:39:39 +05:30
tpm Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
twserial Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
usb USB: gadget: add atmel usba udc driver 2013-09-24 17:51:35 +02:00
video Merge branch 'u-boot-ti/master' into 'u-boot-arm/master' 2013-09-04 14:06:56 +02:00
watchdog arm, am335x: add watchdog support 2013-08-28 11:44:59 -04:00