source: S-port/trunk/Middlewares/Third_Party/FatFs/src/ff_gen_drv.h

Last change on this file was 1, checked in by AlexLir, 3 years ago
File size: 2.8 KB
Line 
1/**
2 ******************************************************************************
3 * @file ff_gen_drv.h
4 * @author MCD Application Team
5 * @brief Header for ff_gen_drv.c module.
6 *****************************************************************************
7 * @attention
8 *
9 * Copyright (c) 2017 STMicroelectronics. All rights reserved.
10 *
11 * This software component is licensed by ST under BSD 3-Clause license,
12 * the "License"; You may not use this file except in compliance with the
13 * License. You may obtain a copy of the License at:
14 * opensource.org/licenses/BSD-3-Clause
15 *
16 ******************************************************************************
17**/
18
19/* Define to prevent recursive inclusion -------------------------------------*/
20#ifndef __FF_GEN_DRV_H
21#define __FF_GEN_DRV_H
22
23#ifdef __cplusplus
24 extern "C" {
25#endif
26
27/* Includes ------------------------------------------------------------------*/
28#include "diskio.h"
29#include "ff.h"
30#include "stdint.h"
31
32
33/* Exported types ------------------------------------------------------------*/
34
35/**
36 * @brief Disk IO Driver structure definition
37 */
38typedef struct
39{
40 DSTATUS (*disk_initialize) (BYTE); /*!< Initialize Disk Drive */
41 DSTATUS (*disk_status) (BYTE); /*!< Get Disk Status */
42 DRESULT (*disk_read) (BYTE, BYTE*, DWORD, UINT); /*!< Read Sector(s) */
43#if _USE_WRITE == 1
44 DRESULT (*disk_write) (BYTE, const BYTE*, DWORD, UINT); /*!< Write Sector(s) when _USE_WRITE = 0 */
45#endif /* _USE_WRITE == 1 */
46#if _USE_IOCTL == 1
47 DRESULT (*disk_ioctl) (BYTE, BYTE, void*); /*!< I/O control operation when _USE_IOCTL = 1 */
48#endif /* _USE_IOCTL == 1 */
49
50}Diskio_drvTypeDef;
51
52/**
53 * @brief Global Disk IO Drivers structure definition
54 */
55typedef struct
56{
57 uint8_t is_initialized[_VOLUMES];
58 const Diskio_drvTypeDef *drv[_VOLUMES];
59 uint8_t lun[_VOLUMES];
60 volatile uint8_t nbr;
61
62}Disk_drvTypeDef;
63
64/* Exported constants --------------------------------------------------------*/
65/* Exported macro ------------------------------------------------------------*/
66/* Exported functions ------------------------------------------------------- */
67uint8_t FATFS_LinkDriver(const Diskio_drvTypeDef *drv, char *path);
68uint8_t FATFS_UnLinkDriver(char *path);
69uint8_t FATFS_LinkDriverEx(const Diskio_drvTypeDef *drv, char *path, BYTE lun);
70uint8_t FATFS_UnLinkDriverEx(char *path, BYTE lun);
71uint8_t FATFS_GetAttachedDriversNbr(void);
72
73#ifdef __cplusplus
74}
75#endif
76
77#endif /* __FF_GEN_DRV_H */
78
79/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
80
Note: See TracBrowser for help on using the repository browser.