Flash file system on rtems

Nick Withers nick.withers at anu.edu.au
Mon Feb 24 23:26:08 UTC 2014


On Mon, 2014-02-24 at 12:15 -0500, marcaufc at aol.com wrote:
> Hi there,

Hey Marc,

> I'm a student working on configuring rtems to use a flash file system.
> I have done a fair amount of reading up and am aware that rtems
> supports JFFS2. 
> 
> 
> Does anyone know if JFFS2 has actually been configured on rtems? Can
> anyone point me in the right direction as to where within the rtems
> source code a flash file system can be configured?

Unfortunately RTEMS' JFFS2 support requires the developer to hook up
low-level handlers to actual perform I/O to / from the flash device.

This *may* not be too big a job, though, depending on whether there's
already an appropriate driver in RTEMS for your flash hardware.

For instance, the MVME3100 board I'm developing on has two Spansion /
AMD 29LV160-compatible flash chips in parallel, presenting a 32-bit
interface. This is supported in RTEMS through
c/src/lib/libbsp/powerpc/shared/flash/spansionFlash.c,
c/src/lib/libbsp/powerpc/shared/flash/flash.c and company[1].


Anyway, I'm assuming you've seen
http://www.rtems.org/onlinedocs/doxygen/cpukit/html/group__JFFS2.html -
if not, please have a gander.

You'll need "#define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS n" with
some positive n and "#define CONFIGURE_FILESYSTEM_JFFS2".

Then you'll need to provide the device / driver info to
http://www.rtems.org/onlinedocs/doxygen/cpukit/html/structrtems__jffs2__flash__control.html as part of the JFFS2 set-up (which http://www.rtems.org/onlinedocs/doxygen/cpukit/html/group__JFFS2.html covers nicely, I think).


It all comes down to the flash I/O driver, though... What flash hardware
are you using?

> Regards,
> Marc

[1] This didn't actually work out-of-the-box for me and I ended up
making a modification to the driver, which might not have been a good
idea, as highlighted by Thomas Doerfler -
http://www.rtems.org/pipermail/rtems-devel/2014-January/005202.html . I
*still* haven't looked into his concerns there, but it's on the list...
-- 
Nick Withers

Embedded Systems Programmer
Department of Nuclear Physics, Research School of Physics and Engineering
The Australian National University (CRICOS: 00120C)




More information about the users mailing list