vfat support

Philippe Simons loki_666 at fastmail.fm
Sun Jul 9 12:30:48 UTC 2006


On Fri, 07 Jul 2006 13:12:55 +1000, "Chris Johns" <chrisj at rtems.org>
said:
> Camilo Alejandro Arboleda wrote:
> > 
> > Microsoft only charges if you sell a product with embedded storage
> > devices using VFAT. You don't need to pay for the device driver
> > itself.
> > 
> 
> We need to consider the end users of RTEMS. I think adding this code 
> goes against the RTEMS Development Mission Statement which states:
> 
>   "All software which executes on the target will not
>    place undue restrictions on embedded applications."
> 
> The possible need to pay a fee to Microsoft is an undue restriction. My 
> limited view is the current code provides FAT32 8.3 file name support 
> which does not come under the license.
> 
> If the LFN support can be developed as a contributed patch or package 
> which sits outside the main RTEMS source I think it would be ok. It 
> becomes the end users responsibility to manage the issue.

Well I guess, it could be done as seperate package.
> 
> I was developing a patch for LFN when this issue first appeared. I had 
> added support to read LFN and only needed to added support for writing. 
> I am not sure if I have the patch. I could look if someone wants it.

Id like to test this patch if you can find it.
> 
> Regards
> Chris
> (this is not legal advice; other standard disclaimers apply)

But first, I'd like to fix the way of the fat layer detects inodes...
Even if I can't read the LFN for a file, I still like to be able to scan
for files entries in directories..
Now, when i execute a readdir somewhere on my mounted driver,
i get some fake entries which points to no file.

here is the output for the following dir structure
/mnt/sd <- my driver
/mnt/sd/games/uqm/content <- a dir
/mnt/sd/games/uqm/content/version <- a file
/mnt/sd/games/uqm/content/packages <- a dir
/mnt/sd/games/uqm/content/packages/content.uqm <- a file

Listing of directory /mnt/sd/games/uqm/content
         name               inode   offset   reclen  type
    .                    15601920        0    268   0x010c
    ..                   15601921        0    268   0x010c
    Ap                   15601922        0    268   0x010c <- unexisting
    file !!
    PACKAGES             15601923        0    268   0x010c
    Av                   15601925        0    268   0x010c <- unexisting
    file !!
    VERSION              15601926        0    268   0x010c
End of /mnt/sd/games/uqm/content
Listing of directory /mnt/sd/games/uqm/content/packages
         name               inode   offset   reclen  type
    .                     1138432        0    268   0x010c
    ..                    1138433        0    268   0x010c
    Ac                    1138434        0    268   0x010c <- unexisting
    file !!
    CONTENT.UQM           1138435        0    268   0x010c
End of /mnt/sd/games/uqm/content/packages

I guess, this is because of the additionals DE in the FAT to supports
the LFNs,
and actual code get confuse whith theses and report them as files.

anyone has an idea on this?
TIA

Philippe

-- 
http://www.fastmail.fm - Does exactly what it says on the tin




More information about the users mailing list