Claes Ekengren / Mbed 2 deprecated Measurement_system

Dependencies:   mbed

Committer:
CE
Date:
Thu Jan 06 19:01:44 2011 +0000
Revision:
0:0732b16d9a92
R1A

Who changed what in which revision?

UserRevisionLine numberNew contents of line
CE 0:0732b16d9a92 1 /*
CE 0:0732b16d9a92 2 **************************************************************************************************************
CE 0:0732b16d9a92 3 * NXP USB Host Stack
CE 0:0732b16d9a92 4 *
CE 0:0732b16d9a92 5 * (c) Copyright 2008, NXP SemiConductors
CE 0:0732b16d9a92 6 * (c) Copyright 2008, OnChip Technologies LLC
CE 0:0732b16d9a92 7 * All Rights Reserved
CE 0:0732b16d9a92 8 *
CE 0:0732b16d9a92 9 * www.nxp.com
CE 0:0732b16d9a92 10 * www.onchiptech.com
CE 0:0732b16d9a92 11 *
CE 0:0732b16d9a92 12 * File : usbhost_ms.h
CE 0:0732b16d9a92 13 * Programmer(s) : Ravikanth.P
CE 0:0732b16d9a92 14 * Version :
CE 0:0732b16d9a92 15 *
CE 0:0732b16d9a92 16 **************************************************************************************************************
CE 0:0732b16d9a92 17 */
CE 0:0732b16d9a92 18
CE 0:0732b16d9a92 19 #ifndef USBHOST_MS_H
CE 0:0732b16d9a92 20 #define USBHOST_MS_H
CE 0:0732b16d9a92 21
CE 0:0732b16d9a92 22 /*
CE 0:0732b16d9a92 23 **************************************************************************************************************
CE 0:0732b16d9a92 24 * INCLUDE HEADER FILES
CE 0:0732b16d9a92 25 **************************************************************************************************************
CE 0:0732b16d9a92 26 */
CE 0:0732b16d9a92 27
CE 0:0732b16d9a92 28 #include "usbhost_inc.h"
CE 0:0732b16d9a92 29
CE 0:0732b16d9a92 30 /*
CE 0:0732b16d9a92 31 **************************************************************************************************************
CE 0:0732b16d9a92 32 * MASS STORAGE SPECIFIC DEFINITIONS
CE 0:0732b16d9a92 33 **************************************************************************************************************
CE 0:0732b16d9a92 34 */
CE 0:0732b16d9a92 35
CE 0:0732b16d9a92 36 #define MS_GET_MAX_LUN_REQ 0xFE
CE 0:0732b16d9a92 37 #define MASS_STORAGE_CLASS 0x08
CE 0:0732b16d9a92 38 #define MASS_STORAGE_SUBCLASS_SCSI 0x06
CE 0:0732b16d9a92 39 #define MASS_STORAGE_PROTOCOL_BO 0x50
CE 0:0732b16d9a92 40
CE 0:0732b16d9a92 41 #define INQUIRY_LENGTH 36
CE 0:0732b16d9a92 42 /*
CE 0:0732b16d9a92 43 **************************************************************************************************************
CE 0:0732b16d9a92 44 * SCSI SPECIFIC DEFINITIONS
CE 0:0732b16d9a92 45 **************************************************************************************************************
CE 0:0732b16d9a92 46 */
CE 0:0732b16d9a92 47
CE 0:0732b16d9a92 48 #define CBW_SIGNATURE 0x43425355
CE 0:0732b16d9a92 49 #define CSW_SIGNATURE 0x53425355
CE 0:0732b16d9a92 50 #define CBW_SIZE 31
CE 0:0732b16d9a92 51 #define CSW_SIZE 13
CE 0:0732b16d9a92 52 #define CSW_CMD_PASSED 0x00
CE 0:0732b16d9a92 53 #define SCSI_CMD_REQUEST_SENSE 0x03
CE 0:0732b16d9a92 54 #define SCSI_CMD_TEST_UNIT_READY 0x00
CE 0:0732b16d9a92 55 #define SCSI_CMD_INQUIRY 0x12
CE 0:0732b16d9a92 56 #define SCSI_CMD_READ_10 0x28
CE 0:0732b16d9a92 57 #define SCSI_CMD_READ_CAPACITY 0x25
CE 0:0732b16d9a92 58 #define SCSI_CMD_WRITE_10 0x2A
CE 0:0732b16d9a92 59
CE 0:0732b16d9a92 60 /*
CE 0:0732b16d9a92 61 **************************************************************************************************************
CE 0:0732b16d9a92 62 * TYPE DEFINITIONS
CE 0:0732b16d9a92 63 **************************************************************************************************************
CE 0:0732b16d9a92 64 */
CE 0:0732b16d9a92 65
CE 0:0732b16d9a92 66 typedef enum ms_data_dir {
CE 0:0732b16d9a92 67
CE 0:0732b16d9a92 68 MS_DATA_DIR_IN = 0x80,
CE 0:0732b16d9a92 69 MS_DATA_DIR_OUT = 0x00,
CE 0:0732b16d9a92 70 MS_DATA_DIR_NONE = 0x01
CE 0:0732b16d9a92 71
CE 0:0732b16d9a92 72 } MS_DATA_DIR;
CE 0:0732b16d9a92 73
CE 0:0732b16d9a92 74 /*
CE 0:0732b16d9a92 75 **************************************************************************************************************
CE 0:0732b16d9a92 76 * FUNCTION PROTOTYPES
CE 0:0732b16d9a92 77 **************************************************************************************************************
CE 0:0732b16d9a92 78 */
CE 0:0732b16d9a92 79
CE 0:0732b16d9a92 80 USB_INT32S MS_BulkRecv ( USB_INT32U block_number,
CE 0:0732b16d9a92 81 USB_INT16U num_blocks,
CE 0:0732b16d9a92 82 volatile USB_INT08U *user_buffer);
CE 0:0732b16d9a92 83
CE 0:0732b16d9a92 84 USB_INT32S MS_BulkSend ( USB_INT32U block_number,
CE 0:0732b16d9a92 85 USB_INT16U num_blocks,
CE 0:0732b16d9a92 86 volatile USB_INT08U *user_buffer);
CE 0:0732b16d9a92 87 USB_INT32S MS_ParseConfiguration(void);
CE 0:0732b16d9a92 88 USB_INT32S MS_TestUnitReady (void);
CE 0:0732b16d9a92 89 USB_INT32S MS_ReadCapacity (USB_INT32U *numBlks, USB_INT32U *blkSize);
CE 0:0732b16d9a92 90 USB_INT32S MS_GetMaxLUN (void);
CE 0:0732b16d9a92 91 USB_INT32S MS_GetSenseInfo (void);
CE 0:0732b16d9a92 92 USB_INT32S MS_Init (USB_INT32U *blkSize, USB_INT32U *numBlks, USB_INT08U *inquiryResult);
CE 0:0732b16d9a92 93 USB_INT32S MS_Inquire (USB_INT08U *response);
CE 0:0732b16d9a92 94
CE 0:0732b16d9a92 95 void Fill_MSCommand ( USB_INT32U block_number,
CE 0:0732b16d9a92 96 USB_INT32U block_size,
CE 0:0732b16d9a92 97 USB_INT16U num_blocks,
CE 0:0732b16d9a92 98 MS_DATA_DIR direction,
CE 0:0732b16d9a92 99 USB_INT08U scsi_cmd,
CE 0:0732b16d9a92 100 USB_INT08U scsi_cmd_len);
CE 0:0732b16d9a92 101 #endif