[yocto] Multiple ubifs partition

Gabriele Zampieri gabbla.malist at gmail.com
Mon May 6 05:51:58 PDT 2019


Perfect, thank you!

Gabriele

Il giorno lun 6 mag 2019 alle ore 14:15 Ulrich Ölmann <
u.oelmann at pengutronix.de> ha scritto:

> Hi Gabriele,
>
> On Mon, May 06 2019 at 13:32 +0200, Gabriele Zampieri <
> gabbla.malist at gmail.com> wrote:
> > thank you very much for your explanation. The provided genimage.config
> > looks similar to mine, so I guess it is ok. I will try when I come back
> to
> > the office. The point I missed was that I need to call: bitbake
> > your-customized-ubi and not bitbake my-custom-image, right?
>
> correct - "my-custom-image" will indirectly become a dependency via the
> variable GENIMAGE_ROOTFS_IMAGE, see [1].
>
> Best regards
> Ulrich
>
>
> [1]
> https://github.com/pengutronix/meta-ptx/blob/master/classes/genimage.bbclass#L88
>
> > Thank you again,
> > Gabriele
> >
> >
> > Il giorno ven 3 mag 2019 alle ore 07:59 Ulrich Ölmann <
> > u.oelmann at pengutronix.de> ha scritto:
> >
> >> Hi Gabriele,
> >>
> >> On Thu, May 02 2019 at 13:25 +0200, Gabriele Zampieri <
> >> gabbla.malist at gmail.com> wrote:
> >> > ok, I guess I miss-understand how that class works. I thought that I
> >> > had to add the customization on my own image recipe.
> >> > So the correct way is to write a 'customization recipe' and install
> >> > via IMAGE_INSTALL? Can you provide an example?
> >>
> >> use your custom image recipe as before to just produce your root-
> >> filesystem which results in a (compressed) tar-file in ${DEPLOY_DIR_
> >> IMAGE}. It will be referenced from the genimage recipe without any file
> >> extension via GENIMAGE_ROOTFS_IMAGE. Now your UBI-recipe (e.g. 'your-
> >> customized-ubi.bb') could look like
> >>
> >>     inherit genimage
> >>     LICENSE = "MIT"
> >>     LIC_FILES_CHKSUM =
> >>
> "file://${COREBASE}/meta/files/common-licenses/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
> >>
> >>     SRC_URI += "file://genimage.config"
> >>
> >>     # to not confuse the flashable UBI-image ('ubi')
> >>     # with the UBI-filesystems ('ubifs') it contains
> >>     GENIMAGE_IMAGE_SUFFIX = "ubi"
> >>
> >>     # the name of the root-filesystem genimage should use
> >>     GENIMAGE_ROOTFS_IMAGE = "your-customized-rootfs"
> >>
> >> with the accompanying 'genimage.config' for example as follows
> >>
> >>     #
> >>     # Manufacturer ID: 0x2c, Chip ID: 0xda
> >>     # -> Micron MT29F2G08ABAEAWP
> >>     # 256 MiB, SLC
> >>     #
> >>     flash nand {
> >>         pebsize = 131072
> >>         lebsize = 126976
> >>         numpebs = 2044
> >>         minimum-io-unit-size = 2048
> >>         sub-page-size = 2048
> >>     }
> >>
> >>     image @IMAGE@ {
> >>         flashtype = "nand"
> >>         ubi {
> >>         }
> >>
> >>         partition rootfs {
> >>                 image = rootfs.ubifs
> >>                 size = 64MiB
> >>         }
> >>
> >>         partition opt {
> >>                 image = opt.ubifs
> >>                 size = 32MiB
> >>         }
> >>
> >>         partition data {
> >>                 image = data.ubifs
> >>                 autoresize = true
> >>         }
> >>     }
> >>
> >>     image rootfs.ubifs {
> >>         flashtype = "nand"
> >>         ubifs {
> >>                 extraargs = "-x lzo"
> >>                 max-size = 64MiB
> >>         }
> >>         mountpoint = "/"
> >>     }
> >>
> >>     image opt.ubifs {
> >>         flashtype = "nand"
> >>         ubifs {
> >>                 extraargs = "-x lzo"
> >>                 max-size = 32MiB
> >>         }
> >>         mountpoint = "/opt"
> >>     }
> >>
> >>     image data.ubifs {
> >>         flashtype = "nand"
> >>         ubifs {
> >>                 extraargs = "-x lzo"
> >>                 max-size = 192MiB
> >>         }
> >>         mountpoint = "/data"
> >>     }
> >>
> >> In a UBI-image almost all UBI-volumes need to have a fixed size and only
> >> one is allowed to use the autoresize mechanism which blows it up to use
> >> the remaining space when it is UBI-attached for the first time. Distinct
> >> from that is the UBI-filesystem's max-size parameter which prescribes
> >> the maximum size of an UBI-volume that shall be addressable by this
> >> filesystem. This means that if you would re-use 'data.ubifs' in a volume
> >> that has been autoresized to e.g. 1024MiB the filesystem would not be
> >> able to make use of it.
> >>
> >> I neither tested the recipe nor the genimage.config, so please give some
> >> feedback.
> >>
> >> Best regards
> >> Ulrich
> >>
> >>
> >> > Thanks,
> >> > Gabriele
> >> >
> >> > Il giorno mer 24 apr 2019 alle ore 15:15 Ulrich Ölmann <
> >> > u.oelmann at pengutronix.de> ha scritto:
> >> >
> >> >> Hi Gabriele,
> >> >>
> >> >> On Wed, Apr 24 2019 at 14:06 +0200, Gabriele Zampieri <
> >> >> gabbla.malist at gmail.com> wrote:
> >> >> > I'm now testing genimage via meta-ptx in my Yocto workflow, but I
> >> found a
> >> >> > problem: I cannot set a SRC_URI in my custom image recipe (that
> >> inherit
> >> >> > from core-image which in turn inherit from image) because do_fetch
> and
> >> >> > do_unpack tasks have noexec set to 1. If I specify the SRC_URI
> with my
> >> >> > genimage.config, bitbake exits, complaining about LIC_FILE_CHECKSUM
> >> (that
> >> >> > is correctly specified). If I hack image.bbclass and comment out
> >> >> >
> >> >> > #do_fetch[noexec] = "1"
> >> >> >
> >> >> >
> >> >> > #do_unpack[noexec] = "1"
> >> >> >
> >> >> > The process start correctly. Is there a way to avoid touching
> >> >> image.bbclass
> >> >> > and install my configuration from the image recipe?
> >> >> >
> >> >> > Thanks,
> >> >> > Gabriele
> >> >>
> >> >> you need one or more recipe(s) that construct(s) your filesystem(s)
> and
> >> >> a separate one that makes a flashable image out of that (see the
> >> >> introductory documentation in 'genimage.bbclass'). In the former you
> >> >> inherit 'core-image' and only in the latter which inherits 'genimage'
> >> >> you have to set the SRC_URI to point to your 'genimage.config'.
> >> >>
> >> >> Best regards
> >> >> Ulrich
> >> >>
> >> >>
> >> >> > Il giorno mer 13 mar 2019 alle ore 16:14 Gabriele Zampieri <
> >> >> > gabbla.malist at gmail.com> ha scritto:
> >> >> >
> >> >> >> Hi all,
> >> >> >>
> >> >> >> thank you very much for the suggestion, I will check genimage and
> >> test
> >> >> it.
> >> >> >>
> >> >> >> Gabriele
> >> >> >>
> >> >> >> Il giorno gio 7 mar 2019 alle ore 16:23 Ulrich Ölmann <
> >> >> >> u.oelmann at pengutronix.de> ha scritto:
> >> >> >>
> >> >> >>> Hi there,
> >> >> >>>
> >> >> >>> On Thu, Mar 07 2019 at 15:11 +0100, Stelling2 Carsten <
> >> >> >>> Carsten.Stelling2 at goerlitz.com> wrote:
> >> >> >>> > Have you seen https://github.com/pengutronix/genimage?
> >> >> >>>
> >> >> >>> you can find it included within
> >> >> https://github.com/pengutronix/meta-ptx
> >> >> >>> with an accompanying genimage.bbclass.
> >> >> >>>
> >> >> >>> Best regards
> >> >> >>> Ulrich
> >> >> >>>
> >> >> >>> > Regards,
> >> >> >>> >
> >> >> >>> > Carsten
> >> >> >>> >
> >> >> >>> > Von: yocto-bounces at yoctoproject.org [mailto:
> >> >> >>> yocto-bounces at yoctoproject.org] Im Auftrag von Gabriele Zampieri
> >> >> >>> > Gesendet: Montag, 4. März 2019 12:17
> >> >> >>> > An: yocto at yoctoproject.org
> >> >> >>> > Betreff: [yocto] Multiple ubifs partition
> >> >> >>> >
> >> >> >>> > Hi all,
> >> >> >>> >
> >> >> >>> > I'm trying to build a distribution that has multiple
> partitions.
> >> The
> >> >> >>> desiderata is something like:
> >> >> >>> >
> >> >> >>> > - rootfs.ubifs mounted on /
> >> >> >>> > - data.ubifs mounted on /data
> >> >> >>> > - opt.ubifs mounted on /opt
> >> >> >>> >
> >> >> >>> > I was wondering if there is a standard way to achieve the
> goal. I
> >> see
> >> >> >>> that there is a tool called wic, but it does not seems to support
> >> >> ubifs. I
> >> >> >>> could post process the tarball image and doing stuff with my
> >> scripts,
> >> >> but
> >> >> >>> I'd prefer doing this in a single bitbake run. Can you suggest
> >> >> something?
> >> >> >>> >
> >> >> >>> > Thanks,
> >> >> >>> > Gabriele
> >> >> >>>
> >> >> >>>
> >> >> >>> --
> >> >> >>> Pengutronix e.K.                           | Ulrich Ölmann
> >> >>    |
> >> >> >>> Industrial Linux Solutions                 |
> >> >> http://www.pengutronix.de/
> >> >> >>> |
> >> >> >>> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone:
> >> +49-5121-206917-0
> >> >>   |
> >> >> >>> Amtsgericht Hildesheim, HRA 2686           | Fax:
> >> >>  +49-5121-206917-5555 |
> >> >> >>>
> >> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Pengutronix e.K.                           | Ulrich Ölmann
> >>  |
> >> >> Industrial Linux Solutions                 |
> http://www.pengutronix.de/
> >> |
> >> >> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0
> >>   |
> >> >> Amtsgericht Hildesheim, HRA 2686           | Fax:
> >>  +49-5121-206917-5555 |
> >> >>
> >>
> >>
> >> --
> >> Pengutronix e.K.                           | Ulrich Ölmann
>  |
> >> Industrial Linux Solutions                 | http://www.pengutronix.de/
> |
> >> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0
>   |
> >> Amtsgericht Hildesheim, HRA 2686           | Fax:
>  +49-5121-206917-5555 |
> >>
>
>
> --
> Pengutronix e.K.                           | Ulrich Ölmann               |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20190506/cc384ec9/attachment-0001.html>


More information about the yocto mailing list