Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
hda_auto_parser.h File Reference

Go to the source code of this file.

Data Structures

struct  auto_pin_cfg_item
 
struct  auto_pin_cfg
 
struct  hda_gen_spec
 
struct  hda_pintbl
 
struct  hda_model_fixup
 
struct  hda_fixup
 

Macros

#define AUTO_CFG_MAX_OUTS   HDA_MAX_OUTS
 
#define AUTO_CFG_MAX_INS   8
 
#define HDA_PINCFG_NO_HP_FIXUP   (1 << 0) /* no HP-split */
 
#define HDA_PINCFG_NO_LO_FIXUP   (1 << 1) /* don't take other outs as LO */
 
#define snd_hda_parse_pin_def_config(codec, cfg, ignore)   snd_hda_parse_pin_defcfg(codec, cfg, ignore, 0)
 

Enumerations

enum  {
  AUTO_PIN_MIC, AUTO_PIN_LINE_IN, AUTO_PIN_CD, AUTO_PIN_AUX,
  AUTO_PIN_LAST
}
 
enum  { AUTO_PIN_LINE_OUT, AUTO_PIN_SPEAKER_OUT, AUTO_PIN_HP_OUT }
 
enum  {
  INPUT_PIN_ATTR_UNUSED, INPUT_PIN_ATTR_INT, INPUT_PIN_ATTR_DOCK, INPUT_PIN_ATTR_NORMAL,
  INPUT_PIN_ATTR_FRONT, INPUT_PIN_ATTR_REAR
}
 
enum  { HDA_FIXUP_INVALID, HDA_FIXUP_PINS, HDA_FIXUP_VERBS, HDA_FIXUP_FUNC }
 
enum  { HDA_FIXUP_ACT_PRE_PROBE, HDA_FIXUP_ACT_PROBE, HDA_FIXUP_ACT_INIT, HDA_FIXUP_ACT_BUILD }
 

Functions

const charhda_get_autocfg_input_label (struct hda_codec *codec, const struct auto_pin_cfg *cfg, int input)
 
int snd_hda_get_pin_label (struct hda_codec *codec, hda_nid_t nid, const struct auto_pin_cfg *cfg, char *label, int maxlen, int *indexp)
 
int snd_hda_get_input_pin_attr (unsigned int def_conf)
 
int snd_hda_parse_pin_defcfg (struct hda_codec *codec, struct auto_pin_cfg *cfg, const hda_nid_t *ignore_nids, unsigned int cond_flags)
 
int snd_hda_gen_add_verbs (struct hda_gen_spec *spec, const struct hda_verb *list)
 
void snd_hda_gen_apply_verbs (struct hda_codec *codec)
 
void snd_hda_apply_pincfgs (struct hda_codec *codec, const struct hda_pintbl *cfg)
 
void snd_hda_apply_fixup (struct hda_codec *codec, int action)
 
void snd_hda_pick_fixup (struct hda_codec *codec, const struct hda_model_fixup *models, const struct snd_pci_quirk *quirk, const struct hda_fixup *fixlist)
 

Macro Definition Documentation

#define AUTO_CFG_MAX_INS   8

Definition at line 34 of file hda_auto_parser.h.

#define AUTO_CFG_MAX_OUTS   HDA_MAX_OUTS

Definition at line 33 of file hda_auto_parser.h.

#define HDA_PINCFG_NO_HP_FIXUP   (1 << 0) /* no HP-split */

Definition at line 80 of file hda_auto_parser.h.

#define HDA_PINCFG_NO_LO_FIXUP   (1 << 1) /* don't take other outs as LO */

Definition at line 81 of file hda_auto_parser.h.

#define snd_hda_parse_pin_def_config (   codec,
  cfg,
  ignore 
)    snd_hda_parse_pin_defcfg(codec, cfg, ignore, 0)

Definition at line 89 of file hda_auto_parser.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
AUTO_PIN_MIC 
AUTO_PIN_LINE_IN 
AUTO_PIN_CD 
AUTO_PIN_AUX 
AUTO_PIN_LAST 

Definition at line 19 of file hda_auto_parser.h.

anonymous enum
Enumerator:
AUTO_PIN_LINE_OUT 
AUTO_PIN_SPEAKER_OUT 
AUTO_PIN_HP_OUT 

Definition at line 27 of file hda_auto_parser.h.

anonymous enum
Enumerator:
INPUT_PIN_ATTR_UNUSED 
INPUT_PIN_ATTR_INT 
INPUT_PIN_ATTR_DOCK 
INPUT_PIN_ATTR_NORMAL 
INPUT_PIN_ATTR_FRONT 
INPUT_PIN_ATTR_REAR 

Definition at line 49 of file hda_auto_parser.h.

anonymous enum
Enumerator:
HDA_FIXUP_INVALID 
HDA_FIXUP_PINS 
HDA_FIXUP_VERBS 
HDA_FIXUP_FUNC 

Definition at line 134 of file hda_auto_parser.h.

anonymous enum
Enumerator:
HDA_FIXUP_ACT_PRE_PROBE 
HDA_FIXUP_ACT_PROBE 
HDA_FIXUP_ACT_INIT 
HDA_FIXUP_ACT_BUILD 

Definition at line 142 of file hda_auto_parser.h.

Function Documentation

const char* hda_get_autocfg_input_label ( struct hda_codec codec,
const struct auto_pin_cfg cfg,
int  input 
)

hda_get_autocfg_input_label - Get a label for the given input

Get a label for the given input pin defined by the autocfg item. Unlike hda_get_input_pin_label(), this function checks all inputs defined in autocfg and avoids the redundant mic/line prefix as much as possible.

Definition at line 452 of file hda_auto_parser.c.

void snd_hda_apply_fixup ( struct hda_codec codec,
int  action 
)

Definition at line 668 of file hda_auto_parser.c.

void snd_hda_apply_pincfgs ( struct hda_codec codec,
const struct hda_pintbl cfg 
)

Definition at line 660 of file hda_auto_parser.c.

int snd_hda_gen_add_verbs ( struct hda_gen_spec spec,
const struct hda_verb list 
)

Definition at line 637 of file hda_auto_parser.c.

void snd_hda_gen_apply_verbs ( struct hda_codec codec)

Definition at line 649 of file hda_auto_parser.c.

int snd_hda_get_input_pin_attr ( unsigned int  def_conf)

Definition at line 344 of file hda_auto_parser.c.

int snd_hda_get_pin_label ( struct hda_codec codec,
hda_nid_t  nid,
const struct auto_pin_cfg cfg,
char label,
int  maxlen,
int indexp 
)

snd_hda_get_pin_label - Get a label for the given I/O pin

Get a label for the given pin. This function works for both input and output pins. When is given as non-NULL, the function tries to get an optimized label using hda_get_autocfg_input_label().

This function tries to give a unique label string for the pin as much as possible. For example, when the multiple line-outs are present, it adds the channel suffix like "Front", "Surround", etc (only when is given). If no unique name with a suffix is available and is non-NULL, the index number is stored in the pointer.

Definition at line 580 of file hda_auto_parser.c.

int snd_hda_parse_pin_defcfg ( struct hda_codec codec,
struct auto_pin_cfg cfg,
const hda_nid_t ignore_nids,
unsigned int  cond_flags 
)

Definition at line 125 of file hda_auto_parser.c.

void snd_hda_pick_fixup ( struct hda_codec codec,
const struct hda_model_fixup models,
const struct snd_pci_quirk *  quirk,
const struct hda_fixup fixlist 
)

Definition at line 723 of file hda_auto_parser.c.