Move kfile interface to the io/ directory.
[bertos.git] / bertos / drv / dataflash.h
index 8fd3a4f7f8a642abf08b3898c527b541ded61c0a..a60f30eaebd7858dfb0b0f1fc33e9efbf7b43166 100644 (file)
  *
  * -->
  *
- * \brief Function library for dataflash AT45DB family (interface).
+ * \brief Function library for dataflash AT45DB family.
  *
- * \version $Id: dataflash.h 21658 2008-06-05 16:42:54Z asterix $
+ * \version $Id$
  *
  * \author Daniele Basile <asterix@develer.com>
+ *
+ * $WIZ$ module_name = "dataflash"
+ * $WIZ$ module_depends = "kfile"
+ * $WIZ$ module_configuration = "bertos/cfg/cfg_dataflash.h"
+ * $WIZ$ module_hw = "bertos/hw/hw_dataflash.h", "bertos/hw/hw_dataflash.c"
  */
 
 
@@ -43,7 +48,8 @@
 
 #include <cfg/compiler.h>
 
-#include <kern/kfile.h>
+#include <io/kfile.h>
+#include <fs/battfs.h>
 
 /**
  * Type definitions for dflash memory.
@@ -81,7 +87,7 @@ typedef enum DataflashType
 /**
  * Dataflash KFile context structure.
  */
-typedef struct KFileDataflash
+typedef struct DataFlash
 {
        KFile fd;                       ///< File descriptor.
        KFile *channel;                 ///< Dataflash comm channel (usually SPI).
@@ -90,7 +96,7 @@ typedef struct KFileDataflash
        bool page_dirty;                ///< True if current_page is dirty (needs to be flushed).
        dataflash_setReset_t *setReset; ///< Callback used to set reset pin of dataflash.
        dataflash_setCS_t *setCS;       ///< Callback used to set CS pin of dataflash.
-} KFileDataflash;
+} DataFlash;
 
 /**
  * ID for dataflash.
@@ -98,12 +104,12 @@ typedef struct KFileDataflash
 #define KFT_DATAFLASH MAKE_ID('D', 'F', 'L', 'H')
 
 /**
- * Convert + ASSERT from generic KFile to KFileDataflash.
+ * Convert + ASSERT from generic KFile to DataFlash.
  */
-INLINE KFileDataflash * KFILEDATAFLASH(KFile *fd)
+INLINE DataFlash * DATAFLASH_CAST(KFile *fd)
 {
        ASSERT(fd->_type == KFT_DATAFLASH);
-       return (KFileDataflash *)fd;
+       return (DataFlash *)fd;
 }
 
 #define RESET_PULSE_WIDTH     10 ///< Width of reset pulse in usec.
@@ -181,7 +187,8 @@ typedef struct DataflashInfo
 } DataflashInfo;
 
 
-bool dataflash_init(KFileDataflash *fd, KFile *ch, DataflashType type, dataflash_setCS_t *setCS, dataflash_setReset_t *setReset);
+bool dataflash_init(DataFlash *fd, KFile *ch, DataflashType type, dataflash_setCS_t *setCS, dataflash_setReset_t *setReset);
+bool dataflash_diskInit(struct BattFsSuper *d, DataFlash *fd, pgcnt_t *page_array);
 
 /**
  * To test data falsh drive you could use
@@ -190,7 +197,9 @@ bool dataflash_init(KFileDataflash *fd, KFile *ch, DataflashType type, dataflash
  *
  * (see drv/datafalsh_test.c for more detail)
  */
-int dataflash_testSetUp(void);
+int dataflash_testSetup(void);
+/* For backward compatibility */
+#define dataflash_testSetUp() dataflash_testSetup()
 int dataflash_testRun(void);
 int dataflash_testTearDown(void);