summaryrefslogtreecommitdiff
path: root/lib/fatfs/diskio/diskio_rawflash.c
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-04-09 11:04:42 +1000
committerjacqueline <me@jacqueline.id.au>2024-04-09 11:04:42 +1000
commit6e73f1a22edddf19a2813c3fdfe67664e04629b3 (patch)
treebaad85a99e2e30db5bcca690dbc6250ae8756436 /lib/fatfs/diskio/diskio_rawflash.c
parent96b62321c33ff5e146d52416dc5da3f0c240b4b0 (diff)
downloadtangara-fw-6e73f1a22edddf19a2813c3fdfe67664e04629b3.tar.gz
Upgrade fatfs component version
Diffstat (limited to 'lib/fatfs/diskio/diskio_rawflash.c')
-rw-r--r--lib/fatfs/diskio/diskio_rawflash.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/fatfs/diskio/diskio_rawflash.c b/lib/fatfs/diskio/diskio_rawflash.c
index cbd03e0f..313aacec 100644
--- a/lib/fatfs/diskio/diskio_rawflash.c
+++ b/lib/fatfs/diskio/diskio_rawflash.c
@@ -18,6 +18,7 @@ static const esp_partition_t* s_ff_raw_handles[FF_VOLUMES];
// Determine the sector size and sector count by parsing the boot sector
static size_t s_sector_size[FF_VOLUMES];
static size_t s_sectors_count[FF_VOLUMES];
+static uint8_t s_initialized[FF_VOLUMES];
#define BPB_BytsPerSec 11
#define BPB_TotSec16 19
@@ -56,12 +57,17 @@ DSTATUS ff_raw_initialize (BYTE pdrv)
s_sectors_count[pdrv] = sectors_count_tmp_32;
}
- return 0;
+ s_initialized[pdrv] = true;
+ return STA_PROTECT;
}
DSTATUS ff_raw_status (BYTE pdrv)
{
- return 0;
+ DSTATUS status = STA_PROTECT;
+ if (!s_initialized[pdrv]) {
+ status |= STA_NOINIT | STA_NODISK;
+ }
+ return status;
}
DRESULT ff_raw_read (BYTE pdrv, BYTE *buff, DWORD sector, UINT count)
@@ -80,7 +86,7 @@ DRESULT ff_raw_read (BYTE pdrv, BYTE *buff, DWORD sector, UINT count)
DRESULT ff_raw_write (BYTE pdrv, const BYTE *buff, DWORD sector, UINT count)
{
- return RES_ERROR;
+ return RES_WRPRT;
}
DRESULT ff_raw_ioctl (BYTE pdrv, BYTE cmd, void *buff)