[U-Boot] [PATCH v3 0/3] spi, sf: add mtdparts feature to spi and sf commands
Heiko Schocher
hs at denx.de
Fri Sep 5 07:38:53 CEST 2014
This patchserie add the popssibility to define mtd partitions on
spi nor flash, and use this settings with the sf commands.
steps:
- add MTD layer driver for spi, original patch from:
http://git.denx.de/?p=u-boot/u-boot-mips.git;a=commitdiff;h=bb246819cdc90493dd7089eaa51b9e639765cced
and addapted it to current mainline.
- move common functions to get offset and size from
cmdline nand command to extract offset and size from
a mtd partition to common place "drivers/mtd/mtd_uboot.c"
maybe another place is better?
- add to the sf command the possibility to use offset and size from
the settings in mtdparts
With this patchset, the sf command looks now:
=> sf
sf - SPI flash sub-system
Usage:
sf probe [[bus:]cs] [hz] [mode] - init flash device on given SPI bus
and chip select
sf read addr offset|partition len - read `len' bytes starting at
`offset' to memory at `addr'
sf write addr offset|partition len - write `len' bytes from memory
at `addr' to flash at `offset'
sf erase offset|partition [+]len - erase `len' bytes from `offset'
`+len' round up `len' to block size
sf update addr offset|partition len - erase and write `len' bytes from memory
at `addr' to flash at `offset'
=>
for example "env" is defined in mtdparts:
=> sf read 13000000 env
device 0 offset 0xd0000, size 0x10000
SF: 65536 bytes @ 0xd0000 Read: OK
=>
There are the followings checkpatch warnings:
CHECK: Alignment should match open parenthesis
#153: FILE: common/cmd_nand.c:217:
+ if (arg_off(argv[2], &idx, &addr, &maxsize, &maxsize,
+ MTD_DEV_TYPE_NAND, nand_info[idx].size)) {
CHECK: Alignment should match open parenthesis
#179: FILE: common/cmd_nand.c:557:
+ if (arg_off(argv[3], &dev, &off, &size, &maxsize,
+ MTD_DEV_TYPE_NAND, nand_info[dev].size))
CHECK: Alignment should match open parenthesis
#193: FILE: common/cmd_nand.c:576:
+ if (arg_off_size(argc - 3, argv + 3, &dev, &off, &size,
+ &maxsize, MTD_DEV_TYPE_NAND,
total: 0 errors, 0 warnings, 3 checks, 361 lines checked
NOTE: Ignored message types: COMPLEX_MACRO CONSIDER_KSTRTO MINMAX MULTISTATEMENT_MACRO_USE_DO_WHILE NETWORKING_BLOCK_COMMENT_STYLE USLEEP_RANGE
20140714_ml_mtdparts/0002-mtd-nand-move-common-functions-from-cmd_nand.c-to-co.patch has style problems, please review.
I see not, why this warning pops up ...
- changes for v2:
- mtd-spi-add-MTD-layer-driver.patch
- add comment from Daniel Schwierzeck:
fix compile error from original patch with
"static inline" rather than "static __maybe_unused"
- changes for v3:
- rebase with d6c1ffc7d23f4fe4ae8c91101861055b8e1501b6
- add comments from scott wood:
- align MTD_DEV_TYPE_NAND correct
- remove unnecessary inline
- rework "jffs2 header" problem later
Cc: Scott Wood <scottwood at freescale.com>
Cc: Tom Rini <trini at ti.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck at gmail.com>
Cc: Jagannadha Sutradharudu Teki <jagannadh.teki at gmail.com>
Daniel Schwierzeck (1):
mtd, spi: add MTD layer driver
Heiko Schocher (2):
mtd, nand: move common functions from cmd_nand.c to common place
spi, sf: use offset and size in sf cmd from mtdpartition
README | 3 +
common/cmd_nand.c | 140 ++++++++----------------------------------
common/cmd_onenand.c | 19 ++----
common/cmd_sf.c | 59 +++++++++---------
drivers/mtd/Makefile | 4 +-
drivers/mtd/mtd_uboot.c | 114 ++++++++++++++++++++++++++++++++++
drivers/mtd/spi/Makefile | 1 +
drivers/mtd/spi/sf_internal.h | 13 ++++
drivers/mtd/spi/sf_mtd.c | 104 +++++++++++++++++++++++++++++++
drivers/mtd/spi/sf_probe.c | 5 ++
include/linux/mtd/mtd.h | 7 +++
11 files changed, 310 insertions(+), 159 deletions(-)
create mode 100644 drivers/mtd/mtd_uboot.c
create mode 100644 drivers/mtd/spi/sf_mtd.c
--
1.8.3.1
More information about the U-Boot
mailing list