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

Go to the source code of this file.

Data Structures

struct  vx_rmh
 
struct  vx_ibl_info
 
struct  vx_pipe
 
struct  snd_vx_ops
 
struct  snd_vx_hardware
 
struct  vx_core
 

Macros

#define VX_DRIVER_VERSION   0x010000 /* 1.0.0 */
 
#define SIZE_MAX_CMD   0x10
 
#define SIZE_MAX_STATUS   0x10
 
#define VX_MAX_PIPES   16
 
#define VX_MAX_PERIODS   32
 
#define VX_MAX_CODECS   2
 
#define SND_VX_HWDEP_ID   "VX Loader"
 
#define VX_ANALOG_OUT_LEVEL_MAX   0xe3
 
#define vx_inb(chip, reg)   snd_vx_inb(chip, VX_##reg)
 
#define vx_outb(chip, reg, val)   snd_vx_outb(chip, VX_##reg,val)
 
#define vx_inl(chip, reg)   snd_vx_inl(chip, VX_##reg)
 
#define vx_outl(chip, reg, val)   snd_vx_outl(chip, VX_##reg,val)
 
#define vx_check_isr(chip, mask, bit, time)   snd_vx_check_reg_bit(chip, VX_ISR, mask, bit, time)
 
#define vx_wait_isr_bit(chip, bit)   vx_check_isr(chip, bit, bit, 200)
 
#define vx_wait_for_rx_full(chip)   vx_wait_isr_bit(chip, ISR_RX_FULL)
 
#define VX_ERR_MASK   0x1000000
 
#define vx_get_error(err)   (-(err) & ~VX_ERR_MASK)
 
#define vx_has_new_dsp(chip)   ((chip)->type != VX_TYPE_BOARD)
 
#define vx_is_pcmcia(chip)   ((chip)->type >= VX_TYPE_VXPOCKET)
 
#define ICR_HF1   0x10
 
#define ICR_HF0   0x08
 
#define ICR_TREQ   0x02 /* Interrupt mode + HREQ set on for transfer (->DSP) request */
 
#define ICR_RREQ   0x01 /* Interrupt mode + RREQ set on for transfer (->PC) request */
 
#define CVR_HC   0x80
 
#define ISR_HF3   0x10
 
#define ISR_HF2   0x08
 
#define ISR_CHK   0x10
 
#define ISR_ERR   0x08
 
#define ISR_TX_READY   0x04
 
#define ISR_TX_EMPTY   0x02
 
#define ISR_RX_FULL   0x01
 
#define VX_DATA_CODEC_MASK   0x80
 
#define VX_DATA_XICOR_MASK   0x80
 
#define VX_SUER_FREQ_MASK   0x0c
 
#define VX_SUER_FREQ_32KHz_MASK   0x0c
 
#define VX_SUER_FREQ_44KHz_MASK   0x00
 
#define VX_SUER_FREQ_48KHz_MASK   0x04
 
#define VX_SUER_DATA_PRESENT_MASK   0x02
 
#define VX_SUER_CLOCK_PRESENT_MASK   0x01
 
#define VX_CUER_HH_BITC_SEL_MASK   0x08
 
#define VX_CUER_MH_BITC_SEL_MASK   0x04
 
#define VX_CUER_ML_BITC_SEL_MASK   0x02
 
#define VX_CUER_LL_BITC_SEL_MASK   0x01
 
#define XX_UER_CBITS_OFFSET_MASK   0x1f
 
#define VX_AUDIO_INFO_REAL_TIME   (1<<0) /* real-time processing available */
 
#define VX_AUDIO_INFO_OFFLINE   (1<<1) /* offline processing available */
 
#define VX_AUDIO_INFO_MPEG1   (1<<5)
 
#define VX_AUDIO_INFO_MPEG2   (1<<6)
 
#define VX_AUDIO_INFO_LINEAR_8   (1<<7)
 
#define VX_AUDIO_INFO_LINEAR_16   (1<<8)
 
#define VX_AUDIO_INFO_LINEAR_24   (1<<9)
 
#define VXP_IRQ_OFFSET   0x40 /* add 0x40 offset for vxpocket and vx222/v2 */
 
#define IRQ_MESS_WRITE_END   0x30
 
#define IRQ_MESS_WRITE_NEXT   0x32
 
#define IRQ_MESS_READ_NEXT   0x34
 
#define IRQ_MESS_READ_END   0x36
 
#define IRQ_MESSAGE   0x38
 
#define IRQ_RESET_CHK   0x3A
 
#define IRQ_CONNECT_STREAM_NEXT   0x26
 
#define IRQ_CONNECT_STREAM_END   0x28
 
#define IRQ_PAUSE_START_CONNECT   0x2A
 
#define IRQ_END_CONNECTION   0x2C
 
#define ASYNC_EVENTS_PENDING   0x008000
 
#define HBUFFER_EVENTS_PENDING   0x004000
 
#define NOTIF_EVENTS_PENDING   0x002000
 
#define TIME_CODE_EVENT_PENDING   0x001000
 
#define FREQUENCY_CHANGE_EVENT_PENDING   0x000800
 
#define END_OF_BUFFER_EVENTS_PENDING   0x000400
 
#define FATAL_DSP_ERROR   0xff0000
 
#define HEADER_FMT_BASE   0xFED00000
 
#define HEADER_FMT_MONO   0x000000C0
 
#define HEADER_FMT_INTEL   0x00008000
 
#define HEADER_FMT_16BITS   0x00002000
 
#define HEADER_FMT_24BITS   0x00004000
 
#define HEADER_FMT_UPTO11   0x00000200 /* frequency is less or equ. to 11k.*/
 
#define HEADER_FMT_UPTO32   0x00000100 /* frequency is over 11k and less then 32k.*/
 
#define XX_CODEC_SELECTOR   0x20
 
#define XX_CODEC_ADC_CONTROL_REGISTER   0x01
 
#define XX_CODEC_DAC_CONTROL_REGISTER   0x02
 
#define XX_CODEC_LEVEL_LEFT_REGISTER   0x03
 
#define XX_CODEC_LEVEL_RIGHT_REGISTER   0x04
 
#define XX_CODEC_PORT_MODE_REGISTER   0x05
 
#define XX_CODEC_STATUS_REPORT_REGISTER   0x06
 
#define XX_CODEC_CLOCK_CONTROL_REGISTER   0x07
 
#define CVAL_M110DB   0x000 /* -110dB */
 
#define CVAL_M99DB   0x02C
 
#define CVAL_M21DB   0x163
 
#define CVAL_M18DB   0x16F
 
#define CVAL_M10DB   0x18F
 
#define CVAL_0DB   0x1B7
 
#define CVAL_18DB   0x1FF /* +18dB */
 
#define CVAL_MAX   0x1FF
 
#define AUDIO_IO_HAS_MUTE_LEVEL   0x400000
 
#define AUDIO_IO_HAS_MUTE_MONITORING_1   0x200000
 
#define AUDIO_IO_HAS_MUTE_MONITORING_2   0x100000
 
#define VALID_AUDIO_IO_DIGITAL_LEVEL   0x01
 
#define VALID_AUDIO_IO_MONITORING_LEVEL   0x02
 
#define VALID_AUDIO_IO_MUTE_LEVEL   0x04
 
#define VALID_AUDIO_IO_MUTE_MONITORING_1   0x08
 
#define VALID_AUDIO_IO_MUTE_MONITORING_2   0x10
 

Typedefs

typedef u64 pcx_time_t
 

Enumerations

enum  {
  VX_TYPE_BOARD, VX_TYPE_V2, VX_TYPE_MIC, VX_TYPE_VXPOCKET,
  VX_TYPE_VXP440, VX_TYPE_NUMS
}
 
enum  {
  VX_STAT_XILINX_LOADED = (1 << 0), VX_STAT_DEVICE_INIT = (1 << 1), VX_STAT_CHIP_INIT = (1 << 2), VX_STAT_IN_SUSPEND = (1 << 10),
  VX_STAT_IS_STALE = (1 << 15)
}
 
enum  { VX_AUDIO_SRC_DIGITAL, VX_AUDIO_SRC_LINE, VX_AUDIO_SRC_MIC }
 
enum  { INTERNAL_QUARTZ, UER_SYNC }
 
enum  { VX_CLOCK_MODE_AUTO, VX_CLOCK_MODE_INTERNAL, VX_CLOCK_MODE_EXTERNAL }
 
enum  { VX_UER_MODE_CONSUMER, VX_UER_MODE_PROFESSIONAL, VX_UER_MODE_NOT_PRESENT }
 
enum  {
  VX_ICR, VX_CVR, VX_ISR, VX_IVR,
  VX_RXH, VX_TXH = VX_RXH, VX_RXM, VX_TXM = VX_RXM,
  VX_RXL, VX_TXL = VX_RXL, VX_DMA, VX_CDSP,
  VX_RFREQ, VX_RUER_V2, VX_GAIN, VX_DATA = VX_GAIN,
  VX_MEMIRQ, VX_ACQ, VX_BIT0, VX_BIT1,
  VX_MIC0, VX_MIC1, VX_MIC2, VX_MIC3,
  VX_PLX0, VX_PLX1, VX_PLX2, VX_LOFREQ,
  VX_HIFREQ, VX_CSUER, VX_RUER, VX_REG_MAX,
  VX_RESET_DMA = VX_ISR, VX_CFG = VX_RFREQ, VX_STATUS = VX_MEMIRQ, VX_SELMIC = VX_MIC0,
  VX_COMPOT = VX_MIC1, VX_SCOMPR = VX_MIC2, VX_GLIMIT = VX_MIC3, VX_INTCSR = VX_PLX0,
  VX_CNTRL = VX_PLX1, VX_GPIOC = VX_PLX2, VX_MICRO = VX_MEMIRQ, VX_CODEC2 = VX_MEMIRQ,
  VX_DIALOG = VX_ACQ
}
 
enum  { RMH_SSIZE_FIXED = 0, RMH_SSIZE_ARG = 1, RMH_SSIZE_MASK = 2 }
 

Functions

struct vx_coresnd_vx_create (struct snd_card *card, struct snd_vx_hardware *hw, struct snd_vx_ops *ops, int extra_size)
 
int snd_vx_setup_firmware (struct vx_core *chip)
 
int snd_vx_load_boot_image (struct vx_core *chip, const struct firmware *dsp)
 
int snd_vx_dsp_boot (struct vx_core *chip, const struct firmware *dsp)
 
int snd_vx_dsp_load (struct vx_core *chip, const struct firmware *dsp)
 
void snd_vx_free_firmware (struct vx_core *chip)
 
irqreturn_t snd_vx_irq_handler (int irq, void *dev)
 
int vx_send_msg (struct vx_core *chip, struct vx_rmh *rmh)
 
int vx_send_msg_nolock (struct vx_core *chip, struct vx_rmh *rmh)
 
int vx_send_rih (struct vx_core *chip, int cmd)
 
int vx_send_rih_nolock (struct vx_core *chip, int cmd)
 
void vx_reset_codec (struct vx_core *chip, int cold_reset)
 
int snd_vx_check_reg_bit (struct vx_core *chip, int reg, int mask, int bit, int time)
 
int snd_vx_pcm_new (struct vx_core *chip)
 
void vx_pcm_update_intr (struct vx_core *chip, unsigned int events)
 
int snd_vx_mixer_new (struct vx_core *chip)
 
void vx_toggle_dac_mute (struct vx_core *chip, int mute)
 
int vx_sync_audio_source (struct vx_core *chip)
 
int vx_set_monitor_level (struct vx_core *chip, int audio, int level, int active)
 
void vx_set_iec958_status (struct vx_core *chip, unsigned int bits)
 
int vx_set_clock (struct vx_core *chip, unsigned int freq)
 
void vx_set_internal_clock (struct vx_core *chip, unsigned int freq)
 
int vx_change_frequency (struct vx_core *chip)
 
int snd_vx_suspend (struct vx_core *card)
 
int snd_vx_resume (struct vx_core *card)
 

Macro Definition Documentation

#define ASYNC_EVENTS_PENDING   0x008000

Definition at line 507 of file vx_core.h.

#define AUDIO_IO_HAS_MUTE_LEVEL   0x400000

Definition at line 547 of file vx_core.h.

#define AUDIO_IO_HAS_MUTE_MONITORING_1   0x200000

Definition at line 548 of file vx_core.h.

#define AUDIO_IO_HAS_MUTE_MONITORING_2   0x100000

Definition at line 549 of file vx_core.h.

#define CVAL_0DB   0x1B7

Definition at line 543 of file vx_core.h.

#define CVAL_18DB   0x1FF /* +18dB */

Definition at line 544 of file vx_core.h.

#define CVAL_M10DB   0x18F

Definition at line 542 of file vx_core.h.

#define CVAL_M110DB   0x000 /* -110dB */

Definition at line 538 of file vx_core.h.

#define CVAL_M18DB   0x16F

Definition at line 541 of file vx_core.h.

#define CVAL_M21DB   0x163

Definition at line 540 of file vx_core.h.

#define CVAL_M99DB   0x02C

Definition at line 539 of file vx_core.h.

#define CVAL_MAX   0x1FF

Definition at line 545 of file vx_core.h.

#define CVR_HC   0x80

Definition at line 452 of file vx_core.h.

#define END_OF_BUFFER_EVENTS_PENDING   0x000400

Definition at line 512 of file vx_core.h.

#define FATAL_DSP_ERROR   0xff0000

Definition at line 513 of file vx_core.h.

#define FREQUENCY_CHANGE_EVENT_PENDING   0x000800

Definition at line 511 of file vx_core.h.

#define HBUFFER_EVENTS_PENDING   0x004000

Definition at line 508 of file vx_core.h.

#define HEADER_FMT_16BITS   0x00002000

Definition at line 519 of file vx_core.h.

#define HEADER_FMT_24BITS   0x00004000

Definition at line 520 of file vx_core.h.

#define HEADER_FMT_BASE   0xFED00000

Definition at line 516 of file vx_core.h.

#define HEADER_FMT_INTEL   0x00008000

Definition at line 518 of file vx_core.h.

#define HEADER_FMT_MONO   0x000000C0

Definition at line 517 of file vx_core.h.

#define HEADER_FMT_UPTO11   0x00000200 /* frequency is less or equ. to 11k.*/

Definition at line 521 of file vx_core.h.

#define HEADER_FMT_UPTO32   0x00000100 /* frequency is over 11k and less then 32k.*/

Definition at line 522 of file vx_core.h.

#define ICR_HF0   0x08

Definition at line 447 of file vx_core.h.

#define ICR_HF1   0x10

Definition at line 446 of file vx_core.h.

#define ICR_RREQ   0x01 /* Interrupt mode + RREQ set on for transfer (->PC) request */

Definition at line 449 of file vx_core.h.

#define ICR_TREQ   0x02 /* Interrupt mode + HREQ set on for transfer (->DSP) request */

Definition at line 448 of file vx_core.h.

#define IRQ_CONNECT_STREAM_END   0x28

Definition at line 502 of file vx_core.h.

#define IRQ_CONNECT_STREAM_NEXT   0x26

Definition at line 501 of file vx_core.h.

#define IRQ_END_CONNECTION   0x2C

Definition at line 504 of file vx_core.h.

#define IRQ_MESS_READ_END   0x36

Definition at line 498 of file vx_core.h.

#define IRQ_MESS_READ_NEXT   0x34

Definition at line 497 of file vx_core.h.

#define IRQ_MESS_WRITE_END   0x30

Definition at line 495 of file vx_core.h.

#define IRQ_MESS_WRITE_NEXT   0x32

Definition at line 496 of file vx_core.h.

#define IRQ_MESSAGE   0x38

Definition at line 499 of file vx_core.h.

#define IRQ_PAUSE_START_CONNECT   0x2A

Definition at line 503 of file vx_core.h.

#define IRQ_RESET_CHK   0x3A

Definition at line 500 of file vx_core.h.

#define ISR_CHK   0x10

Definition at line 457 of file vx_core.h.

#define ISR_ERR   0x08

Definition at line 458 of file vx_core.h.

#define ISR_HF2   0x08

Definition at line 456 of file vx_core.h.

#define ISR_HF3   0x10

Definition at line 455 of file vx_core.h.

#define ISR_RX_FULL   0x01

Definition at line 461 of file vx_core.h.

#define ISR_TX_EMPTY   0x02

Definition at line 460 of file vx_core.h.

#define ISR_TX_READY   0x04

Definition at line 459 of file vx_core.h.

#define NOTIF_EVENTS_PENDING   0x002000

Definition at line 509 of file vx_core.h.

#define SIZE_MAX_CMD   0x10

Definition at line 43 of file vx_core.h.

#define SIZE_MAX_STATUS   0x10

Definition at line 44 of file vx_core.h.

#define SND_VX_HWDEP_ID   "VX Loader"

Definition at line 135 of file vx_core.h.

#define TIME_CODE_EVENT_PENDING   0x001000

Definition at line 510 of file vx_core.h.

#define VALID_AUDIO_IO_DIGITAL_LEVEL   0x01

Definition at line 550 of file vx_core.h.

#define VALID_AUDIO_IO_MONITORING_LEVEL   0x02

Definition at line 551 of file vx_core.h.

#define VALID_AUDIO_IO_MUTE_LEVEL   0x04

Definition at line 552 of file vx_core.h.

#define VALID_AUDIO_IO_MUTE_MONITORING_1   0x08

Definition at line 553 of file vx_core.h.

#define VALID_AUDIO_IO_MUTE_MONITORING_2   0x10

Definition at line 554 of file vx_core.h.

#define VX_ANALOG_OUT_LEVEL_MAX   0xe3

Definition at line 159 of file vx_core.h.

#define VX_AUDIO_INFO_LINEAR_16   (1<<8)

Definition at line 489 of file vx_core.h.

#define VX_AUDIO_INFO_LINEAR_24   (1<<9)

Definition at line 490 of file vx_core.h.

#define VX_AUDIO_INFO_LINEAR_8   (1<<7)

Definition at line 488 of file vx_core.h.

#define VX_AUDIO_INFO_MPEG1   (1<<5)

Definition at line 486 of file vx_core.h.

#define VX_AUDIO_INFO_MPEG2   (1<<6)

Definition at line 487 of file vx_core.h.

#define VX_AUDIO_INFO_OFFLINE   (1<<1) /* offline processing available */

Definition at line 485 of file vx_core.h.

#define VX_AUDIO_INFO_REAL_TIME   (1<<0) /* real-time processing available */

Definition at line 484 of file vx_core.h.

#define vx_check_isr (   chip,
  mask,
  bit,
  time 
)    snd_vx_check_reg_bit(chip, VX_ISR, mask, bit, time)

Definition at line 289 of file vx_core.h.

#define VX_CUER_HH_BITC_SEL_MASK   0x08

Definition at line 475 of file vx_core.h.

#define VX_CUER_LL_BITC_SEL_MASK   0x01

Definition at line 478 of file vx_core.h.

#define VX_CUER_MH_BITC_SEL_MASK   0x04

Definition at line 476 of file vx_core.h.

#define VX_CUER_ML_BITC_SEL_MASK   0x02

Definition at line 477 of file vx_core.h.

#define VX_DATA_CODEC_MASK   0x80

Definition at line 464 of file vx_core.h.

#define VX_DATA_XICOR_MASK   0x80

Definition at line 465 of file vx_core.h.

#define VX_DRIVER_VERSION   0x010000 /* 1.0.0 */

Definition at line 39 of file vx_core.h.

#define VX_ERR_MASK   0x1000000

Definition at line 314 of file vx_core.h.

#define vx_get_error (   err)    (-(err) & ~VX_ERR_MASK)

Definition at line 315 of file vx_core.h.

#define vx_has_new_dsp (   chip)    ((chip)->type != VX_TYPE_BOARD)

Definition at line 351 of file vx_core.h.

#define vx_inb (   chip,
  reg 
)    snd_vx_inb(chip, VX_##reg)

Definition at line 266 of file vx_core.h.

#define vx_inl (   chip,
  reg 
)    snd_vx_inl(chip, VX_##reg)

Definition at line 268 of file vx_core.h.

#define vx_is_pcmcia (   chip)    ((chip)->type >= VX_TYPE_VXPOCKET)

Definition at line 352 of file vx_core.h.

#define VX_MAX_CODECS   2

Definition at line 58 of file vx_core.h.

#define VX_MAX_PERIODS   32

Definition at line 57 of file vx_core.h.

#define VX_MAX_PIPES   16

Definition at line 56 of file vx_core.h.

#define vx_outb (   chip,
  reg,
  val 
)    snd_vx_outb(chip, VX_##reg,val)

Definition at line 267 of file vx_core.h.

#define vx_outl (   chip,
  reg,
  val 
)    snd_vx_outl(chip, VX_##reg,val)

Definition at line 269 of file vx_core.h.

#define VX_SUER_CLOCK_PRESENT_MASK   0x01

Definition at line 473 of file vx_core.h.

#define VX_SUER_DATA_PRESENT_MASK   0x02

Definition at line 472 of file vx_core.h.

#define VX_SUER_FREQ_32KHz_MASK   0x0c

Definition at line 469 of file vx_core.h.

#define VX_SUER_FREQ_44KHz_MASK   0x00

Definition at line 470 of file vx_core.h.

#define VX_SUER_FREQ_48KHz_MASK   0x04

Definition at line 471 of file vx_core.h.

#define VX_SUER_FREQ_MASK   0x0c

Definition at line 468 of file vx_core.h.

#define vx_wait_for_rx_full (   chip)    vx_wait_isr_bit(chip, ISR_RX_FULL)

Definition at line 291 of file vx_core.h.

#define vx_wait_isr_bit (   chip,
  bit 
)    vx_check_isr(chip, bit, bit, 200)

Definition at line 290 of file vx_core.h.

#define VXP_IRQ_OFFSET   0x40 /* add 0x40 offset for vxpocket and vx222/v2 */

Definition at line 493 of file vx_core.h.

#define XX_CODEC_ADC_CONTROL_REGISTER   0x01

Definition at line 527 of file vx_core.h.

#define XX_CODEC_CLOCK_CONTROL_REGISTER   0x07

Definition at line 533 of file vx_core.h.

#define XX_CODEC_DAC_CONTROL_REGISTER   0x02

Definition at line 528 of file vx_core.h.

#define XX_CODEC_LEVEL_LEFT_REGISTER   0x03

Definition at line 529 of file vx_core.h.

#define XX_CODEC_LEVEL_RIGHT_REGISTER   0x04

Definition at line 530 of file vx_core.h.

#define XX_CODEC_PORT_MODE_REGISTER   0x05

Definition at line 531 of file vx_core.h.

#define XX_CODEC_SELECTOR   0x20

Definition at line 525 of file vx_core.h.

#define XX_CODEC_STATUS_REPORT_REGISTER   0x06

Definition at line 532 of file vx_core.h.

#define XX_UER_CBITS_OFFSET_MASK   0x1f

Definition at line 480 of file vx_core.h.

Typedef Documentation

typedef u64 pcx_time_t

Definition at line 54 of file vx_core.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
VX_TYPE_BOARD 
VX_TYPE_V2 
VX_TYPE_MIC 
VX_TYPE_VXPOCKET 
VX_TYPE_VXP440 
VX_TYPE_NUMS 

Definition at line 138 of file vx_core.h.

anonymous enum
Enumerator:
VX_STAT_XILINX_LOADED 
VX_STAT_DEVICE_INIT 
VX_STAT_CHIP_INIT 
VX_STAT_IN_SUSPEND 
VX_STAT_IS_STALE 

Definition at line 150 of file vx_core.h.

anonymous enum
Enumerator:
VX_AUDIO_SRC_DIGITAL 
VX_AUDIO_SRC_LINE 
VX_AUDIO_SRC_MIC 

Definition at line 355 of file vx_core.h.

anonymous enum
Enumerator:
INTERNAL_QUARTZ 
UER_SYNC 

Definition at line 362 of file vx_core.h.

anonymous enum
Enumerator:
VX_CLOCK_MODE_AUTO 
VX_CLOCK_MODE_INTERNAL 
VX_CLOCK_MODE_EXTERNAL 

Definition at line 368 of file vx_core.h.

anonymous enum
Enumerator:
VX_UER_MODE_CONSUMER 
VX_UER_MODE_PROFESSIONAL 
VX_UER_MODE_NOT_PRESENT 

Definition at line 375 of file vx_core.h.

anonymous enum
Enumerator:
VX_ICR 
VX_CVR 
VX_ISR 
VX_IVR 
VX_RXH 
VX_TXH 
VX_RXM 
VX_TXM 
VX_RXL 
VX_TXL 
VX_DMA 
VX_CDSP 
VX_RFREQ 
VX_RUER_V2 
VX_GAIN 
VX_DATA 
VX_MEMIRQ 
VX_ACQ 
VX_BIT0 
VX_BIT1 
VX_MIC0 
VX_MIC1 
VX_MIC2 
VX_MIC3 
VX_PLX0 
VX_PLX1 
VX_PLX2 
VX_LOFREQ 
VX_HIFREQ 
VX_CSUER 
VX_RUER 
VX_REG_MAX 
VX_RESET_DMA 
VX_CFG 
VX_STATUS 
VX_SELMIC 
VX_COMPOT 
VX_SCOMPR 
VX_GLIMIT 
VX_INTCSR 
VX_CNTRL 
VX_GPIOC 
VX_MICRO 
VX_CODEC2 
VX_DIALOG 

Definition at line 382 of file vx_core.h.

anonymous enum
Enumerator:
RMH_SSIZE_FIXED 
RMH_SSIZE_ARG 
RMH_SSIZE_MASK 

Definition at line 438 of file vx_core.h.

Function Documentation

int snd_vx_check_reg_bit ( struct vx_core chip,
int  reg,
int  mask,
int  bit,
int  time 
)

Definition at line 52 of file vx_core.c.

struct vx_core* snd_vx_create ( struct snd_card card,
struct snd_vx_hardware hw,
struct snd_vx_ops ops,
int  extra_size 
)
read

snd_vx_create - constructor for struct vx_core : hardware specific record

this function allocates the instance and prepare for the hardware initialization.

return the instance pointer if successful, NULL in error.

Definition at line 780 of file vx_core.c.

int snd_vx_dsp_boot ( struct vx_core chip,
const struct firmware boot 
)

snd_vx_dsp_boot - load the DSP boot

Definition at line 655 of file vx_core.c.

int snd_vx_dsp_load ( struct vx_core chip,
const struct firmware dsp 
)

snd_vx_dsp_load - load the DSP image

Definition at line 675 of file vx_core.c.

void snd_vx_free_firmware ( struct vx_core chip)

Definition at line 248 of file vx_hwdep.c.

irqreturn_t snd_vx_irq_handler ( int  irq,
void dev 
)

snd_vx_irq_handler - interrupt handler

Definition at line 544 of file vx_core.c.

int snd_vx_load_boot_image ( struct vx_core chip,
const struct firmware boot 
)

snd_vx_boot_xilinx - boot up the xilinx interface : the boot record to load

Definition at line 424 of file vx_core.c.

int snd_vx_mixer_new ( struct vx_core chip)

Definition at line 934 of file vx_mixer.c.

int snd_vx_pcm_new ( struct vx_core chip)

Definition at line 1251 of file vx_pcm.c.

int snd_vx_resume ( struct vx_core card)
int snd_vx_setup_firmware ( struct vx_core chip)

Definition at line 228 of file vx_hwdep.c.

int snd_vx_suspend ( struct vx_core card)
int vx_change_frequency ( struct vx_core chip)

Definition at line 289 of file vx_uer.c.

void vx_pcm_update_intr ( struct vx_core chip,
unsigned int  events 
)

Definition at line 1136 of file vx_pcm.c.

void vx_reset_codec ( struct vx_core chip,
int  cold_reset 
)

Definition at line 145 of file vx_mixer.c.

int vx_send_msg ( struct vx_core chip,
struct vx_rmh rmh 
)

Definition at line 347 of file vx_core.c.

int vx_send_msg_nolock ( struct vx_core chip,
struct vx_rmh rmh 
)

Definition at line 242 of file vx_core.c.

int vx_send_rih ( struct vx_core chip,
int  cmd 
)

Definition at line 407 of file vx_core.c.

int vx_send_rih_nolock ( struct vx_core chip,
int  cmd 
)

Definition at line 370 of file vx_core.c.

int vx_set_clock ( struct vx_core chip,
unsigned int  freq 
)

Definition at line 247 of file vx_uer.c.

void vx_set_iec958_status ( struct vx_core chip,
unsigned int  bits 
)

Definition at line 232 of file vx_uer.c.

void vx_set_internal_clock ( struct vx_core chip,
unsigned int  freq 
)

Definition at line 209 of file vx_uer.c.

int vx_set_monitor_level ( struct vx_core chip,
int  audio,
int  level,
int  active 
)

Definition at line 287 of file vx_mixer.c.

int vx_sync_audio_source ( struct vx_core chip)

Definition at line 196 of file vx_mixer.c.

void vx_toggle_dac_mute ( struct vx_core chip,
int  mute 
)

Definition at line 130 of file vx_mixer.c.