]> git.gir.st - tmk_keyboard.git/blob - protocol/lufa/LUFA-git/Projects/TempDataLogger/Lib/FATFs/diskio.c
Squashed 'tmk_core/' changes from caca2c0..dc0e46e
[tmk_keyboard.git] / protocol / lufa / LUFA-git / Projects / TempDataLogger / Lib / FATFs / diskio.c
1 /*-----------------------------------------------------------------------*/
2 /* Low level disk I/O module skeleton for FatFs (C)ChaN, 2007 */
3 /*-----------------------------------------------------------------------*/
4 /* This is a stub disk I/O module that acts as front end of the existing */
5 /* disk I/O modules and attach it to FatFs module with common interface. */
6 /*-----------------------------------------------------------------------*/
7
8 #include "diskio.h"
9
10 /*-----------------------------------------------------------------------*/
11 /* Initialize a Drive */
12
13 DSTATUS disk_initialize (
14 BYTE drv /* Physical drive number (0..) */
15 )
16 {
17 return FR_OK;
18 }
19
20
21
22 /*-----------------------------------------------------------------------*/
23 /* Return Disk Status */
24
25 DSTATUS disk_status (
26 BYTE drv /* Physical drive number (0..) */
27 )
28 {
29 return FR_OK;
30 }
31
32
33
34 /*-----------------------------------------------------------------------*/
35 /* Read Sector(s) */
36
37 DRESULT disk_read (
38 BYTE drv, /* Physical drive number (0..) */
39 BYTE *buff, /* Data buffer to store read data */
40 DWORD sector, /* Sector address (LBA) */
41 BYTE count /* Number of sectors to read (1..128) */
42 )
43 {
44 DataflashManager_ReadBlocks_RAM(sector, count, buff);
45 return RES_OK;
46 }
47
48
49
50 /*-----------------------------------------------------------------------*/
51 /* Write Sector(s) */
52
53 #if _READONLY == 0
54 DRESULT disk_write (
55 BYTE drv, /* Physical drive number (0..) */
56 const BYTE *buff, /* Data to be written */
57 DWORD sector, /* Sector address (LBA) */
58 BYTE count /* Number of sectors to write (1..128) */
59 )
60 {
61 DataflashManager_WriteBlocks_RAM(sector, count, buff);
62 return RES_OK;
63 }
64 #endif /* _READONLY */
65
66
67
68 /*-----------------------------------------------------------------------*/
69 /* Miscellaneous Functions */
70
71 DRESULT disk_ioctl (
72 BYTE drv, /* Physical drive number (0..) */
73 BYTE ctrl, /* Control code */
74 void *buff /* Buffer to send/receive control data */
75 )
76 {
77 if (ctrl == CTRL_SYNC)
78 return RES_OK;
79 else
80 return RES_PARERR;
81 }
82
83
84 DWORD get_fattime (void)
85 {
86 TimeDate_t CurrTimeDate;
87
88 RTC_GetTimeDate(&CurrTimeDate);
89
90
91 return ((DWORD)(20 + CurrTimeDate.Year) << 25) |
92 ((DWORD)CurrTimeDate.Month << 21) |
93 ((DWORD)CurrTimeDate.Day << 16) |
94 ((DWORD)CurrTimeDate.Hour << 11) |
95 ((DWORD)CurrTimeDate.Minute << 5) |
96 (((DWORD)CurrTimeDate.Second >> 1) << 0);
97 }
98
Imprint / Impressum