From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 05 Apr 2024 17:38:29 +0200 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1rsle9-00DJKN-2I for lore@lore.pengutronix.de; Fri, 05 Apr 2024 17:38:29 +0200 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1rsle9-0003x1-GY; Fri, 05 Apr 2024 17:38:29 +0200 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rsldp-0003ws-OF; Fri, 05 Apr 2024 17:38:09 +0200 Received: from [2a0a:edc0:2:b01:1d::c5] (helo=pty.whiteo.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rsldp-00AaKH-74; Fri, 05 Apr 2024 17:38:09 +0200 Received: from mol by pty.whiteo.stw.pengutronix.de with local (Exim 4.96) (envelope-from ) id 1rsldp-00FisS-0O; Fri, 05 Apr 2024 17:38:09 +0200 Date: Fri, 5 Apr 2024 17:38:09 +0200 From: Michael Olbrich To: Christian Melki Message-ID: Mail-Followup-To: Christian Melki , ptxdist@pengutronix.de References: <20240402205407.144018-1-christian.melki@t2data.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240402205407.144018-1-christian.melki@t2data.com> X-Sent-From: Pengutronix Hildesheim X-URL: http://www.pengutronix.de/ X-Accept-Language: de,en X-Accept-Content-Type: text/plain Subject: Re: [ptxdist] [PATCH 1/2] mtd-utils: Version bump. 2.1.6 -> 2.2.0 X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: ptxdist@pengutronix.de Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false On Tue, Apr 02, 2024 at 10:54:06PM +0200, Christian Melki wrote: > Not overly exciting. > https://lists.infradead.org/pipermail/linux-mtd/2024-March/104058.html > > * Fix options that changed from endis to wwo. > > * Forward patchset, applies cleanly. You forgot to remove the patches for the old version. Michael > > Signed-off-by: Christian Melki > --- > ...rkbad-new-util-to-mark-blocks-as-bad.patch | 158 ++++++++++++++++++ > patches/mtd-utils-2.2.0/autogen.sh | 1 + > patches/mtd-utils-2.2.0/series | 4 + > rules/mtd-utils.make | 8 +- > 4 files changed, 167 insertions(+), 4 deletions(-) > create mode 100644 patches/mtd-utils-2.2.0/0001-nandmarkbad-new-util-to-mark-blocks-as-bad.patch > create mode 120000 patches/mtd-utils-2.2.0/autogen.sh > create mode 100644 patches/mtd-utils-2.2.0/series > > diff --git a/patches/mtd-utils-2.2.0/0001-nandmarkbad-new-util-to-mark-blocks-as-bad.patch b/patches/mtd-utils-2.2.0/0001-nandmarkbad-new-util-to-mark-blocks-as-bad.patch > new file mode 100644 > index 000000000..e6ff202a7 > --- /dev/null > +++ b/patches/mtd-utils-2.2.0/0001-nandmarkbad-new-util-to-mark-blocks-as-bad.patch > @@ -0,0 +1,158 @@ > +From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= > +Date: Wed, 30 Aug 2017 13:31:46 +0200 > +Subject: [PATCH] nandmarkbad: new util to mark blocks as bad > + > +--- > + nand-utils/Makemodule.am | 5 +- > + nand-utils/nandmarkbad.c | 119 +++++++++++++++++++++++++++++++++++++++++++++++ > + 2 files changed, 123 insertions(+), 1 deletion(-) > + create mode 100644 nand-utils/nandmarkbad.c > + > +diff --git a/nand-utils/Makemodule.am b/nand-utils/Makemodule.am > +index cee677783e7a..7fd1de5aa9ae 100644 > +--- a/nand-utils/Makemodule.am > ++++ b/nand-utils/Makemodule.am > +@@ -7,6 +7,9 @@ nandwrite_LDADD = libmtd.a > + nandtest_SOURCES = nand-utils/nandtest.c > + nandtest_LDADD = libmtd.a > + > ++nandmarkbad_SOURCES = nand-utils/nandmarkbad.c > ++nandmarkbad_LDADD = libmtd.a > ++ > + nftldump_SOURCES = nand-utils/nftldump.c include/mtd_swab.h > + nftldump_SOURCES += include/mtd/nftl-user.h include/mtd/ftl-user.h > + nftldump_LDADD = libmtd.a > +@@ -23,7 +26,7 @@ NAND_SH = \ > + > + EXTRA_DIST += $(NAND_SH) > + > +-sbin_PROGRAMS += nanddump nandwrite nandtest nftldump nftl_format nandflipbits > ++sbin_PROGRAMS += nanddump nandwrite nandtest nandmarkbad nftldump nftl_format nandflipbits > + > + if BUILD_TESTS > + test_SCRIPTS += $(NAND_SH) > +diff --git a/nand-utils/nandmarkbad.c b/nand-utils/nandmarkbad.c > +new file mode 100644 > +index 000000000000..cf05698c3609 > +--- /dev/null > ++++ b/nand-utils/nandmarkbad.c > +@@ -0,0 +1,119 @@ > ++#define PROGRAM_NAME "nandmarkbad" > ++ > ++#include > ++#include > ++#include > ++#include > ++ > ++#include "common.h" > ++#include > ++ > ++static void usage(int status) > ++{ > ++ fprintf(status ? stderr : stdout, > ++ "usage: %s [OPTIONS] \n\n" > ++ " -b, --markbad=blockno Mark block bad\n" > ++ " -h, --help Display this help and exit\n" > ++ " -V, --version Output version information and exit\n" > ++ " -y, --i-know-what-i-do really do mark blocks as bad\n", > ++ PROGRAM_NAME); > ++ exit(status); > ++} > ++ > ++/* > ++ * Main program > ++ */ > ++int main(int argc, char **argv) > ++{ > ++ loff_t mark_bad[32]; > ++ unsigned cnt_bad = 0; > ++ struct mtd_dev_info mtd; > ++ libmtd_t mtd_desc; > ++ int fd; > ++ int error = 0; > ++ int ret; > ++ unsigned int i; > ++ int iknowwhatido = 0; > ++ > ++ for (;;) { > ++ static const char short_options[] = "b:hVy"; > ++ static const struct option long_options[] = { > ++ { "help", no_argument, 0, 'h' }, > ++ { "markbad", required_argument, 0, 'b' }, > ++ { "version", no_argument, 0, 'V'}, > ++ { "i-know-what-i-do", no_argument, 0, 'y' }, > ++ {0, 0, 0, 0}, > ++ }; > ++ int option_index = 0; > ++ int c = getopt_long(argc, argv, short_options, long_options, > ++ &option_index); > ++ if (c == EOF) > ++ break; > ++ > ++ switch (c) { > ++ case '?': > ++ usage(EXIT_FAILURE); > ++ break; > ++ > ++ case 'b': > ++ if (cnt_bad < ARRAY_SIZE(mark_bad)) { > ++ mark_bad[cnt_bad] = > ++ simple_strtoll(optarg, &error); > ++ ++cnt_bad; > ++ } else { > ++ errmsg_die("Can't handle so many bad blocks\n"); > ++ } > ++ > ++ break; > ++ > ++ case 'h': > ++ usage(EXIT_SUCCESS); > ++ break; > ++ > ++ case 'V': > ++ common_print_version(); > ++ return EXIT_SUCCESS; > ++ > ++ case 'y': > ++ iknowwhatido = 1; > ++ break; > ++ } > ++ } > ++ > ++ argc -= optind; > ++ argv += optind; > ++ > ++ if (error) > ++ usage(EXIT_FAILURE); > ++ > ++ if (argc != 1) > ++ errmsg_die("You must specify a device to operate on\n"); > ++ > ++ if (!cnt_bad) > ++ errmsg_die("You must specify at least one block to mark bad\n"); > ++ > ++ if (!iknowwhatido) > ++ errmsg_die(PROGRAM_NAME " does things that are hard to undo.\n" > ++ "\tPlease convince yourself you understand the risks,\n" > ++ "\tthen add --i-know-what-i-do to the options.\n"); > ++ > ++ fd = open(argv[0], O_RDWR); > ++ if (fd < 0) > ++ sys_errmsg_die("Failed to open mtd device\n"); > ++ > ++ mtd_desc = libmtd_open(); > ++ if (!mtd_desc) > ++ errmsg_die("Can't initialize libmtd"); > ++ > ++ if (mtd_get_dev_info(mtd_desc, argv[0], &mtd) < 0) > ++ errmsg_die("mtd_get_dev_info failed"); > ++ > ++ for (i = 0; i < cnt_bad; ++i) { > ++ ret = mtd_mark_bad(&mtd, fd, mark_bad[i]); > ++ if (ret) > ++ sys_errmsg_die("%s: MTD Mark bad block failure", > ++ argv[0]); > ++ } > ++ > ++ return EXIT_SUCCESS; > ++} > diff --git a/patches/mtd-utils-2.2.0/autogen.sh b/patches/mtd-utils-2.2.0/autogen.sh > new file mode 120000 > index 000000000..9f8a4cb7d > --- /dev/null > +++ b/patches/mtd-utils-2.2.0/autogen.sh > @@ -0,0 +1 @@ > +../autogen.sh > \ No newline at end of file > diff --git a/patches/mtd-utils-2.2.0/series b/patches/mtd-utils-2.2.0/series > new file mode 100644 > index 000000000..92dc1b94f > --- /dev/null > +++ b/patches/mtd-utils-2.2.0/series > @@ -0,0 +1,4 @@ > +# generated by git-ptx-patches > +#tag:base --start-number 1 > +0001-nandmarkbad-new-util-to-mark-blocks-as-bad.patch > +# 407ded52b82ffa3ff91d50cf6b2388e0 - git-ptx-patches magic > diff --git a/rules/mtd-utils.make b/rules/mtd-utils.make > index bef25b9ab..9722c20a5 100644 > --- a/rules/mtd-utils.make > +++ b/rules/mtd-utils.make > @@ -15,8 +15,8 @@ PACKAGES-$(PTXCONF_MTD_UTILS) += mtd-utils > # > # Paths and names > # > -MTD_UTILS_VERSION := 2.1.6 > -MTD_UTILS_MD5 := 2851d4b13e5c1cf9415f76102a34d623 > +MTD_UTILS_VERSION := 2.2.0 > +MTD_UTILS_MD5 := 35d71328107c54068c8df5a3b980c06e > MTD_UTILS := mtd-utils-$(MTD_UTILS_VERSION) > MTD_UTILS_SUFFIX := tar.bz2 > MTD_UTILS_URL := https://infraroot.at/pub/mtd/$(MTD_UTILS).$(MTD_UTILS_SUFFIX) > @@ -35,9 +35,9 @@ MTD_UTILS_CONF_OPT := \ > $(CROSS_AUTOCONF_USR) \ > --disable-unit-tests \ > $(GLOBAL_LARGE_FILE_OPTION) \ > - --$(call ptx/endis,PTXCONF_MTD_UTILS_TESTS)-tests \ > + --$(call ptx/wwo,PTXCONF_MTD_UTILS_TESTS)-tests \ > --$(call ptx/endis,PTXCONF_MTD_UTILS_UBIHEALTHD)-ubihealthd \ > - --$(call ptx/endis, PTXCONF_MTD_UTILS_LSMTD)-lsmtd \ > + --$(call ptx/wwo, PTXCONF_MTD_UTILS_LSMTD)-lsmtd \ > --$(call ptx/wwo, PTXCONF_MTD_UTILS_JFFS)-jffs \ > --$(call ptx/wwo, PTXCONF_MTD_UTILS_UBIFS)-ubifs \ > --without-xattr \ > -- > 2.34.1 > > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |