mirror of
https://github.com/apache/nuttx.git
synced 2026-09-19 20:39:39 +08:00
Add FTL logic
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2307 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
@@ -985,4 +985,9 @@
|
||||
* arch/hc: Adding framework to support m68hc11/12
|
||||
* configs/demo9s12ne64: Configuration to support Freescale DEMO9S12NE64
|
||||
development board (MC9S12NE64 m68hcs12 processor).
|
||||
* drivers/mtd/ftl.c - A FLASH translation layer (FTL) has been implemented.
|
||||
This layer will convert a FLASH MTD interface into a block driver that
|
||||
can be used with any file system. Good performance of this layer will
|
||||
depend upon functioning write buffer support!
|
||||
NOTE: FTL support is untested as of the initial check-in.
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<tr align="center" bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
|
||||
<p>Last Updated: December 3, 2009</p>
|
||||
<p>Last Updated: December 5 2009</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -1611,6 +1611,11 @@ nuttx-2010.1 2010-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* arch/hc: Adding framework to support m68hc11/12
|
||||
* configs/demo9s12ne64: Configuration to support Freescale DEMO9S12NE64
|
||||
development board (MC9S12NE64 m68hcs12 processor).
|
||||
* drivers/mtd/ftl.c - A FLASH translation layer (FTL) has been implemented.
|
||||
This layer will convert a FLASH MTD interface into a block driver that
|
||||
can be used with any file system. Good performance of this layer will
|
||||
depend upon functioning write buffer support!
|
||||
NOTE: FTL support is untested as of the initial check-in.
|
||||
|
||||
pascal-2010.1 2010-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
NuttX TODO List (Last updated November 29, 2009)
|
||||
NuttX TODO List (Last updated December 5, 2009)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
(5) Task/Scheduler (sched/)
|
||||
@@ -11,7 +11,7 @@ NuttX TODO List (Last updated November 29, 2009)
|
||||
(4) Network Utilities (netutils/)
|
||||
(1) USB (drivers/usbdev)
|
||||
(5) Libraries (lib/)
|
||||
(8) File system/Generic drivers (fs/, drivers/)
|
||||
(11) File system/Generic drivers (fs/, drivers/)
|
||||
(2) Graphics subystem (graphics/)
|
||||
(1) Pascal add-on (pcode/)
|
||||
(1) Documentation (Documentation/)
|
||||
@@ -359,6 +359,25 @@ o File system / Generic drivers (fs/, drivers/)
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: Block driver read-ahead buffer and write buffer support is
|
||||
implemented but not yet tested.
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: The drivers/mmcsd/mmcsd_sdio.c driver has hooks in place to
|
||||
support read-ahead buffering and write buffering, but the logic
|
||||
is incomplete and untested.
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: A FLASH translation layer (FTL) has been implemented at
|
||||
drivers/mtd/ftl.c but has not yet been tested. This layer
|
||||
will convert a FLASH MTD interface into a block driver that
|
||||
can be used with any file system. Good performance of this
|
||||
layer will depend upon functioning write buffer support!
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
o Graphics subystem (graphics/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
@@ -34,5 +34,5 @@
|
||||
############################################################################
|
||||
|
||||
MTD_ASRCS =
|
||||
MTD_CSRCS = m25px.c
|
||||
MTD_CSRCS = ftl.c m25px.c
|
||||
|
||||
|
||||
Executable
+542
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -71,7 +71,7 @@ struct mtd_geometry_s
|
||||
uint16 blocksize; /* Size of one read/write block */
|
||||
uint16 erasesize; /* Size of one erase blocks -- must be a multiple
|
||||
* of blocksize. */
|
||||
size_t neraseblocks; /* Number of erase blocks */
|
||||
size_t neraseblocks; /* Number of erase blocks */
|
||||
};
|
||||
|
||||
/* This structure defines the interface to a simple memory technology device.
|
||||
@@ -83,7 +83,7 @@ struct mtd_dev_s
|
||||
{
|
||||
/* The following methods operate on the MTD: */
|
||||
|
||||
/* Erase the specified erase blocks */
|
||||
/* Erase the specified erase blocks (units are erase blocks) */
|
||||
|
||||
int (*erase)(FAR struct mtd_dev_s *dev, off_t startblock, size_t nblocks);
|
||||
|
||||
|
||||
@@ -106,7 +106,7 @@ struct rwbuffer_s
|
||||
|
||||
uint16 blocksize; /* The size of one block */
|
||||
size_t nblocks; /* The total number blocks supported */
|
||||
void *dev; /* Device state passed to callout functions */
|
||||
FAR void *dev; /* Device state passed to callout functions */
|
||||
|
||||
/* Write buffer setup. If CONFIG_FS_WRITEBUFFER is defined, but you
|
||||
* want read-ahead-only operation, (1) set wrmaxblocks to zero and do
|
||||
|
||||
Reference in New Issue
Block a user