[U-Boot] [PATCH v6 0/9] Improve DFU support, enable for am335x_evm
Tom Rini
trini at ti.com
Thu Mar 14 16:32:46 CET 2013
This series does a few things. I've updated Pantelis Antoniou's patch
that allows for transfering of files larger than 4MiB to still allow for
filesystem writes to work. I also document the existing DFU CONFIG
options, and then the new options this series adds. Then we update
nand_(read|write)_skip_bad so that we can add DFU support for NAND
(started by Pantelis). Finally, we enable all of this for am335x_evm.
This series has been compile-tested on all ARM and PowerPC targets and
run-time tested on am335x_evm for NAND and MMC and eMMC.
This series depends on u-boot-usb/master but with a09f955 removed (as we
replace that patch here).
--
Tom
Changes in v6:
- Correct the check for attempting to write out of bounds on RAW MMC.
- Pass correct buffer when reading a file from MMC.
- Drop 1 line helper functions that were called only twice in dfu_mmc.c
- Remove offset from MMC file ops as it was unused.
- Fix checkpatch new checkpatch warnings
- Update dfu_nand.c based on Scott's feedback
Changes in v5:
- New patch to document existing DFU CONFIG options
- Rework Pantelis' "dfu: Support larger than memory transfers" to not
break filesystem writing
- New patch to re-align defines in <dfu.h>
- Document CONFIG_DFU_NAND in README
- Add RAW MMC examples to include/configs/am335x_evm.h
Changes in v4:
- Further reword nand_util.c comments, from Scott
- In nand_write_skip_bad make sure *actual is 0 for YAFFS2 errors too,
reminded by Scott.
- In cmd_nand.c don't drop the size is less than maxsize check in
arg_off_size as other nand functions need this still (Scott).
- Add patch to fix CONFIG_CMD_NAND_YAFFS
Changes in v3:
- Reworked skip_check_len changes to just add accounting for *used to
the logic.
- Allow for actual to be NULL in nand_(read|write)_skip_bad, only DFU
calls this with a non-NULL parameter. Make sure the comments for both
functions explain the parameters and their behavior.
- Other style changes requested by Scott.
- As nand_(write|read)_skip_bad passes back just a used length now.
- Rework logic in nand_block_op for nand_(read|write)_skip_bad returning
just a size for actual used length.
- Remove unused externs from drivers/dfu/dfu_nand.c
- Fix checkpatch.pl warnings in include/configs/am335x_evm.h
Changes in v2:
- NAND skip_check_len changes reworked to allow
nand_(read|write)_skip_bad to return this information to the caller.
- nand_block_op calls nand_(read|write)_skip_bad directly.
- Bugfix in dfu_nand to make sure we set dfu->skip_bad to 0 on each
iteration.
- Add CONFIG_CMD_MTDPARTS and relevant information to am335x_evm
- Enable DFU for NAND and MMC, set dfu_alt_info_(nand|mmc) as examples
for both in am335x_evm.h
- Increase CONFIG_SYS_MAXARGS due to hush parsing bugs that would
otherwise prevent 'setenv dfu_alt_info ${dfu_alt_info_nand}' on
am335x_evm
Pantelis Antoniou (4):
dfu: Support larger than memory transfers.
dfu: NAND specific routines for DFU operation
am335x_evm: Define CONFIG_SYS_CACHELINE_SIZE
am335x_evm: Enable DFU for NAND and MMC, provide example alt_infos
Tom Rini (5):
README: Document current DFU CONFIG options
dfu: Change indentation of defines in <dfu.h>
nand: Extend nand_(read|write)_skip_bad with *actual and limit
parameters
cmd_nand.c: Fix CONFIG_CMD_NAND_YAFFS
am335x_evm: Add CONFIG_CMD_MTDPARTS and relevant defaults
README | 23 ++++
common/cmd_nand.c | 55 ++++++----
common/env_nand.c | 3 +-
drivers/dfu/Makefile | 1 +
drivers/dfu/dfu.c | 249 +++++++++++++++++++++++++++++++++---------
drivers/dfu/dfu_mmc.c | 108 ++++++++++++------
drivers/dfu/dfu_nand.c | 187 +++++++++++++++++++++++++++++++
drivers/mtd/nand/nand_util.c | 68 ++++++++++--
include/configs/am335x_evm.h | 52 ++++++++-
include/dfu.h | 53 ++++++++-
include/nand.h | 4 +-
11 files changed, 674 insertions(+), 129 deletions(-)
create mode 100644 drivers/dfu/dfu_nand.c
--
1.7.9.5
More information about the U-Boot
mailing list