diff options
author | Wu Fengguang <wfg@linux.intel.com> | 2008-11-17 22:47:52 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2008-11-18 01:39:03 -0500 |
commit | 7f4a9f43427793bfe4d42e71f42e2b551bcfe354 (patch) | |
tree | 32fac4e6b2c84e79231345ed5dc6f7c76c37a6cb /sound/pci/hda/hda_local.h | |
parent | 33deeca3bb6a945677d70876ea9d044fc5797eb3 (diff) |
ALSA: create hda_eld.c for ELD routines and proc interface
ELD handling routines can be shared by all HDMI codecs,
and they are large enough to make a standalone source file.
Signed-off-by: Wu Fengguang <wfg@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_local.h')
-rw-r--r-- | sound/pci/hda/hda_local.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_local.h b/sound/pci/hda/hda_local.h index d7e3a164effe..e1b76686672a 100644 --- a/sound/pci/hda/hda_local.h +++ b/sound/pci/hda/hda_local.h | |||
@@ -443,4 +443,45 @@ int snd_hda_check_amp_list_power(struct hda_codec *codec, | |||
443 | #define get_amp_direction(kc) (((kc)->private_value >> 18) & 0x1) | 443 | #define get_amp_direction(kc) (((kc)->private_value >> 18) & 0x1) |
444 | #define get_amp_index(kc) (((kc)->private_value >> 19) & 0xf) | 444 | #define get_amp_index(kc) (((kc)->private_value >> 19) & 0xf) |
445 | 445 | ||
446 | /* | ||
447 | * CEA Short Audio Descriptor data | ||
448 | */ | ||
449 | struct cea_sad { | ||
450 | int channels; | ||
451 | int format; /* (format == 0) indicates invalid SAD */ | ||
452 | int rates; | ||
453 | int sample_bits; /* for LPCM */ | ||
454 | int max_bitrate; /* for AC3...ATRAC */ | ||
455 | int profile; /* for WMAPRO */ | ||
456 | }; | ||
457 | |||
458 | #define ELD_FIXED_BYTES 20 | ||
459 | #define ELD_MAX_MNL 16 | ||
460 | #define ELD_MAX_SAD 16 | ||
461 | |||
462 | /* | ||
463 | * ELD: EDID Like Data | ||
464 | */ | ||
465 | struct sink_eld { | ||
466 | int eld_size; | ||
467 | int baseline_len; | ||
468 | int eld_ver; /* (eld_ver == 0) indicates invalid ELD */ | ||
469 | int cea_edid_ver; | ||
470 | char monitor_name[ELD_MAX_MNL + 1]; | ||
471 | int manufacture_id; | ||
472 | int product_id; | ||
473 | u64 port_id; | ||
474 | int support_hdcp; | ||
475 | int support_ai; | ||
476 | int conn_type; | ||
477 | int aud_synch_delay; | ||
478 | int spk_alloc; | ||
479 | int sad_count; | ||
480 | struct cea_sad sad[ELD_MAX_SAD]; | ||
481 | }; | ||
482 | |||
483 | int snd_hdmi_get_eld_size(struct hda_codec *codec, hda_nid_t nid); | ||
484 | int snd_hdmi_get_eld(struct sink_eld *, struct hda_codec *, hda_nid_t); | ||
485 | void snd_hdmi_show_eld(struct sink_eld *eld); | ||
486 | |||
446 | #endif /* __SOUND_HDA_LOCAL_H */ | 487 | #endif /* __SOUND_HDA_LOCAL_H */ |