resync ubi subsystem with linux: commit 455c6fdbd219161bd09b1165f11699d6d73de11c Author: Linus Torvalds <torva...@linux-foundation.org> Date: Sun Mar 30 20:40:15 2014 -0700
Linux 3.14 A nice side effect of this, is we introduce UBI Fastmap support to U-Boot. To produce this patch I did two steps: - simple copy following files from linux to u-boot drivers/mtd/mtdconcat.c drivers/mtd/mtdcore.c drivers/mtd/mtdpart.c drivers/mtd/ubi/attach.c drivers/mtd/ubi/build.c drivers/mtd/ubi/debug.c drivers/mtd/ubi/debug.h drivers/mtd/ubi/eba.c drivers/mtd/ubi/fastmap.c drivers/mtd/ubi/io.c drivers/mtd/ubi/kapi.c drivers/mtd/ubi/misc.c drivers/mtd/ubi/ubi-media.h drivers/mtd/ubi/ubi.h drivers/mtd/ubi/upd.c drivers/mtd/ubi/vmt.c drivers/mtd/ubi/vtbl.c drivers/mtd/ubi/wl.c fs/ubifs/budget.c fs/ubifs/debug.c fs/ubifs/debug.h fs/ubifs/io.c fs/ubifs/key.h fs/ubifs/log.c fs/ubifs/lprops.c fs/ubifs/lpt.c fs/ubifs/lpt_commit.c fs/ubifs/master.c fs/ubifs/misc.h fs/ubifs/orphan.c fs/ubifs/recovery.c fs/ubifs/replay.c fs/ubifs/sb.c fs/ubifs/scan.c fs/ubifs/super.c fs/ubifs/tnc.c fs/ubifs/tnc_misc.c fs/ubifs/ubifs-media.h fs/ubifs/ubifs.h include/linux/mtd/bbm.h include/linux/mtd/flashchip.h include/linux/mtd/mtd.h include/linux/mtd/nand.h include/linux/mtd/partitions.h include/linux/mtd/ubi.h include/uapi/mtd/mtd-abi.h -> include/linux/mtd include/uapi/mtd/ubi-user.h -> include/linux/mtd - make the code again compile clean and working -> commit this adapt the Linux code to compile and work with U-Boot. Then squash this two patches to this patch, to not break bisectability. To make further sync with linux easier, the above two patches can be found in: http://git.denx.de/?p=u-boot/u-boot-testing.git;a=shortlog;h=refs/heads/update-mtd%2Bubi-linux-v3.14 Please do not use this branch for testing this patchserie! summary of changes for U-Boot adaptions: - replace UBI_LINUX in current UBI code from U-Boot with __UBOOT__ as this define is used in other places in U-Boot where code from other projects is used. - UBI Fastmap is now availiable in U-Boot activate it with CONFIG_MTD_UBI_FASTMAP - onenand changes only compile tested. - Following Code in drivers/mtd/nand/nand_base.c nand_do_write_ops() adapted for U-Boot: +#ifndef __UBOOT__ /* Reject writes, which are not page aligned */ if (NOTALIGNED(to) || NOTALIGNED(ops->len)) { +else + /* Reject writes, which are not page aligned */ + if (NOTALIGNED(to)) { +endif as the original linux code leads in not working use of the env var "filesize". For example a "nand write 80000000 80000 ${filesize}" would not work with it ... - add CONFIG_MTD_NAND_VERIFY_WRITE from U-Boot code - Documented the config defines in README - kmalloc now uses memalign for allocating memory Tested it on am33xx, imx6 and mpc83xx boards. MAKEALL for arm and powerpc and mips compiles clean. Tested UBI fastmap on a board with 512 MiB nand flash. Attach time from old U-Boot was 2 seconds, reduced with UBI fastmap to 0.2 seconds. Please test this patch! - changes for v2: - add lib/linux_compat.c as Joerg Krause detected - changes for v3: rebase with current U-Boot commit 61e76f53708cf082ef9061a140b57df3513b8ba1 - changes for v4: - rebase with commit d8a97f934c64a7ba6f11da5e4cc7f3be57fcb82d - remove compile error for mips, as Tom Rini suggested check "MAKEALL mips" compiles clean - fix blackfin and microblaze compile add fix for blackfin from Trom Rini also add his Signed-off-by - changes for v5: - extract linux/compat.h changes Cc: Marek Vasut <ma...@denx.de> Cc: Sergey Lapin <sla...@ossfans.org> Cc: Scott Wood <scottw...@freescale.com> Cc: Wolfgang Denk <w...@denx.de> Cc: Joerg Krause <jkra...@posteo.de> Heiko Schocher (5): lib, rbtree: resync with Linux-3.14 lib, list_sort: add list_sort from linux 3.14 linux include: add ERR_CAST lib, linux: move linux specific defines to linux/compat.h mtd, ubi, ubifs: resync with Linux-3.14 README | 61 + board/prodrive/alpr/nand.c | 4 + board/socrates/nand.c | 6 + board/tqc/tqm8272/nand.c | 4 + common/cmd_ubi.c | 28 +- common/cmd_ubifs.c | 2 +- drivers/mtd/mtdconcat.c | 230 ++- drivers/mtd/mtdcore.c | 1112 ++++++++++++- drivers/mtd/mtdcore.h | 23 + drivers/mtd/mtdpart.c | 515 +++++- drivers/mtd/nand/fsl_elbc_nand.c | 4 + drivers/mtd/nand/fsl_ifc_nand.c | 4 + drivers/mtd/nand/fsl_upm.c | 4 + drivers/mtd/nand/mpc5121_nfc.c | 4 + drivers/mtd/nand/mxc_nand.c | 8 + drivers/mtd/nand/nand_base.c | 1893 +++++++++++++++------ drivers/mtd/nand/nand_bbt.c | 296 ++-- drivers/mtd/nand/nand_ids.c | 266 +-- drivers/mtd/nand/nand_util.c | 3 + drivers/mtd/nand/ndfc.c | 4 + drivers/mtd/onenand/onenand_base.c | 1 + drivers/mtd/onenand/onenand_bbt.c | 1 - drivers/mtd/onenand/samsung.c | 10 +- drivers/mtd/ubi/Makefile | 3 +- drivers/mtd/ubi/attach.c | 1754 ++++++++++++++++++++ drivers/mtd/ubi/build.c | 812 ++++++--- drivers/mtd/ubi/crc32.c | 13 +- drivers/mtd/ubi/crc32table.h | 2 +- drivers/mtd/ubi/debug.c | 482 ++++-- drivers/mtd/ubi/debug.h | 175 +- drivers/mtd/ubi/eba.c | 474 ++++-- drivers/mtd/ubi/fastmap.c | 1584 ++++++++++++++++++ drivers/mtd/ubi/io.c | 788 +++++---- drivers/mtd/ubi/kapi.c | 276 ++- drivers/mtd/ubi/misc.c | 58 +- drivers/mtd/ubi/scan.c | 1348 --------------- drivers/mtd/ubi/scan.h | 153 -- drivers/mtd/ubi/ubi-media.h | 205 ++- drivers/mtd/ubi/ubi.h | 610 +++++-- drivers/mtd/ubi/upd.c | 104 +- drivers/mtd/ubi/vmt.c | 283 ++-- drivers/mtd/ubi/vtbl.c | 359 ++-- drivers/mtd/ubi/wl.c | 1590 +++++++++++------- drivers/usb/gadget/ether.c | 5 - drivers/usb/gadget/storage_common.c | 5 - drivers/usb/musb-new/linux-compat.h | 58 - drivers/video/exynos_dp.c | 1 + drivers/video/exynos_mipi_dsi.c | 1 + fs/ubifs/budget.c | 662 +++++++- fs/ubifs/debug.c | 3129 ++++++++++++++++++++++++++++++++++- fs/ubifs/debug.h | 578 ++++--- fs/ubifs/io.c | 897 +++++++++- fs/ubifs/key.h | 68 +- fs/ubifs/log.c | 663 +++++++- fs/ubifs/lprops.c | 538 +++++- fs/ubifs/lpt.c | 1242 +++++++++++++- fs/ubifs/lpt_commit.c | 1903 ++++++++++++++++++++- fs/ubifs/master.c | 102 +- fs/ubifs/misc.h | 159 +- fs/ubifs/orphan.c | 671 +++++++- fs/ubifs/recovery.c | 738 ++++++--- fs/ubifs/replay.c | 573 ++++--- fs/ubifs/sb.c | 547 +++++- fs/ubifs/scan.c | 102 +- fs/ubifs/super.c | 2173 ++++++++++++++++++++---- fs/ubifs/tnc.c | 742 ++++++++- fs/ubifs/tnc_misc.c | 124 +- fs/ubifs/ubifs-media.h | 62 +- fs/ubifs/ubifs.c | 115 +- fs/ubifs/ubifs.h | 708 +++++--- fs/yaffs2/ydirectenv.h | 2 - include/linux/compat.h | 330 +++- include/linux/err.h | 17 +- include/linux/list_sort.h | 11 + include/linux/mtd/bbm.h | 73 +- include/linux/mtd/concat.h | 4 + include/linux/mtd/flashchip.h | 105 ++ include/linux/mtd/mtd.h | 272 ++- include/linux/mtd/nand.h | 351 +++- include/linux/mtd/partitions.h | 60 +- include/linux/mtd/ubi.h | 120 +- include/linux/rbtree.h | 147 +- include/linux/rbtree_augmented.h | 220 +++ include/linux/usb/gadget.h | 6 +- include/mtd/mtd-abi.h | 183 +- include/mtd/ubi-user.h | 305 +++- include/ubi_uboot.h | 165 +- include/usb/lin_gadget_compat.h | 16 - lib/Makefile | 2 + lib/linux_compat.c | 47 + lib/list_sort.c | 298 ++++ lib/rbtree.c | 684 +++++--- 92 files changed, 28069 insertions(+), 7471 deletions(-) create mode 100644 drivers/mtd/mtdcore.h create mode 100644 drivers/mtd/ubi/attach.c create mode 100644 drivers/mtd/ubi/fastmap.c delete mode 100644 drivers/mtd/ubi/scan.c delete mode 100644 drivers/mtd/ubi/scan.h create mode 100644 include/linux/list_sort.h create mode 100644 include/linux/mtd/flashchip.h create mode 100644 include/linux/rbtree_augmented.h create mode 100644 lib/linux_compat.c create mode 100644 lib/list_sort.c -- 1.8.3.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot