On Thu, Mar 13, 2025 at 08:13:23PM +0100, Marek Vasut wrote: > Add U-Boot adjustments to the libexfat code and integrate > the result into U-Boot filesystem layer. This provides full > read-write exfat support for U-Boot available via generic > filesystem interface. > > FS_DIRENT_NAME_LEN is increased to 1024 in case exfat is > enabled, because EXFAT can use UTF16 names, which do not > fit into current FS_DIRENT_NAME_LEN. To avoid affecting > every configuration, increase FS_DIRENT_NAME_LEN only in > case EXFAT is enabled. > > Example usage via sandbox, assuming disk.img with one exfat partition: > > Drive info: > $ ./u-boot -Tc 'host bind 0 ../disk.img ; host info 0' > dev blocks blksz label path > 0 262144 512 0 ../disk.img > > List files: > $ ./u-boot -Tc 'host bind 0 ../disk.img ; ls host 0:1 /api' > 475 Kconfig > 230 Makefile > 1873 README > ... > 10 file(s), 0 dir(s) > > Load and checksum a file: > $ ./u-boot -Tc 'host bind 0 ../disk.img ; load host 0:1 $loadaddr .config ; \ > crc32 $loadaddr $filesize' > 56724 bytes read in 1 ms (54.1 MiB/s) > crc32 for 00000000 ... 0000dd93 ==> b2e847c9 > > $ crc32 .config > b2e847c9 > > Load .config file to RAM, store the file into FS as /newconfig, > load the /newconfig into RAM and checksum the file: > $ ./u-boot -Tc 'host bind 0 ../disk.img ; load host 0:1 $loadaddr .config ; \ > save host 0:1 $loadaddr /newconfig $filesize ; \ > load host 0:1 0x10000 /newconfig ; \ > crc32 0x10000 $filesize' > 56724 bytes read in 1 ms (54.1 MiB/s) > 56724 bytes written in 0 ms > 56724 bytes read in 0 ms > crc32 for 00010000 ... 0001dd93 ==> b2e847c9 > > Remove file 3.txt and create new directory /newdir: > $ ./u-boot -Tc 'host bind 0 ../disk.img ; ls host 0:1 / ; \ > rm host 0:1 3.txt ; mkdir host 0:1 /newdir ; \ > ls host 0:1 /' > ... > 0 1.txt > 0 2.txt > 0 3.txt > 0 4.txt > 0 5.txt > > 7 file(s), 4 dir(s) > ... > 0 1.txt > 0 2.txt > newdir/ > 0 4.txt > 0 5.txt > > 6 file(s), 5 dir(s) > > Signed-off-by: Marek Vasut <ma...@denx.de>
Acked-by: Tom Rini <tr...@konsulko.com> -- Tom
signature.asc
Description: PGP signature