sb16_csp.h
001: #ifndef __SOUND_SB16_CSP_H
002: #define __SOUND_SB16_CSP_H
003: 
004: 
005: <uros@kss-loka.si>
006: <tiwai@suse.de>
007: 
008: 
009: 
010: 
011: 
012: 
013: 
014: 
015: 
016: 
017: 
018: 
019: 
020: 
021: 
022: 
023: 
024: 
025: 
026: 
027: #define SNDRV_SB_CSP_MODE_NONE          0x00
028: #define SNDRV_SB_CSP_MODE_DSP_READ      0x01    
029: #define SNDRV_SB_CSP_MODE_DSP_WRITE     0x02    
030: #define SNDRV_SB_CSP_MODE_QSOUND                0x04    
031: 
032: 
033: #define SNDRV_SB_CSP_LOAD_FROMUSER      0x01
034: #define SNDRV_SB_CSP_LOAD_INITBLOCK     0x02
035: 
036: 
037: #define SNDRV_SB_CSP_SAMPLE_8BIT                0x01
038: #define SNDRV_SB_CSP_SAMPLE_16BIT               0x02
039: 
040: 
041: #define SNDRV_SB_CSP_MONO                       0x01
042: #define SNDRV_SB_CSP_STEREO             0x02
043: 
044: 
045: #define SNDRV_SB_CSP_RATE_8000          0x01
046: #define SNDRV_SB_CSP_RATE_11025         0x02
047: #define SNDRV_SB_CSP_RATE_22050         0x04
048: #define SNDRV_SB_CSP_RATE_44100         0x08
049: #define SNDRV_SB_CSP_RATE_ALL           0x0f
050: 
051: 
052: #define SNDRV_SB_CSP_ST_IDLE            0x00
053: #define SNDRV_SB_CSP_ST_LOADED          0x01
054: #define SNDRV_SB_CSP_ST_RUNNING         0x02
055: #define SNDRV_SB_CSP_ST_PAUSED          0x04
056: #define SNDRV_SB_CSP_ST_AUTO            0x08
057: #define SNDRV_SB_CSP_ST_QSOUND          0x10
058: 
059: 
060: #define SNDRV_SB_CSP_QSOUND_MAX_RIGHT   0x20
061: 
062: 
063: #define SNDRV_SB_CSP_MAX_MICROCODE_FILE_SIZE    0x3000
064: 
065: 
066: struct snd_sb_csp_mc_header {
067:         char codec_name[16];            
068:         unsigned short func_req;        
069: };
070: 
071: 
072: struct snd_sb_csp_microcode {
073:         struct snd_sb_csp_mc_header info;
074:         unsigned char data[SNDRV_SB_CSP_MAX_MICROCODE_FILE_SIZE];
075: };
076: 
077: 
078: struct snd_sb_csp_start {
079:         int sample_width;       
080:         int channels;           
081: };
082: 
083: 
084: struct snd_sb_csp_info {
085:         char codec_name[16];            
086:         unsigned short func_nr;         
087:         unsigned int acc_format;        
088:         unsigned short acc_channels;    
089:         unsigned short acc_width;       
090:         unsigned short acc_rates;       
091:         unsigned short csp_mode;        
092:         unsigned short run_channels;    
093:         unsigned short run_width;       
094:         unsigned short version;         
095:         unsigned short state;           
096: };
097: 
098: 
099: 
100: #define SNDRV_SB_CSP_IOCTL_INFO         _IOR('H', 0x10, struct snd_sb_csp_info)
101: 
102: 
103: 
104: 
105: 
106: 
107: 
108: #define SNDRV_SB_CSP_IOCTL_LOAD_CODE    \
109:         _IOC(_IOC_WRITE, 'H', 0x11, sizeof(struct snd_sb_csp_microcode))
110: 
111: #define SNDRV_SB_CSP_IOCTL_UNLOAD_CODE  _IO('H', 0x12)
112: 
113: #define SNDRV_SB_CSP_IOCTL_START                _IOW('H', 0x13, struct snd_sb_csp_start)
114: 
115: #define SNDRV_SB_CSP_IOCTL_STOP         _IO('H', 0x14)
116: 
117: #define SNDRV_SB_CSP_IOCTL_PAUSE                _IO('H', 0x15)
118: 
119: #define SNDRV_SB_CSP_IOCTL_RESTART      _IO('H', 0x16)
120: 
121: 
122: #endif 
123: 
      
      
      
      
   
      
      
         
            
            © Andrew Scott 2006 -
            2025, 
            All Rights Reserved