[U-Boot] [U-Boot, 1/3] sysboot: Add support for ubifs to the sysboot command

Stephen Warren swarren at wwwdotorg.org
Sat Aug 22 00:01:56 CEST 2015


On 08/21/2015 03:56 AM, Hans de Goede wrote:
> Hi,
>
> On 20-08-15 21:53, Stephen Warren wrote:
>
>
>  > On 20-08-15 18:04, Hans de Goede wrote:
>>> ubifs does not go though the generic block layer because mtd devices
>>> are special, so the "any" filesystem option to sysboot does not work,
>>> this adds support for a "ubifs" filesystem to the sysboot command which
>>> makes it possible to boot from ubifs using an extlinux.conf file.
>  >
>  > Why are they special? Surely ubifs support can be integrated into the
>  > filesystem layer, thus removing the need for patches 1 and 3 in this
> series?
>
> I looked into that before going that root, the problem is that the
> filesystem layer assumes that files sit on top of block devices,
> and all the filesystem layer code operates on block_dev_desc_t devices.
>
> But ubifs operates on ubi volumes which in turn operate on raw nand,
> this has vastly different characteristics then regular block devices.
>
> ubifs deals with erase-blocks, finding or creating a free
> erase block when it needs to write stuff, then erasing an entire
> block and writing part of it a page-size at a time where
> erase-block-size != page-size, and both are typically of values
> much larger then disk sector-sizes. There is no notion of erase
> blocks in the fs / block layer.

Can't the filesystem layer simply be taught how to look up block devices 
for most filesystems, but look up volumes for other filesystems? I still 
see no fundamental reason we can't abstract this so higher level SW 
doesn't have to have special cases.


More information about the U-Boot mailing list