Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
ak4531_codec.c File Reference
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/mutex.h>
#include <linux/module.h>
#include <sound/core.h>
#include <sound/ak4531_codec.h>
#include <sound/tlv.h>

Go to the source code of this file.

Macros

#define snd_ak4531_proc_init(card, ak)
 
#define AK4531_SINGLE(xname, xindex, reg, shift, mask, invert)
 
#define AK4531_SINGLE_TLV(xname, xindex, reg, shift, mask, invert, xtlv)
 
#define AK4531_DOUBLE(xname, xindex, left_reg, right_reg, left_shift, right_shift, mask, invert)
 
#define AK4531_DOUBLE_TLV(xname, xindex, left_reg, right_reg, left_shift, right_shift, mask, invert, xtlv)
 
#define AK4531_INPUT_SW(xname, xindex, reg1, reg2, left_shift, right_shift)
 

Functions

int __devinit snd_ak4531_mixer (struct snd_card *card, struct snd_ak4531 *_ak4531, struct snd_ak4531 **rak4531)
 

Macro Definition Documentation

#define AK4531_DOUBLE (   xname,
  xindex,
  left_reg,
  right_reg,
  left_shift,
  right_shift,
  mask,
  invert 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.info = snd_ak4531_info_double, \
.get = snd_ak4531_get_double, .put = snd_ak4531_put_double, \
.private_value = left_reg | (right_reg << 8) | (left_shift << 16) | (right_shift << 19) | (mask << 24) | (invert << 22) }

Definition at line 132 of file ak4531_codec.c.

#define AK4531_DOUBLE_TLV (   xname,
  xindex,
  left_reg,
  right_reg,
  left_shift,
  right_shift,
  mask,
  invert,
  xtlv 
)
Value:
.name = xname, .index = xindex, \
.info = snd_ak4531_info_double, \
.get = snd_ak4531_get_double, .put = snd_ak4531_put_double, \
.private_value = left_reg | (right_reg << 8) | (left_shift << 16) | (right_shift << 19) | (mask << 24) | (invert << 22), \
.tlv = { .p = (xtlv) } }

Definition at line 137 of file ak4531_codec.c.

#define AK4531_INPUT_SW (   xname,
  xindex,
  reg1,
  reg2,
  left_shift,
  right_shift 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.info = snd_ak4531_info_input_sw, \
.get = snd_ak4531_get_input_sw, .put = snd_ak4531_put_input_sw, \
.private_value = reg1 | (reg2 << 8) | (left_shift << 16) | (right_shift << 24) }

Definition at line 217 of file ak4531_codec.c.

#define AK4531_SINGLE (   xname,
  xindex,
  reg,
  shift,
  mask,
  invert 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
.info = snd_ak4531_info_single, \
.get = snd_ak4531_get_single, .put = snd_ak4531_put_single, \
.private_value = reg | (shift << 16) | (mask << 24) | (invert << 22) }

Definition at line 65 of file ak4531_codec.c.

#define AK4531_SINGLE_TLV (   xname,
  xindex,
  reg,
  shift,
  mask,
  invert,
  xtlv 
)
Value:
.name = xname, .index = xindex, \
.info = snd_ak4531_info_single, \
.get = snd_ak4531_get_single, .put = snd_ak4531_put_single, \
.private_value = reg | (shift << 16) | (mask << 24) | (invert << 22), \
.tlv = { .p = (xtlv) } }

Definition at line 70 of file ak4531_codec.c.

#define snd_ak4531_proc_init (   card,
  ak 
)

Definition at line 41 of file ak4531_codec.c.

Function Documentation

int __devinit snd_ak4531_mixer ( struct snd_card card,
struct snd_ak4531 _ak4531,
struct snd_ak4531 **  rak4531 
)

Definition at line 386 of file ak4531_codec.c.