Loading...
Searching...
No Matches
msc.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2019-2021 Mesotic SAS
3 *
4 * This file is subject to the terms and conditions of the GNU Lesser General
5 * Public License v2.1. See the file LICENSE in the top level directory for
6 * more details.
7 *
8 *
9 */
10
23#ifndef USB_MSC_H
24#define USB_MSC_H
25
26#include <stdint.h>
27#include "usb/usbus.h"
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
40#define USB_MSC_SUBCLASS_SCSI 0x00
41#define USB_MSC_SUBCLASS_RBC 0x01
42#define USB_MSC_SUBCLASS_MMC5 0x02
43#define USB_MSC_SUBCLASS_UFI 0x04
44#define USB_MSC_SUBCLASS_SCSI_TCS 0x06
45#define USB_MSC_SUBCLASS_LSDFS 0x07
46#define USB_MSC_SUBCLASS_IEEE1667 0x08
47#define USB_MSC_SUBCLASS_VENDOR 0xFF
57#define USB_MSC_PROTOCOL_CBI_CCI 0x00
58#define USB_MSC_PROTOCOL_CBI_NO_CCI 0x01
60#define USB_MSC_PROTOCOL_BBB 0x50
61#define USB_MSC_PROTOCOL_UAS 0x62
62#define USB_MSC_PROTOCOL_VENDOR 0xFF
71#define USB_MSC_CBW_FLAG_IN 0x80
80#define USB_MSC_SETUP_REQ_ADSC 0x01
81#define USB_MSC_SETUP_REQ_GET_REQ 0xFC
82#define USB_MSC_SETUP_REQ_PUT_REQ 0xFD
83#define USB_MSC_SETUP_REQ_GML 0xFE
84#define USB_MSC_SETUP_REQ_BOMSR 0xFF
94#define USB_MSC_CSW_STATUS_COMMAND_PASSED 0x00
95#define USB_MSC_CSW_STATUS_COMMAND_FAILED 0x01
96#define USB_MSC_CSW_STATUS_COMMAND_PHASE_ERROR 0x02
99#ifdef __cplusplus
100}
101#endif
102
103#endif /* USB_MSC_H */
USBUS basic interface.