7#ifndef _USB_HOST_INTERNAL_H_
8#define _USB_HOST_INTERNAL_H_
10#include <usb_host_config.h>
17#include <usb_host_msd.h>
28#ifndef USB_HOST_MSD_CLASS_CODE
29#define USB_HOST_MSD_CLASS_CODE (0x08U)
31#ifndef USB_HOST_MSD_SUBCLASS_CODE_UFI
32#define USB_HOST_MSD_SUBCLASS_CODE_UFI (0x04U)
34#ifndef USB_HOST_MSD_SUBCLASS_CODE_SCSI
35#define USB_HOST_MSD_SUBCLASS_CODE_SCSI (0x06U)
37#ifndef USB_HOST_MSD_PROTOCOL_BULK
38#define USB_HOST_MSD_PROTOCOL_BULK (0x50U)
44 kMSD_AppRunSetInterface,
45 kMSD_AppRunWaitSetInterface,
46 kMSD_AppRunMassStorageTest,
47 kMSD_AppRunReadCapacity,
60typedef struct _msd_app_instance {
62 usb_host_configuration_handle configHandle;
63 usb_device_handle deviceHandle;
64 usb_host_class_handle classHandle;
65 usb_host_interface_handle interfaceHandle;
68 uint8_t *commandBuffer;
71 uint8_t prevDeviceState;
85extern usb_host_handle g_UsbHostHandle;
86extern msd_app_instance_t g_MsdAppInstance;
87extern OS_SEM *g_MsdEventSem;
88extern volatile int g_MsdStatus;
95void USB_HostClockInit(
void);
96void USB_HostPhyInit(
void);
99void USB_HostIsrEnable(
void);
100void USB_HostIsrDisable(
void);
103usb_status_t USB_HostMsdEvent(usb_device_handle deviceHandle,
104 usb_host_configuration_handle configurationHandle,
108void USB_HostMsdTask(
void *param);
Semaphores are used to control access to shared resources or or to communicate between tasks in a mul...
Definition nbrtos.h:407