[U-Boot] fatwrite issue in sub-directories

Nicolas le bayon nlebayon at gmail.com
Thu Jul 21 01:04:28 CEST 2016


Hi Benoît,


2016-07-20 21:42 GMT+02:00 Benoît Thébaudeau <
benoit.thebaudeau.dev at gmail.com>:

> Hi Nicolas,
>
> On Wed, Jul 20, 2016 at 6:21 PM, Nicolas le bayon <nlebayon at gmail.com>
> wrote:
> > Hi all,
> >
> > With a quite old u-boot release (October 2015 more or less), I has some
> > different issues around fatwrite operations. I realigned a few things
> > around FAT with latest release, and now I observe only one issue. Maybe
> > this has been discussed here before, I searched but no success.
> >
> > I'd like to save a file on an external device (sd card or usb stick), but
> > not on the root, in a sub-directory. I made the implementation with EXT4
> > and it works fine. But no way (for the moment) with FAT.
> >
> > Here is the behaviour, let's imagine the device contains only a "mydir"
> > directory.
> >> fatls <device>
> >     mydir/
> >> fatwrite <device> <addr> myfile.txt <filesize>
> >> fatls <device>
> >     mydir/
> >     myfile.txt
> >> fatwrite <device> <addr> mydir/myfile2.txt <filesize>
> >> fatls <device>
> >      mydir/
> >      myfile.txt
> >      mydir/myfile2.txt
> > In fact, data is stored in a file strangely named with a '/' character.
> >
> > And when I put the device back on my Linux PC, I can see myfile.txt,
> > nothing special in mydir directory, and no "mydir/myfile2.txt" file.
> >
> > Does someone have already observed this?
>
> Yes. The issue is that do_fat_write() only supports filenames, and not
> full paths, so whatever you give it ends up as a filename in the root
> directory. There is no workaround.
>
> Best regards,
> Benoît
>

OK, so I'm gonna re-construct my implementation in order to place
systematically this file in the root of my device, and this shoud
workaround the issue. Good to learn that it's a known issue.
Thanks a lot for your feedback!
Best Regards
Nicolas


More information about the U-Boot mailing list