Merge PCB updates
[SCSI2SD.git] / software / SCSI2SD / v4 / SCSI2SD.cydsn / Generated_Source / PSoC5 / USBFS_audio.h
1 /*******************************************************************************
2 * File Name: USBFS_audio.h
3 * Version 2.60
4 *
5 * Description:
6 *  Header File for the USFS component. Contains prototypes and constant values.
7 *
8 ********************************************************************************
9 * Copyright 2008-2013, Cypress Semiconductor Corporation.  All rights reserved.
10 * You may use this file only in accordance with the license, terms, conditions,
11 * disclaimers, and limitations in the end user license agreement accompanying
12 * the software package with which this file was provided.
13 *******************************************************************************/
14
15 #if !defined(CY_USBFS_USBFS_audio_H)
16 #define CY_USBFS_USBFS_audio_H
17
18 #include "cytypes.h"
19
20
21 /***************************************
22 * Custom Declarations
23 ***************************************/
24
25 /* `#START CUSTOM_CONSTANTS` Place your declaration here */
26
27 /* `#END` */
28
29
30 /***************************************
31 *  Constants for USBFS_audio API.
32 ***************************************/
33
34 /* Audio Class-Specific Request Codes (AUDIO Table A-9) */
35 #define USBFS_REQUEST_CODE_UNDEFINED     (0x00u)
36 #define USBFS_SET_CUR                    (0x01u)
37 #define USBFS_GET_CUR                    (0x81u)
38 #define USBFS_SET_MIN                    (0x02u)
39 #define USBFS_GET_MIN                    (0x82u)
40 #define USBFS_SET_MAX                    (0x03u)
41 #define USBFS_GET_MAX                    (0x83u)
42 #define USBFS_SET_RES                    (0x04u)
43 #define USBFS_GET_RES                    (0x84u)
44 #define USBFS_SET_MEM                    (0x05u)
45 #define USBFS_GET_MEM                    (0x85u)
46 #define USBFS_GET_STAT                   (0xFFu)
47
48 /* Endpoint Control Selectors (AUDIO Table A-19) */
49 #define USBFS_EP_CONTROL_UNDEFINED       (0x00u)
50 #define USBFS_SAMPLING_FREQ_CONTROL      (0x01u)
51 #define USBFS_PITCH_CONTROL              (0x02u)
52
53 /* Feature Unit Control Selectors (AUDIO Table A-11) */
54 #define USBFS_FU_CONTROL_UNDEFINED       (0x00u)
55 #define USBFS_MUTE_CONTROL               (0x01u)
56 #define USBFS_VOLUME_CONTROL             (0x02u)
57 #define USBFS_BASS_CONTROL               (0x03u)
58 #define USBFS_MID_CONTROL                (0x04u)
59 #define USBFS_TREBLE_CONTROL             (0x05u)
60 #define USBFS_GRAPHIC_EQUALIZER_CONTROL  (0x06u)
61 #define USBFS_AUTOMATIC_GAIN_CONTROL     (0x07u)
62 #define USBFS_DELAY_CONTROL              (0x08u)
63 #define USBFS_BASS_BOOST_CONTROL         (0x09u)
64 #define USBFS_LOUDNESS_CONTROL           (0x0Au)
65
66 #define USBFS_SAMPLE_FREQ_LEN            (3u)
67 #define USBFS_VOLUME_LEN                 (2u)
68
69 #if !defined(USER_SUPPLIED_DEFAULT_VOLUME_VALUE)
70     #define USBFS_VOL_MIN_MSB            (0x80u)
71     #define USBFS_VOL_MIN_LSB            (0x01u)
72     #define USBFS_VOL_MAX_MSB            (0x7Fu)
73     #define USBFS_VOL_MAX_LSB            (0xFFu)
74     #define USBFS_VOL_RES_MSB            (0x00u)
75     #define USBFS_VOL_RES_LSB            (0x01u)
76 #endif /* USER_SUPPLIED_DEFAULT_VOLUME_VALUE */
77
78
79 /***************************************
80 * External data references
81 ***************************************/
82
83 extern volatile uint8 USBFS_currentSampleFrequency[USBFS_MAX_EP]
84                                                              [USBFS_SAMPLE_FREQ_LEN];
85 extern volatile uint8 USBFS_frequencyChanged;
86 extern volatile uint8 USBFS_currentMute;
87 extern volatile uint8 USBFS_currentVolume[USBFS_VOLUME_LEN];
88 extern volatile uint8 USBFS_minimumVolume[USBFS_VOLUME_LEN];
89 extern volatile uint8 USBFS_maximumVolume[USBFS_VOLUME_LEN];
90 extern volatile uint8 USBFS_resolutionVolume[USBFS_VOLUME_LEN];
91
92 #endif /* End CY_USBFS_USBFS_audio_H */
93
94
95 /* [] END OF FILE */