On 9/5/19 6:22 AM, Heinrich Schuchardt wrote:
On 9/5/19 2:06 PM, Tom Rini wrote:
On Thu, Sep 05, 2019 at 08:43:43AM +0200, Heinrich Schuchardt wrote:
Currently we do no have a maintainer for the FAT file system. Takahiro
has done a great job fixing some of the most prominent deficiencies. But
still the driver is not in good shape:

I once again ran upon errors in FAT when executing the UEFI SCT.

Here is some of the output of
dosfsck -w -r -l -a -v -t
The full output has hundreds of errors recorded.

Orphaned long file name part "Sct.log"
   Auto-deleting.
Orphaned long file name part "Sct.log"
   Auto-deleting.
/Log/RuntimeServicesTest/VariableServicesTest0/QueryVariableInfo_Conf_0_0_61758774-91A3-47DD-BDBD-B81094A5F62D.log
   Duplicate directory entry.
   First    Size 4712 bytes, date 01:00:00 Dec 31 1979
   Second   Size 5086 bytes, date 01:00:00 Dec 31 1979
   Auto-renaming second.
   Renamed to FSCK0000.008

BareBox is using a (somewhat outdated) copy of this library with a
little bit of wrapper code:

FatFs - Generic FAT Filesystem Module
http://elm-chan.org/fsw/ff/00index_e.html
http://elm-chan.org/fsw/ff/arc/ff13c.zip

The same library is also used for Arduinos:
https://github.com/stm32duino/FatFs

Shouldn't we try just the same?

I think that or similar has been suggested before.  Are you volunteering
to maintain the wrapper and keep it in-sync?  Thanks!


Here is the reference

Stephen Warren
[PATCH 0/9] Replace the FAT filesystem code
https://lists.denx.de/pipermail/u-boot/2015-August/222545.html

IIRC, we abandoned that effort since ff turned out to be very slow. I'm not sure whether adding a disk caching library underneath it would have helped or not. Probably you can find those discussions from the mailing list post above?

Another FAT implementation that might be worth looking at is from FreeRTOS:

https://freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_FAT/index.html

FreeRTOS itself recently got bought by Amazon and switched to an MIT license. I assume the same is true of their FAT code. So, should be OK to integrate.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to