mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-26 09:45:37 +03:00
Switch USBD storage fops table according to sdcard config
This commit is contained in:
parent
8a4ea0785e
commit
0cf8679b5c
4 changed files with 42 additions and 8 deletions
|
@ -46,6 +46,7 @@
|
||||||
|
|
||||||
#include "drivers/accgyro/accgyro_mpu.h"
|
#include "drivers/accgyro/accgyro_mpu.h"
|
||||||
|
|
||||||
|
#include "pg/sdcard.h"
|
||||||
#include "pg/usb.h"
|
#include "pg/usb.h"
|
||||||
|
|
||||||
#include "usb_core.h"
|
#include "usb_core.h"
|
||||||
|
@ -84,9 +85,22 @@ uint8_t mscStart(void)
|
||||||
switch (blackboxConfig()->device) {
|
switch (blackboxConfig()->device) {
|
||||||
#ifdef USE_SDCARD
|
#ifdef USE_SDCARD
|
||||||
case BLACKBOX_DEVICE_SDCARD:
|
case BLACKBOX_DEVICE_SDCARD:
|
||||||
|
switch (sdcardConfig()->mode) {
|
||||||
|
#ifdef USE_SDCARD_SDIO
|
||||||
|
case SDCARD_MODE_SDIO:
|
||||||
USBD_STORAGE_fops = &USBD_MSC_MICRO_SDIO_fops;
|
USBD_STORAGE_fops = &USBD_MSC_MICRO_SDIO_fops;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_SDCARD_SPI
|
||||||
|
case SDCARD_MODE_SPI:
|
||||||
|
USBD_STORAGE_fops = &USBD_MSC_MICRO_SD_SPI_fops;
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
default:
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef USE_FLASHFS
|
#ifdef USE_FLASHFS
|
||||||
case BLACKBOX_DEVICE_FLASH:
|
case BLACKBOX_DEVICE_FLASH:
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
|
|
||||||
#include "drivers/accgyro/accgyro_mpu.h"
|
#include "drivers/accgyro/accgyro_mpu.h"
|
||||||
|
|
||||||
|
#include "pg/sdcard.h"
|
||||||
#include "pg/usb.h"
|
#include "pg/usb.h"
|
||||||
|
|
||||||
#include "vcp_hal/usbd_cdc_interface.h"
|
#include "vcp_hal/usbd_cdc_interface.h"
|
||||||
|
@ -88,9 +89,22 @@ uint8_t mscStart(void)
|
||||||
switch (blackboxConfig()->device) {
|
switch (blackboxConfig()->device) {
|
||||||
#ifdef USE_SDCARD
|
#ifdef USE_SDCARD
|
||||||
case BLACKBOX_DEVICE_SDCARD:
|
case BLACKBOX_DEVICE_SDCARD:
|
||||||
|
switch (sdcardConfig()->mode) {
|
||||||
|
#ifdef USE_SDCARD_SDIO
|
||||||
|
case SDCARD_MODE_SDIO:
|
||||||
USBD_MSC_RegisterStorage(&USBD_Device, &USBD_MSC_MICRO_SDIO_fops);
|
USBD_MSC_RegisterStorage(&USBD_Device, &USBD_MSC_MICRO_SDIO_fops);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_SDCARD_SPI
|
||||||
|
case SDCARD_MODE_SPI:
|
||||||
|
USBD_MSC_RegisterStorage(&USBD_Device, &USBD_MSC_MICRO_SD_SPI_fops);
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
default:
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef USE_FLASHFS
|
#ifdef USE_FLASHFS
|
||||||
case BLACKBOX_DEVICE_FLASH:
|
case BLACKBOX_DEVICE_FLASH:
|
||||||
|
|
|
@ -29,18 +29,24 @@
|
||||||
|
|
||||||
#ifdef USE_HAL_DRIVER
|
#ifdef USE_HAL_DRIVER
|
||||||
extern USBD_StorageTypeDef *USBD_STORAGE_fops;
|
extern USBD_StorageTypeDef *USBD_STORAGE_fops;
|
||||||
#ifdef USE_SDCARD
|
#ifdef USE_SDCARD_SDIO
|
||||||
extern USBD_StorageTypeDef USBD_MSC_MICRO_SDIO_fops;
|
extern USBD_StorageTypeDef USBD_MSC_MICRO_SDIO_fops;
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_SDCARD_SPI
|
||||||
|
extern USBD_StorageTypeDef USBD_MSC_MICRO_SD_SPI_fops;
|
||||||
|
#endif
|
||||||
#ifdef USE_FLASHFS
|
#ifdef USE_FLASHFS
|
||||||
extern USBD_StorageTypeDef USBD_MSC_EMFAT_fops;
|
extern USBD_StorageTypeDef USBD_MSC_EMFAT_fops;
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else // USE_HAL_DRIVER
|
||||||
extern USBD_STORAGE_cb_TypeDef *USBD_STORAGE_fops;
|
extern USBD_STORAGE_cb_TypeDef *USBD_STORAGE_fops;
|
||||||
#ifdef USE_SDCARD
|
#ifdef USE_SDCARD_SDIO
|
||||||
extern USBD_STORAGE_cb_TypeDef USBD_MSC_MICRO_SDIO_fops;
|
extern USBD_STORAGE_cb_TypeDef USBD_MSC_MICRO_SDIO_fops;
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_SDCARD_SPI
|
||||||
|
extern USBD_STORAGE_cb_TypeDef USBD_MSC_MICRO_SD_SPI_fops;
|
||||||
|
#endif
|
||||||
#ifdef USE_FLASHFS
|
#ifdef USE_FLASHFS
|
||||||
extern USBD_STORAGE_cb_TypeDef USBD_MSC_EMFAT_fops;
|
extern USBD_STORAGE_cb_TypeDef USBD_MSC_EMFAT_fops;
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif // USE_HAL_DRIVER
|
||||||
|
|
|
@ -110,7 +110,7 @@ static uint8_t STORAGE_Inquirydata[] = {//36
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef USE_HAL_DRIVER
|
#ifdef USE_HAL_DRIVER
|
||||||
USBD_StorageTypeDef USBD_MSC_MICRO_SDIO_fops =
|
USBD_StorageTypeDef USBD_MSC_MICRO_SD_SPI_fops =
|
||||||
{
|
{
|
||||||
STORAGE_Init,
|
STORAGE_Init,
|
||||||
STORAGE_GetCapacity,
|
STORAGE_GetCapacity,
|
||||||
|
@ -122,7 +122,7 @@ USBD_StorageTypeDef USBD_MSC_MICRO_SDIO_fops =
|
||||||
(int8_t*)STORAGE_Inquirydata,
|
(int8_t*)STORAGE_Inquirydata,
|
||||||
};
|
};
|
||||||
#else
|
#else
|
||||||
USBD_STORAGE_cb_TypeDef USBD_MSC_MICRO_SDIO_fops =
|
USBD_STORAGE_cb_TypeDef USBD_MSC_MICRO_SD_SPI_fops =
|
||||||
{
|
{
|
||||||
STORAGE_Init,
|
STORAGE_Init,
|
||||||
STORAGE_GetCapacity,
|
STORAGE_GetCapacity,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue