Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
sb.h File Reference
#include <sound/pcm.h>
#include <sound/rawmidi.h>
#include <linux/interrupt.h>
#include <asm/io.h>

Go to the source code of this file.

Data Structures

struct  snd_sb
 
struct  sbmix_elem
 

Macros

#define SB_OPEN_PCM   0x01
 
#define SB_OPEN_MIDI_INPUT   0x02
 
#define SB_OPEN_MIDI_OUTPUT   0x04
 
#define SB_OPEN_MIDI_INPUT_TRIGGER   0x08
 
#define SB_OPEN_MIDI_OUTPUT_TRIGGER   0x10
 
#define SB_MODE_HALT   0x00
 
#define SB_MODE_PLAYBACK_8   0x01
 
#define SB_MODE_PLAYBACK_16   0x02
 
#define SB_MODE_PLAYBACK   (SB_MODE_PLAYBACK_8 | SB_MODE_PLAYBACK_16)
 
#define SB_MODE_CAPTURE_8   0x04
 
#define SB_MODE_CAPTURE_16   0x08
 
#define SB_MODE_CAPTURE   (SB_MODE_CAPTURE_8 | SB_MODE_CAPTURE_16)
 
#define SB_RATE_LOCK_PLAYBACK   0x10
 
#define SB_RATE_LOCK_CAPTURE   0x20
 
#define SB_RATE_LOCK   (SB_RATE_LOCK_PLAYBACK | SB_RATE_LOCK_CAPTURE)
 
#define SB_MPU_INPUT   1
 
#define SBP(chip, x)   ((chip)->port + s_b_SB_##x)
 
#define SBP1(port, x)   ((port) + s_b_SB_##x)
 
#define s_b_SB_RESET   0x6
 
#define s_b_SB_READ   0xa
 
#define s_b_SB_WRITE   0xc
 
#define s_b_SB_COMMAND   0xc
 
#define s_b_SB_STATUS   0xc
 
#define s_b_SB_DATA_AVAIL   0xe
 
#define s_b_SB_DATA_AVAIL_16   0xf
 
#define s_b_SB_MIXER_ADDR   0x4
 
#define s_b_SB_MIXER_DATA   0x5
 
#define s_b_SB_OPL3_LEFT   0x0
 
#define s_b_SB_OPL3_RIGHT   0x2
 
#define s_b_SB_OPL3_BOTH   0x8
 
#define SB_DSP_OUTPUT   0x14
 
#define SB_DSP_INPUT   0x24
 
#define SB_DSP_BLOCK_SIZE   0x48
 
#define SB_DSP_HI_OUTPUT   0x91
 
#define SB_DSP_HI_INPUT   0x99
 
#define SB_DSP_LO_OUTPUT_AUTO   0x1c
 
#define SB_DSP_LO_INPUT_AUTO   0x2c
 
#define SB_DSP_HI_OUTPUT_AUTO   0x90
 
#define SB_DSP_HI_INPUT_AUTO   0x98
 
#define SB_DSP_IMMED_INT   0xf2
 
#define SB_DSP_GET_VERSION   0xe1
 
#define SB_DSP_SPEAKER_ON   0xd1
 
#define SB_DSP_SPEAKER_OFF   0xd3
 
#define SB_DSP_DMA8_OFF   0xd0
 
#define SB_DSP_DMA8_ON   0xd4
 
#define SB_DSP_DMA8_EXIT   0xda
 
#define SB_DSP_DMA16_OFF   0xd5
 
#define SB_DSP_DMA16_ON   0xd6
 
#define SB_DSP_DMA16_EXIT   0xd9
 
#define SB_DSP_SAMPLE_RATE   0x40
 
#define SB_DSP_SAMPLE_RATE_OUT   0x41
 
#define SB_DSP_SAMPLE_RATE_IN   0x42
 
#define SB_DSP_MONO_8BIT   0xa0
 
#define SB_DSP_MONO_16BIT   0xa4
 
#define SB_DSP_STEREO_8BIT   0xa8
 
#define SB_DSP_STEREO_16BIT   0xac
 
#define SB_DSP_MIDI_INPUT_IRQ   0x31
 
#define SB_DSP_MIDI_UART_IRQ   0x35
 
#define SB_DSP_MIDI_OUTPUT   0x38
 
#define SB_DSP4_OUT8_AI   0xc6
 
#define SB_DSP4_IN8_AI   0xce
 
#define SB_DSP4_OUT16_AI   0xb6
 
#define SB_DSP4_IN16_AI   0xbe
 
#define SB_DSP4_MODE_UNS_MONO   0x00
 
#define SB_DSP4_MODE_SIGN_MONO   0x10
 
#define SB_DSP4_MODE_UNS_STEREO   0x20
 
#define SB_DSP4_MODE_SIGN_STEREO   0x30
 
#define SB_DSP4_OUTPUT   0x3c
 
#define SB_DSP4_INPUT_LEFT   0x3d
 
#define SB_DSP4_INPUT_RIGHT   0x3e
 
#define SB_DSP20_MASTER_DEV   0x02
 
#define SB_DSP20_PCM_DEV   0x0A
 
#define SB_DSP20_CD_DEV   0x08
 
#define SB_DSP20_FM_DEV   0x06
 
#define SB_DSP_MASTER_DEV   0x22
 
#define SB_DSP_PCM_DEV   0x04
 
#define SB_DSP_LINE_DEV   0x2e
 
#define SB_DSP_CD_DEV   0x28
 
#define SB_DSP_FM_DEV   0x26
 
#define SB_DSP_MIC_DEV   0x0a
 
#define SB_DSP_CAPTURE_SOURCE   0x0c
 
#define SB_DSP_CAPTURE_FILT   0x0c
 
#define SB_DSP_PLAYBACK_FILT   0x0e
 
#define SB_DSP_STEREO_SW   0x0e
 
#define SB_DSP_MIXS_MIC0   0x00 /* same as MIC */
 
#define SB_DSP_MIXS_CD   0x01
 
#define SB_DSP_MIXS_MIC   0x02
 
#define SB_DSP_MIXS_LINE   0x03
 
#define SB_DSP4_MASTER_DEV   0x30
 
#define SB_DSP4_BASS_DEV   0x46
 
#define SB_DSP4_TREBLE_DEV   0x44
 
#define SB_DSP4_SYNTH_DEV   0x34
 
#define SB_DSP4_PCM_DEV   0x32
 
#define SB_DSP4_SPEAKER_DEV   0x3b
 
#define SB_DSP4_LINE_DEV   0x38
 
#define SB_DSP4_MIC_DEV   0x3a
 
#define SB_DSP4_OUTPUT_SW   0x3c
 
#define SB_DSP4_CD_DEV   0x36
 
#define SB_DSP4_IGAIN_DEV   0x3f
 
#define SB_DSP4_OGAIN_DEV   0x41
 
#define SB_DSP4_MIC_AGC   0x43
 
#define SB_DSP4_IRQSETUP   0x80
 
#define SB_DSP4_DMASETUP   0x81
 
#define SB_DSP4_IRQSTATUS   0x82
 
#define SB_DSP4_MPUSETUP   0x84
 
#define SB_DSP4_3DSE   0x90
 
#define SB_DT019X_MASTER_DEV   0x62
 
#define SB_DT019X_PCM_DEV   0x64
 
#define SB_DT019X_SYNTH_DEV   0x66
 
#define SB_DT019X_CD_DEV   0x68
 
#define SB_DT019X_MIC_DEV   0x6a
 
#define SB_DT019X_SPKR_DEV   0x6a
 
#define SB_DT019X_LINE_DEV   0x6e
 
#define SB_DT019X_OUTPUT_SW2   0x4c
 
#define SB_DT019X_CAPTURE_SW   0x6c
 
#define SB_DT019X_CAP_CD   0x02
 
#define SB_DT019X_CAP_MIC   0x04
 
#define SB_DT019X_CAP_LINE   0x06
 
#define SB_DT019X_CAP_SYNTH   0x07
 
#define SB_DT019X_CAP_MAIN   0x07
 
#define SB_ALS4000_MONO_IO_CTRL   0x4b
 
#define SB_ALS4000_OUT_MIXER_CTRL_2   0x4c
 
#define SB_ALS4000_MIC_IN_GAIN   0x4d
 
#define SB_ALS4000_ANALOG_REFRNC_VOLT_CTRL   0x4e
 
#define SB_ALS4000_FMDAC   0x4f
 
#define SB_ALS4000_3D_SND_FX   0x50
 
#define SB_ALS4000_3D_TIME_DELAY   0x51
 
#define SB_ALS4000_3D_AUTO_MUTE   0x52
 
#define SB_ALS4000_ANALOG_BLOCK_CTRL   0x53
 
#define SB_ALS4000_3D_DELAYLINE_PATTERN   0x54
 
#define SB_ALS4000_CR3_CONFIGURATION   0xc3 /* bit 7 is Digital Loop Enable */
 
#define SB_ALS4000_QSOUND   0xdb
 
#define SB_IRQSETUP_IRQ9   0x01
 
#define SB_IRQSETUP_IRQ5   0x02
 
#define SB_IRQSETUP_IRQ7   0x04
 
#define SB_IRQSETUP_IRQ10   0x08
 
#define SB_IRQTYPE_8BIT   0x01
 
#define SB_IRQTYPE_16BIT   0x02
 
#define SB_IRQTYPE_MPUIN   0x04
 
#define ALS4K_IRQTYPE_CR1E_DMA   0x20
 
#define SB_DMASETUP_DMA0   0x01
 
#define SB_DMASETUP_DMA1   0x02
 
#define SB_DMASETUP_DMA3   0x08
 
#define SB_DMASETUP_DMA5   0x20
 
#define SB_DMASETUP_DMA6   0x40
 
#define SB_DMASETUP_DMA7   0x80
 
#define SB_MIXVAL_DOUBLE(left_reg, right_reg, left_shift, right_shift, mask)   ((left_reg) | ((right_reg) << 8) | ((left_shift) << 16) | ((right_shift) << 19) | ((mask) << 24))
 
#define SB_MIXVAL_SINGLE(reg, shift, mask)   ((reg) | ((shift) << 16) | ((mask) << 24))
 
#define SB_MIXVAL_INPUT_SW(reg1, reg2, left_shift, right_shift)   ((reg1) | ((reg2) << 8) | ((left_shift) << 16) | ((right_shift) << 24))
 
#define SB_SINGLE(xname, reg, shift, mask)
 
#define SB_DOUBLE(xname, left_reg, right_reg, left_shift, right_shift, mask)
 
#define SB16_INPUT_SW(xname, reg1, reg2, left_shift, right_shift)
 

Enumerations

enum  sb_hw_type {
  SB_HW_AUTO, SB_HW_10, SB_HW_20, SB_HW_201,
  SB_HW_PRO, SB_HW_JAZZ16, SB_HW_16, SB_HW_16CSP,
  SB_HW_ALS100, SB_HW_ALS4000, SB_HW_DT019X, SB_HW_CS5530
}
 
enum  {
  SB_MIX_SINGLE, SB_MIX_DOUBLE, SB_MIX_INPUT_SW, SB_MIX_CAPTURE_PRO,
  SB_MIX_CAPTURE_DT019X, SB_MIX_MONO_CAPTURE_ALS4K
}
 

Functions

int snd_sbdsp_command (struct snd_sb *chip, unsigned char val)
 
int snd_sbdsp_get_byte (struct snd_sb *chip)
 
int snd_sbdsp_reset (struct snd_sb *chip)
 
int snd_sbdsp_create (struct snd_card *card, unsigned long port, int irq, irq_handler_t irq_handler, int dma8, int dma16, unsigned short hardware, struct snd_sb **r_chip)
 
void snd_sbmixer_write (struct snd_sb *chip, unsigned char reg, unsigned char data)
 
unsigned char snd_sbmixer_read (struct snd_sb *chip, unsigned char reg)
 
int snd_sbmixer_new (struct snd_sb *chip)
 
int snd_sb8dsp_pcm (struct snd_sb *chip, int device, struct snd_pcm **rpcm)
 
irqreturn_t snd_sb8dsp_interrupt (struct snd_sb *chip)
 
int snd_sb8_playback_open (struct snd_pcm_substream *substream)
 
int snd_sb8_capture_open (struct snd_pcm_substream *substream)
 
int snd_sb8_playback_close (struct snd_pcm_substream *substream)
 
int snd_sb8_capture_close (struct snd_pcm_substream *substream)
 
irqreturn_t snd_sb8dsp_midi_interrupt (struct snd_sb *chip)
 
int snd_sb8dsp_midi (struct snd_sb *chip, int device, struct snd_rawmidi **rrawmidi)
 
int snd_sb16dsp_pcm (struct snd_sb *chip, int device, struct snd_pcm **rpcm)
 
struct snd_pcm_opssnd_sb16dsp_get_pcm_ops (int direction)
 
int snd_sb16dsp_configure (struct snd_sb *chip)
 
irqreturn_t snd_sb16dsp_interrupt (int irq, void *dev_id)
 
int snd_sbmixer_add_ctl (struct snd_sb *chip, const char *name, int index, int type, unsigned long value)
 

Macro Definition Documentation

#define ALS4K_IRQTYPE_CR1E_DMA   0x20

Definition at line 266 of file sb.h.

#define s_b_SB_COMMAND   0xc

Definition at line 126 of file sb.h.

#define s_b_SB_DATA_AVAIL   0xe

Definition at line 128 of file sb.h.

#define s_b_SB_DATA_AVAIL_16   0xf

Definition at line 129 of file sb.h.

#define s_b_SB_MIXER_ADDR   0x4

Definition at line 130 of file sb.h.

#define s_b_SB_MIXER_DATA   0x5

Definition at line 131 of file sb.h.

#define s_b_SB_OPL3_BOTH   0x8

Definition at line 134 of file sb.h.

#define s_b_SB_OPL3_LEFT   0x0

Definition at line 132 of file sb.h.

#define s_b_SB_OPL3_RIGHT   0x2

Definition at line 133 of file sb.h.

#define s_b_SB_READ   0xa

Definition at line 124 of file sb.h.

#define s_b_SB_RESET   0x6

Definition at line 123 of file sb.h.

#define s_b_SB_STATUS   0xc

Definition at line 127 of file sb.h.

#define s_b_SB_WRITE   0xc

Definition at line 125 of file sb.h.

#define SB16_INPUT_SW (   xname,
  reg1,
  reg2,
  left_shift,
  right_shift 
)
Value:
{ .name = xname, \
.type = SB_MIX_INPUT_SW, \
.private_value = SB_MIXVAL_INPUT_SW(reg1, reg2, left_shift, right_shift) }

Definition at line 365 of file sb.h.

#define SB_ALS4000_3D_AUTO_MUTE   0x52

Definition at line 250 of file sb.h.

#define SB_ALS4000_3D_DELAYLINE_PATTERN   0x54

Definition at line 252 of file sb.h.

#define SB_ALS4000_3D_SND_FX   0x50

Definition at line 248 of file sb.h.

#define SB_ALS4000_3D_TIME_DELAY   0x51

Definition at line 249 of file sb.h.

#define SB_ALS4000_ANALOG_BLOCK_CTRL   0x53

Definition at line 251 of file sb.h.

#define SB_ALS4000_ANALOG_REFRNC_VOLT_CTRL   0x4e

Definition at line 246 of file sb.h.

#define SB_ALS4000_CR3_CONFIGURATION   0xc3 /* bit 7 is Digital Loop Enable */

Definition at line 253 of file sb.h.

#define SB_ALS4000_FMDAC   0x4f

Definition at line 247 of file sb.h.

#define SB_ALS4000_MIC_IN_GAIN   0x4d

Definition at line 245 of file sb.h.

#define SB_ALS4000_MONO_IO_CTRL   0x4b

Definition at line 243 of file sb.h.

#define SB_ALS4000_OUT_MIXER_CTRL_2   0x4c

Definition at line 244 of file sb.h.

#define SB_ALS4000_QSOUND   0xdb

Definition at line 254 of file sb.h.

#define SB_DMASETUP_DMA0   0x01

Definition at line 269 of file sb.h.

#define SB_DMASETUP_DMA1   0x02

Definition at line 270 of file sb.h.

#define SB_DMASETUP_DMA3   0x08

Definition at line 271 of file sb.h.

#define SB_DMASETUP_DMA5   0x20

Definition at line 272 of file sb.h.

#define SB_DMASETUP_DMA6   0x40

Definition at line 273 of file sb.h.

#define SB_DMASETUP_DMA7   0x80

Definition at line 274 of file sb.h.

#define SB_DOUBLE (   xname,
  left_reg,
  right_reg,
  left_shift,
  right_shift,
  mask 
)
Value:
{ .name = xname, \
.type = SB_MIX_DOUBLE, \
.private_value = SB_MIXVAL_DOUBLE(left_reg, right_reg, left_shift, right_shift, mask) }

Definition at line 360 of file sb.h.

#define SB_DSP20_CD_DEV   0x08

Definition at line 183 of file sb.h.

#define SB_DSP20_FM_DEV   0x06

Definition at line 184 of file sb.h.

#define SB_DSP20_MASTER_DEV   0x02

Definition at line 181 of file sb.h.

#define SB_DSP20_PCM_DEV   0x0A

Definition at line 182 of file sb.h.

#define SB_DSP4_3DSE   0x90

Definition at line 224 of file sb.h.

#define SB_DSP4_BASS_DEV   0x46

Definition at line 205 of file sb.h.

#define SB_DSP4_CD_DEV   0x36

Definition at line 213 of file sb.h.

#define SB_DSP4_DMASETUP   0x81

Definition at line 220 of file sb.h.

#define SB_DSP4_IGAIN_DEV   0x3f

Definition at line 214 of file sb.h.

#define SB_DSP4_IN16_AI   0xbe

Definition at line 170 of file sb.h.

#define SB_DSP4_IN8_AI   0xce

Definition at line 168 of file sb.h.

#define SB_DSP4_INPUT_LEFT   0x3d

Definition at line 177 of file sb.h.

#define SB_DSP4_INPUT_RIGHT   0x3e

Definition at line 178 of file sb.h.

#define SB_DSP4_IRQSETUP   0x80

Definition at line 219 of file sb.h.

#define SB_DSP4_IRQSTATUS   0x82

Definition at line 221 of file sb.h.

#define SB_DSP4_LINE_DEV   0x38

Definition at line 210 of file sb.h.

#define SB_DSP4_MASTER_DEV   0x30

Definition at line 204 of file sb.h.

#define SB_DSP4_MIC_AGC   0x43

Definition at line 216 of file sb.h.

#define SB_DSP4_MIC_DEV   0x3a

Definition at line 211 of file sb.h.

#define SB_DSP4_MODE_SIGN_MONO   0x10

Definition at line 172 of file sb.h.

#define SB_DSP4_MODE_SIGN_STEREO   0x30

Definition at line 174 of file sb.h.

#define SB_DSP4_MODE_UNS_MONO   0x00

Definition at line 171 of file sb.h.

#define SB_DSP4_MODE_UNS_STEREO   0x20

Definition at line 173 of file sb.h.

#define SB_DSP4_MPUSETUP   0x84

Definition at line 222 of file sb.h.

#define SB_DSP4_OGAIN_DEV   0x41

Definition at line 215 of file sb.h.

#define SB_DSP4_OUT16_AI   0xb6

Definition at line 169 of file sb.h.

#define SB_DSP4_OUT8_AI   0xc6

Definition at line 167 of file sb.h.

#define SB_DSP4_OUTPUT   0x3c

Definition at line 176 of file sb.h.

#define SB_DSP4_OUTPUT_SW   0x3c

Definition at line 212 of file sb.h.

#define SB_DSP4_PCM_DEV   0x32

Definition at line 208 of file sb.h.

#define SB_DSP4_SPEAKER_DEV   0x3b

Definition at line 209 of file sb.h.

#define SB_DSP4_SYNTH_DEV   0x34

Definition at line 207 of file sb.h.

#define SB_DSP4_TREBLE_DEV   0x44

Definition at line 206 of file sb.h.

#define SB_DSP_BLOCK_SIZE   0x48

Definition at line 138 of file sb.h.

#define SB_DSP_CAPTURE_FILT   0x0c

Definition at line 194 of file sb.h.

#define SB_DSP_CAPTURE_SOURCE   0x0c

Definition at line 193 of file sb.h.

#define SB_DSP_CD_DEV   0x28

Definition at line 190 of file sb.h.

#define SB_DSP_DMA16_EXIT   0xd9

Definition at line 154 of file sb.h.

#define SB_DSP_DMA16_OFF   0xd5

Definition at line 152 of file sb.h.

#define SB_DSP_DMA16_ON   0xd6

Definition at line 153 of file sb.h.

#define SB_DSP_DMA8_EXIT   0xda

Definition at line 151 of file sb.h.

#define SB_DSP_DMA8_OFF   0xd0

Definition at line 149 of file sb.h.

#define SB_DSP_DMA8_ON   0xd4

Definition at line 150 of file sb.h.

#define SB_DSP_FM_DEV   0x26

Definition at line 191 of file sb.h.

#define SB_DSP_GET_VERSION   0xe1

Definition at line 146 of file sb.h.

#define SB_DSP_HI_INPUT   0x99

Definition at line 140 of file sb.h.

#define SB_DSP_HI_INPUT_AUTO   0x98

Definition at line 144 of file sb.h.

#define SB_DSP_HI_OUTPUT   0x91

Definition at line 139 of file sb.h.

#define SB_DSP_HI_OUTPUT_AUTO   0x90

Definition at line 143 of file sb.h.

#define SB_DSP_IMMED_INT   0xf2

Definition at line 145 of file sb.h.

#define SB_DSP_INPUT   0x24

Definition at line 137 of file sb.h.

#define SB_DSP_LINE_DEV   0x2e

Definition at line 189 of file sb.h.

#define SB_DSP_LO_INPUT_AUTO   0x2c

Definition at line 142 of file sb.h.

#define SB_DSP_LO_OUTPUT_AUTO   0x1c

Definition at line 141 of file sb.h.

#define SB_DSP_MASTER_DEV   0x22

Definition at line 187 of file sb.h.

#define SB_DSP_MIC_DEV   0x0a

Definition at line 192 of file sb.h.

#define SB_DSP_MIDI_INPUT_IRQ   0x31

Definition at line 163 of file sb.h.

#define SB_DSP_MIDI_OUTPUT   0x38

Definition at line 165 of file sb.h.

#define SB_DSP_MIDI_UART_IRQ   0x35

Definition at line 164 of file sb.h.

#define SB_DSP_MIXS_CD   0x01

Definition at line 199 of file sb.h.

#define SB_DSP_MIXS_LINE   0x03

Definition at line 201 of file sb.h.

#define SB_DSP_MIXS_MIC   0x02

Definition at line 200 of file sb.h.

#define SB_DSP_MIXS_MIC0   0x00 /* same as MIC */

Definition at line 198 of file sb.h.

#define SB_DSP_MONO_16BIT   0xa4

Definition at line 159 of file sb.h.

#define SB_DSP_MONO_8BIT   0xa0

Definition at line 158 of file sb.h.

#define SB_DSP_OUTPUT   0x14

Definition at line 136 of file sb.h.

#define SB_DSP_PCM_DEV   0x04

Definition at line 188 of file sb.h.

#define SB_DSP_PLAYBACK_FILT   0x0e

Definition at line 195 of file sb.h.

#define SB_DSP_SAMPLE_RATE   0x40

Definition at line 155 of file sb.h.

#define SB_DSP_SAMPLE_RATE_IN   0x42

Definition at line 157 of file sb.h.

#define SB_DSP_SAMPLE_RATE_OUT   0x41

Definition at line 156 of file sb.h.

#define SB_DSP_SPEAKER_OFF   0xd3

Definition at line 148 of file sb.h.

#define SB_DSP_SPEAKER_ON   0xd1

Definition at line 147 of file sb.h.

#define SB_DSP_STEREO_16BIT   0xac

Definition at line 161 of file sb.h.

#define SB_DSP_STEREO_8BIT   0xa8

Definition at line 160 of file sb.h.

#define SB_DSP_STEREO_SW   0x0e

Definition at line 196 of file sb.h.

#define SB_DT019X_CAP_CD   0x02

Definition at line 237 of file sb.h.

#define SB_DT019X_CAP_LINE   0x06

Definition at line 239 of file sb.h.

#define SB_DT019X_CAP_MAIN   0x07

Definition at line 241 of file sb.h.

#define SB_DT019X_CAP_MIC   0x04

Definition at line 238 of file sb.h.

#define SB_DT019X_CAP_SYNTH   0x07

Definition at line 240 of file sb.h.

#define SB_DT019X_CAPTURE_SW   0x6c

Definition at line 235 of file sb.h.

#define SB_DT019X_CD_DEV   0x68

Definition at line 230 of file sb.h.

#define SB_DT019X_LINE_DEV   0x6e

Definition at line 233 of file sb.h.

#define SB_DT019X_MASTER_DEV   0x62

Definition at line 227 of file sb.h.

#define SB_DT019X_MIC_DEV   0x6a

Definition at line 231 of file sb.h.

#define SB_DT019X_OUTPUT_SW2   0x4c

Definition at line 234 of file sb.h.

#define SB_DT019X_PCM_DEV   0x64

Definition at line 228 of file sb.h.

#define SB_DT019X_SPKR_DEV   0x6a

Definition at line 232 of file sb.h.

#define SB_DT019X_SYNTH_DEV   0x66

Definition at line 229 of file sb.h.

#define SB_IRQSETUP_IRQ10   0x08

Definition at line 260 of file sb.h.

#define SB_IRQSETUP_IRQ5   0x02

Definition at line 258 of file sb.h.

#define SB_IRQSETUP_IRQ7   0x04

Definition at line 259 of file sb.h.

#define SB_IRQSETUP_IRQ9   0x01

Definition at line 257 of file sb.h.

#define SB_IRQTYPE_16BIT   0x02

Definition at line 264 of file sb.h.

#define SB_IRQTYPE_8BIT   0x01

Definition at line 263 of file sb.h.

#define SB_IRQTYPE_MPUIN   0x04

Definition at line 265 of file sb.h.

#define SB_MIXVAL_DOUBLE (   left_reg,
  right_reg,
  left_shift,
  right_shift,
  mask 
)    ((left_reg) | ((right_reg) << 8) | ((left_shift) << 16) | ((right_shift) << 19) | ((mask) << 24))

Definition at line 339 of file sb.h.

#define SB_MIXVAL_INPUT_SW (   reg1,
  reg2,
  left_shift,
  right_shift 
)    ((reg1) | ((reg2) << 8) | ((left_shift) << 16) | ((right_shift) << 24))

Definition at line 343 of file sb.h.

#define SB_MIXVAL_SINGLE (   reg,
  shift,
  mask 
)    ((reg) | ((shift) << 16) | ((mask) << 24))

Definition at line 341 of file sb.h.

#define SB_MODE_CAPTURE   (SB_MODE_CAPTURE_8 | SB_MODE_CAPTURE_16)

Definition at line 57 of file sb.h.

#define SB_MODE_CAPTURE_16   0x08

Definition at line 56 of file sb.h.

#define SB_MODE_CAPTURE_8   0x04

Definition at line 55 of file sb.h.

#define SB_MODE_HALT   0x00

Definition at line 51 of file sb.h.

#define SB_MODE_PLAYBACK   (SB_MODE_PLAYBACK_8 | SB_MODE_PLAYBACK_16)

Definition at line 54 of file sb.h.

#define SB_MODE_PLAYBACK_16   0x02

Definition at line 53 of file sb.h.

#define SB_MODE_PLAYBACK_8   0x01

Definition at line 52 of file sb.h.

#define SB_MPU_INPUT   1

Definition at line 63 of file sb.h.

#define SB_OPEN_MIDI_INPUT   0x02

Definition at line 46 of file sb.h.

#define SB_OPEN_MIDI_INPUT_TRIGGER   0x08

Definition at line 48 of file sb.h.

#define SB_OPEN_MIDI_OUTPUT   0x04

Definition at line 47 of file sb.h.

#define SB_OPEN_MIDI_OUTPUT_TRIGGER   0x10

Definition at line 49 of file sb.h.

#define SB_OPEN_PCM   0x01

Definition at line 45 of file sb.h.

#define SB_RATE_LOCK   (SB_RATE_LOCK_PLAYBACK | SB_RATE_LOCK_CAPTURE)

Definition at line 61 of file sb.h.

#define SB_RATE_LOCK_CAPTURE   0x20

Definition at line 60 of file sb.h.

#define SB_RATE_LOCK_PLAYBACK   0x10

Definition at line 59 of file sb.h.

#define SB_SINGLE (   xname,
  reg,
  shift,
  mask 
)
Value:
{ .name = xname, \
.type = SB_MIX_SINGLE, \
.private_value = SB_MIXVAL_SINGLE(reg, shift, mask) }

Definition at line 355 of file sb.h.

#define SBP (   chip,
  x 
)    ((chip)->port + s_b_SB_##x)

Definition at line 120 of file sb.h.

#define SBP1 (   port,
  x 
)    ((port) + s_b_SB_##x)

Definition at line 121 of file sb.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
SB_MIX_SINGLE 
SB_MIX_DOUBLE 
SB_MIX_INPUT_SW 
SB_MIX_CAPTURE_PRO 
SB_MIX_CAPTURE_DT019X 
SB_MIX_MONO_CAPTURE_ALS4K 

Definition at line 330 of file sb.h.

enum sb_hw_type
Enumerator:
SB_HW_AUTO 
SB_HW_10 
SB_HW_20 
SB_HW_201 
SB_HW_PRO 
SB_HW_JAZZ16 
SB_HW_16 
SB_HW_16CSP 
SB_HW_ALS100 
SB_HW_ALS4000 
SB_HW_DT019X 
SB_HW_CS5530 

Definition at line 30 of file sb.h.

Function Documentation

int snd_sb16dsp_configure ( struct snd_sb chip)

Definition at line 758 of file sb16_main.c.

struct snd_pcm_ops* snd_sb16dsp_get_pcm_ops ( int  direction)
read

Definition at line 900 of file sb16_main.c.

irqreturn_t snd_sb16dsp_interrupt ( int  irq,
void dev_id 
)

Definition at line 398 of file sb16_main.c.

int snd_sb16dsp_pcm ( struct snd_sb chip,
int  device,
struct snd_pcm **  rpcm 
)

Definition at line 869 of file sb16_main.c.

int snd_sb8_capture_close ( struct snd_pcm_substream substream)
int snd_sb8_capture_open ( struct snd_pcm_substream substream)
int snd_sb8_playback_close ( struct snd_pcm_substream substream)
int snd_sb8_playback_open ( struct snd_pcm_substream substream)
irqreturn_t snd_sb8dsp_interrupt ( struct snd_sb chip)

Definition at line 381 of file sb8_main.c.

int snd_sb8dsp_midi ( struct snd_sb chip,
int  device,
struct snd_rawmidi **  rrawmidi 
)

Definition at line 266 of file sb8_midi.c.

irqreturn_t snd_sb8dsp_midi_interrupt ( struct snd_sb chip)

Definition at line 35 of file sb8_midi.c.

int snd_sb8dsp_pcm ( struct snd_sb chip,
int  device,
struct snd_pcm **  rpcm 
)

Definition at line 597 of file sb8_main.c.

int snd_sbdsp_command ( struct snd_sb chip,
unsigned char  val 
)

Definition at line 44 of file sb_common.c.

int snd_sbdsp_create ( struct snd_card card,
unsigned long  port,
int  irq,
irq_handler_t  irq_handler,
int  dma8,
int  dma16,
unsigned short  hardware,
struct snd_sb **  r_chip 
)

Definition at line 211 of file sb_common.c.

int snd_sbdsp_get_byte ( struct snd_sb chip)

Definition at line 59 of file sb_common.c.

int snd_sbdsp_reset ( struct snd_sb chip)

Definition at line 76 of file sb_common.c.

int snd_sbmixer_add_ctl ( struct snd_sb chip,
const char name,
int  index,
int  type,
unsigned long  value 
)

Definition at line 473 of file sb_mixer.c.

int snd_sbmixer_new ( struct snd_sb chip)

Definition at line 758 of file sb_mixer.c.

unsigned char snd_sbmixer_read ( struct snd_sb chip,
unsigned char  reg 
)

Definition at line 42 of file sb_mixer.c.

void snd_sbmixer_write ( struct snd_sb chip,
unsigned char  reg,
unsigned char  data 
)

Definition at line 31 of file sb_mixer.c.