Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
hda_eld.c File Reference
#include <linux/init.h>
#include <linux/slab.h>
#include <sound/core.h>
#include <asm/unaligned.h>
#include "hda_codec.h"
#include "hda_local.h"

Go to the source code of this file.

Macros

#define GRAB_BITS(buf, byte, lowbit, bits)
 
#define SND_PRINT_RATES_ADVISED_BUFSIZE   80
 

Enumerations

enum  eld_versions { ELD_VER_CEA_861D = 2, ELD_VER_PARTIAL = 31 }
 
enum  cea_edid_versions {
  CEA_EDID_VER_NONE = 0, CEA_EDID_VER_CEA861 = 1, CEA_EDID_VER_CEA861A = 2, CEA_EDID_VER_CEA861BCD = 3,
  CEA_EDID_VER_RESERVED = 4
}
 
enum  cea_audio_coding_types {
  AUDIO_CODING_TYPE_REF_STREAM_HEADER = 0, AUDIO_CODING_TYPE_LPCM = 1, AUDIO_CODING_TYPE_AC3 = 2, AUDIO_CODING_TYPE_MPEG1 = 3,
  AUDIO_CODING_TYPE_MP3 = 4, AUDIO_CODING_TYPE_MPEG2 = 5, AUDIO_CODING_TYPE_AACLC = 6, AUDIO_CODING_TYPE_DTS = 7,
  AUDIO_CODING_TYPE_ATRAC = 8, AUDIO_CODING_TYPE_SACD = 9, AUDIO_CODING_TYPE_EAC3 = 10, AUDIO_CODING_TYPE_DTS_HD = 11,
  AUDIO_CODING_TYPE_MLP = 12, AUDIO_CODING_TYPE_DST = 13, AUDIO_CODING_TYPE_WMAPRO = 14, AUDIO_CODING_TYPE_REF_CXT = 15,
  AUDIO_CODING_TYPE_HE_AAC = 15, AUDIO_CODING_TYPE_HE_AAC2 = 16, AUDIO_CODING_TYPE_MPEG_SURROUND = 17
}
 
enum  cea_audio_coding_xtypes {
  AUDIO_CODING_XTYPE_HE_REF_CT = 0, AUDIO_CODING_XTYPE_HE_AAC = 1, AUDIO_CODING_XTYPE_HE_AAC2 = 2, AUDIO_CODING_XTYPE_MPEG_SURROUND = 3,
  AUDIO_CODING_XTYPE_FIRST_RESERVED = 4
}
 

Functions

int snd_hdmi_get_eld_size (struct hda_codec *codec, hda_nid_t nid)
 
int snd_hdmi_get_eld (struct hdmi_eld *eld, struct hda_codec *codec, hda_nid_t nid)
 
void snd_print_channel_allocation (int spk_alloc, char *buf, int buflen)
 
void snd_hdmi_show_eld (struct hdmi_eld *e)
 
void snd_hdmi_eld_update_pcm_info (struct hdmi_eld *eld, struct hda_pcm_stream *hinfo)
 

Macro Definition Documentation

#define GRAB_BITS (   buf,
  byte,
  lowbit,
  bits 
)
Value:
({ \
BUILD_BUG_ON(lowbit > 7); \
BUILD_BUG_ON(bits > 8); \
BUILD_BUG_ON(bits <= 0); \
\
(buf[byte] >> (lowbit)) & ((1 << (bits)) - 1); \
})

Definition at line 160 of file hda_eld.c.

#define SND_PRINT_RATES_ADVISED_BUFSIZE   80

Definition at line 401 of file hda_eld.c.

Enumeration Type Documentation

Enumerator:
AUDIO_CODING_TYPE_REF_STREAM_HEADER 
AUDIO_CODING_TYPE_LPCM 
AUDIO_CODING_TYPE_AC3 
AUDIO_CODING_TYPE_MPEG1 
AUDIO_CODING_TYPE_MP3 
AUDIO_CODING_TYPE_MPEG2 
AUDIO_CODING_TYPE_AACLC 
AUDIO_CODING_TYPE_DTS 
AUDIO_CODING_TYPE_ATRAC 
AUDIO_CODING_TYPE_SACD 
AUDIO_CODING_TYPE_EAC3 
AUDIO_CODING_TYPE_DTS_HD 
AUDIO_CODING_TYPE_MLP 
AUDIO_CODING_TYPE_DST 
AUDIO_CODING_TYPE_WMAPRO 
AUDIO_CODING_TYPE_REF_CXT 
AUDIO_CODING_TYPE_HE_AAC 
AUDIO_CODING_TYPE_HE_AAC2 
AUDIO_CODING_TYPE_MPEG_SURROUND 

Definition at line 65 of file hda_eld.c.

Enumerator:
AUDIO_CODING_XTYPE_HE_REF_CT 
AUDIO_CODING_XTYPE_HE_AAC 
AUDIO_CODING_XTYPE_HE_AAC2 
AUDIO_CODING_XTYPE_MPEG_SURROUND 
AUDIO_CODING_XTYPE_FIRST_RESERVED 

Definition at line 88 of file hda_eld.c.

Enumerator:
CEA_EDID_VER_NONE 
CEA_EDID_VER_CEA861 
CEA_EDID_VER_CEA861A 
CEA_EDID_VER_CEA861BCD 
CEA_EDID_VER_RESERVED 

Definition at line 36 of file hda_eld.c.

Enumerator:
ELD_VER_CEA_861D 
ELD_VER_PARTIAL 

Definition at line 31 of file hda_eld.c.

Function Documentation

void snd_hdmi_eld_update_pcm_info ( struct hdmi_eld eld,
struct hda_pcm_stream hinfo 
)

Definition at line 630 of file hda_eld.c.

int snd_hdmi_get_eld ( struct hdmi_eld eld,
struct hda_codec codec,
hda_nid_t  nid 
)

Definition at line 321 of file hda_eld.c.

int snd_hdmi_get_eld_size ( struct hda_codec codec,
hda_nid_t  nid 
)

Definition at line 315 of file hda_eld.c.

void snd_hdmi_show_eld ( struct hdmi_eld e)

Definition at line 441 of file hda_eld.c.

void snd_print_channel_allocation ( int  spk_alloc,
char buf,
int  buflen 
)

Definition at line 429 of file hda_eld.c.