At Wed, 02 Oct 2013 19:42:53 +0300, Anssi Hannula wrote:
02.10.2013 17:34, Takashi Iwai kirjoitti:
At Tue, 1 Oct 2013 23:30:52 +0300, Anssi Hannula wrote:
[...]
Anssi Hannula (4): ALSA: hda - hdmi: Add ATI/AMD multi-channel audio support ALSA: hda - hdmi: Add ELD emulation for ATI/AMD codecs ALSA: hda - hdmi: Add HBR bitstreaming support for ATI/AMD HDMI codecs ALSA: hda - hdmi: Disable ramp-up/down for non-PCM on AMD codecs
The patches generally look good, but I'm thinking whether it's cleaner to create a new ops items. Maybe it can be specific to HDMI codec, e.g.
struct hda_hdmi_ops { int (*get_chan_slot)(struct hda_codec *codec, hda_nid_t pin, int slot); int (*set_chan_slot)(struct hda_codec *codec, hda_nid_t pin, int setup); int (*set_ca)(struct hda_codec *codec, hda_nid_t pin, int ca); .... }
It's not sexy to have a thing like is_atihdmi() in the common header and see it in everywhere.
OK, will do that for next version.
Regarding hda_eld.c, I guess I'll add struct hda_hdmi_ops to struct hdmi_spec, then keep snd_hdmi_ati_get_eld() in hda_eld.c but make it non-static, so I can assign the correct _get_eld in patch_hdmi.c?
Yes, that'd be OK.
P.S. I asked whether new callbacks should be added in the previous RFC message, but I guess that was easy to overlook as the message was a bit incoherent... :)
Oh, indeed :)
thanks,
Takashi
-- Anssi Hannula
thanks,
Takashi
sound/pci/hda/hda_eld.c | 157 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ sound/pci/hda/hda_local.h | 5 +++ sound/pci/hda/patch_hdmi.c | 424 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------ 3 files changed, 547 insertions(+), 39 deletions(-)
-- Anssi Hannula
-- Anssi Hannula