Add FatFS library to the Webserver project, extend the HTTP server so that it now...
[pub/lufa.git] / Projects / Webserver / Lib / FATFs / diskio.c
diff --git a/Projects/Webserver/Lib/FATFs/diskio.c b/Projects/Webserver/Lib/FATFs/diskio.c
new file mode 100644 (file)
index 0000000..c7c837b
--- /dev/null
@@ -0,0 +1,92 @@
+/*-----------------------------------------------------------------------*/\r
+/* Low level disk I/O module skeleton for FatFs     (C)ChaN, 2007        */\r
+/*-----------------------------------------------------------------------*/\r
+/* This is a stub disk I/O module that acts as front end of the existing */\r
+/* disk I/O modules and attach it to FatFs module with common interface. */\r
+/*-----------------------------------------------------------------------*/\r
+\r
+#include "diskio.h"\r
+\r
+/*-----------------------------------------------------------------------*/\r
+/* Inidialize a Drive                                                    */\r
+\r
+DSTATUS disk_initialize (\r
+       BYTE drv                                /* Physical drive nmuber (0..) */\r
+)\r
+{\r
+       return FR_OK;\r
+}\r
+\r
+\r
+\r
+/*-----------------------------------------------------------------------*/\r
+/* Return Disk Status                                                    */\r
+\r
+DSTATUS disk_status (\r
+       BYTE drv                /* Physical drive nmuber (0..) */\r
+)\r
+{\r
+       return FR_OK;\r
+}\r
+\r
+\r
+\r
+/*-----------------------------------------------------------------------*/\r
+/* Read Sector(s)                                                        */\r
+\r
+DRESULT disk_read (\r
+       BYTE drv,               /* Physical drive nmuber (0..) */\r
+       BYTE *buff,             /* Data buffer to store read data */\r
+       DWORD sector,   /* Sector address (LBA) */\r
+       BYTE count              /* Number of sectors to read (1..255) */\r
+)\r
+{\r
+       DataflashManager_ReadBlocks_RAM(sector, count, buff);\r
+       return RES_OK;\r
+}\r
+\r
+\r
+\r
+/*-----------------------------------------------------------------------*/\r
+/* Write Sector(s)                                                       */\r
+\r
+#if _READONLY == 0\r
+DRESULT disk_write (\r
+       BYTE drv,                       /* Physical drive nmuber (0..) */\r
+       const BYTE *buff,       /* Data to be written */\r
+       DWORD sector,           /* Sector address (LBA) */\r
+       BYTE count                      /* Number of sectors to write (1..255) */\r
+)\r
+{\r
+       DataflashManager_WriteBlocks_RAM(sector, count, buff);\r
+       return RES_OK;\r
+}\r
+#endif /* _READONLY */\r
+\r
+\r
+\r
+/*-----------------------------------------------------------------------*/\r
+/* Miscellaneous Functions                                               */\r
+\r
+DRESULT disk_ioctl (\r
+       BYTE drv,               /* Physical drive nmuber (0..) */\r
+       BYTE ctrl,              /* Control code */\r
+       void *buff              /* Buffer to send/receive control data */\r
+)\r
+{\r
+       if (ctrl == CTRL_SYNC)\r
+         return RES_OK;\r
+       else\r
+         return RES_PARERR;\r
+}\r
+\r
+\r
+DWORD get_fattime (void)\r
+{\r
+       return ((DWORD)1 << 25) |\r
+              ((DWORD)1 << 21) |\r
+              ((DWORD)1 << 16) |\r
+              ((DWORD)1 << 11) |\r
+              ((DWORD)1 << 5)  |\r
+              ((DWORD)1 << 0);\r
+}\r