You are currently viewing the documentation for:
m_fnGetVolumeInformation returns information about the disk size and sector size of a block device.
ECF_ErrorCode m_fnGetVolumeInformation(
   struct ECF_BlockDriver *pBlockDriver,
   uint16_t *pSectorSize,
   uint32_t *pNumberOfSectors
This is a pointer to the struct ECF_BlockDriver that the function is a member of. It can be used by the block driver to access the m_BlockDriverData member or to call the other functions.
This is a pointer to a uint16_t that should be set to the sector size.
This is a pointer to a uint32_t that should be set to the number of sectors.
Return value
Return ECFERR_SUCCESS if the read was successful. If the write fails, return one of the EcFAT error code defined in EcFAT.h. You can also define your own error codes, error no 64 to 127 are reserved for custom block driver errors.
The m_fnGetVolumeInformation function is part of struct ECF_BlockDriver. You need to supply it when writing a block driver. EcFAT will call this function to determine the sector size and how many sectors are there are on a block device. On both single- and multithreaded systems, EcFAT will make certain that it will not call any of the other block driver functions until this call has been completed so you do not need to implement any locking in the block driver unless it is needed for other purposes.
Example Code
See example for m_fnReadSector