On Thu, Jul 22, 2021 at 1:11 PM Pintu Agarwal <pintu.ping@xxxxxxxxx> wrote: > > On Thu, 22 Jul 2021 at 02:24, Richard Weinberger <richard@xxxxxx> wrote: > > > > ----- Ursprüngliche Mail ----- > > >> But let me advertise ubiblock a second time. > > > Sorry, I could not understand about the ubiblock request. Is it > > > possible to elaborate little more ? > > > We are already using squashfs on top of our UBI volumes (including > > > rootfs mounting). > > > This is the kernel command line we pass: > > > rootfstype=squashfs root=/dev/mtdblock44 ubi.mtd=40,0,30 > > > And CONFIG_MTD_UBI_BLOCK=y is already enabled in our kernel. > > > Do we need to do something different for ubiblock ? > > > > From that command line I understand that you are *not* using squashfs on top of UBI. > > You use mtdblock. ubiblock is a mechanism to turn an UBI volume into a read-only > > block device. > > See: http://www.linux-mtd.infradead.org/doc/ubi.html#L_ubiblock > > > Okay, you mean to say, we should use this ? > ubi.mtd=5 ubi.block=0,0 root=/dev/ubiblock0_0 > Instead of this: > root=/dev/mtdblock44 ubi.mtd=40,0,30 Yes. But it is not only about a different command line. It is a different concept. You use a emulated block device on top of UBI, and not directly on top of an MTD part. > Sorry, I could not get this part. How static volume can give image len ? > You mean there is some interface available in kernel to get actual image len ? use the ubinfo tool. Static volumes know exactly how much they are filled. > > > Also, how can we get the checksum of the entire UBI volume content > > > (ignoring the erased/empty/bad block content) ? > > > > Just read from the volume. /dev/ubiX_Y. > > > I think this also will give the entire volume size, but we still don't know how > many pages have real data ? "ubiinfo /dev/ubiX_Y" will tell you if the volume is of type static. > For example: > Suppose, my raw partition/volume is of size 10MB > But my actual data inside it is of size ~3MB (may be split across?) > Then, how can we get the actual size of the data content ? See above. > You mean to say: /dev/ubiX_Y should contain only data blocks ? Yes. An UBI volume contains only "user data". -- Thanks, //richard