Support For Creating / Removing UBI Blocks
Metin Kaya
kayameti at gmail.com
Tue Aug 2 18:42:51 UTC 2016
So, what is the next? Who will handle applying the patch to the busybox?
Thanks for your support.
On Aug 2, 2016 9:18 PM, "Baruch Siach" <baruch at tkos.co.il> wrote:
> Hi Metin Kaya,
>
> On Tue, Aug 02, 2016 at 10:38:48AM +0300, Metin Kaya wrote:
> > Please see the attached patch. It handles your comments.
>
> The patch looks good to me now.
>
> Thanks for your persistence.
>
> baruch
>
> > --- ubi_tools.c.orig 2016-05-26 20:42:44.000000000 +0300
> > +++ ubi_tools.c 2016-08-02 10:32:11.624956060 +0300
> > @@ -17,6 +17,13 @@
> > //config: help
> > //config: Detach MTD device from an UBI device.
> > //config:
> > +//config:config UBIBLOCK
> > +//config: bool "ubiblock"
> > +//config: default y
> > +//config: select PLATFORM_LINUX
> > +//config: help
> > +//config: Create or remove a block device on top of an UBI volume.
> > +//config:
> > //config:config UBIMKVOL
> > //config: bool "ubimkvol"
> > //config: default y
> > @@ -47,6 +54,7 @@
> >
> > //applet:IF_UBIATTACH(APPLET_ODDNAME(ubiattach, ubi_tools,
> BB_DIR_USR_SBIN, BB_SUID_DROP, ubiattach))
> > //applet:IF_UBIDETACH(APPLET_ODDNAME(ubidetach, ubi_tools,
> BB_DIR_USR_SBIN, BB_SUID_DROP, ubidetach))
> > +//applet:IF_UBIBLOCK(APPLET_ODDNAME(ubiblock, ubi_tools,
> BB_DIR_USR_SBIN, BB_SUID_DROP, ubiblock))
> > //applet:IF_UBIMKVOL(APPLET_ODDNAME(ubimkvol, ubi_tools,
> BB_DIR_USR_SBIN, BB_SUID_DROP, ubimkvol))
> > //applet:IF_UBIRMVOL(APPLET_ODDNAME(ubirmvol, ubi_tools,
> BB_DIR_USR_SBIN, BB_SUID_DROP, ubirmvol))
> > //applet:IF_UBIRSVOL(APPLET_ODDNAME(ubirsvol, ubi_tools,
> BB_DIR_USR_SBIN, BB_SUID_DROP, ubirsvol))
> > @@ -54,6 +62,7 @@
> >
> > //kbuild:lib-$(CONFIG_UBIATTACH) += ubi_tools.o
> > //kbuild:lib-$(CONFIG_UBIDETACH) += ubi_tools.o
> > +//kbuild:lib-$(CONFIG_UBIBLOCK) += ubi_tools.o
> > //kbuild:lib-$(CONFIG_UBIMKVOL) += ubi_tools.o
> > //kbuild:lib-$(CONFIG_UBIRMVOL) += ubi_tools.o
> > //kbuild:lib-$(CONFIG_UBIRSVOL) += ubi_tools.o
> > @@ -68,6 +77,7 @@
> >
> > #define do_attach (ENABLE_UBIATTACH && applet_name[3] == 'a')
> > #define do_detach (ENABLE_UBIDETACH && applet_name[3] == 'd')
> > +#define do_block (ENABLE_UBIBLOCK && applet_name[3] == 'b')
> > #define do_mkvol (ENABLE_UBIMKVOL && applet_name[3] == 'm')
> > #define do_rmvol (ENABLE_UBIRMVOL && applet_name[4] == 'm')
> > #define do_rsvol (ENABLE_UBIRSVOL && applet_name[4] == 's')
> > @@ -133,6 +143,8 @@
> > #define OPTION_s (1 << 4)
> > #define OPTION_a (1 << 5)
> > #define OPTION_t (1 << 6)
> > +#define OPTION_c (1 << 7)
> > +#define OPTION_r (1 << 8)
> > if (do_mkvol) {
> > opt_complementary = "-1:d+:n+:a+:O+";
> > opts = getopt32(argv, "md:n:N:s:a:t:O:",
> > @@ -147,7 +159,7 @@
> > opts *= OPTION_s;
> > } else {
> > opt_complementary = "-1:m+:d+:n+:a+";
> > - opts = getopt32(argv, "m:d:n:N:s:a:t:",
> > + opts = getopt32(argv, "m:d:n:N:s:a:t:cr",
> > &mtd_num, &dev_num, &vol_id,
> > &vol_name, &size_bytes_str, &alignment,
> &type
> > );
> > @@ -194,6 +206,19 @@
> > xioctl(fd, UBI_IOCDET, &dev_num);
> > } else
> >
> > +//usage:#define ubiblock_trivial_usage
> > +//usage: "-c | -r UBI_CTRL_DEV"
> > +//usage:#define ubiblock_full_usage "\n\n"
> > +//usage: "Create or remove an MTD block\n"
> > +//usage: "\n -c UBI_CTRL_DEV create an MTD block"
> > +//usage: "\n -r UBI_CTRL_DEV remove an MTD block"
> > + if (do_block) {
> > + if (opts & OPTION_c)
> > + xioctl(fd, UBI_IOCVOLCRBLK, NULL);
> > + else if (opts & OPTION_r)
> > + xioctl(fd, UBI_IOCVOLRMBLK, NULL);
> > + } else
> > +
> > //usage:#define ubimkvol_trivial_usage
> > //usage: "-N NAME [-s SIZE | -m] UBI_DEVICE"
> > //usage:#define ubimkvol_full_usage "\n\n"
>
>
> --
> http://baruch.siach.name/blog/ ~. .~ Tk Open
> Systems
> =}------------------------------------------------ooO--U--Ooo------------{=
> - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/busybox/attachments/20160802/0e2e9cee/attachment.html>
More information about the busybox
mailing list