Seems as if the hardware dependant codec drivers aren't getting compiled in. After adding to the Makefile:
EXTRA_CFLAGS := -DCONFIG_SND_HDA_GENERIC \ -DCONFIG_SND_HDA_CODEC_REALTEK \ -DCONFIG_SND_HDA_CODEC_CMEDIA \ -DCONFIG_SND_HDA_CODEC_ANALOG \ -DCONFIG_SND_HDA_CODEC_SIGMATEL \ -DCONFIG_SND_HDA_CODEC_SI3054 \ -DCONFIG_SND_HDA_CODEC_ATIHDMI \ -DCONFIG_SND_HDA_CODEC_CONEXANT \ -DCONFIG_SND_HDA_CODEC_VIA
My box works again. The chip for my HP nc6320 detects as a AD1981, thus requires the CONFIG_SND_HDA_CODEC_ANALOG option.
In the kernel sources, the unused HDA driver has in hda_patch.h
static const struct hda_codec_preset *hda_preset_tables[] = { snd_hda_preset_realtek, snd_hda_preset_cmedia, snd_hda_preset_analog, snd_hda_preset_sigmatel, snd_hda_preset_si3054, snd_hda_preset_atihdmi, snd_hda_preset_conexant, snd_hda_preset_via, NULL };
in the l-u-m version in hda_patch.h:
static const struct hda_codec_preset *hda_preset_tables[] = { #ifdef CONFIG_SND_HDA_CODEC_REALTEK snd_hda_preset_realtek, #endif #ifdef CONFIG_SND_HDA_CODEC_CMEDIA snd_hda_preset_cmedia, #endif #ifdef CONFIG_SND_HDA_CODEC_ANALOG snd_hda_preset_analog, #endif #ifdef CONFIG_SND_HDA_CODEC_SIGMATEL snd_hda_preset_sigmatel, #endif #ifdef CONFIG_SND_HDA_CODEC_SI3054 snd_hda_preset_si3054, #endif #ifdef CONFIG_SND_HDA_CODEC_ATIHDMI snd_hda_preset_atihdmi, #endif #ifdef CONFIG_SND_HDA_CODEC_CONEXANT snd_hda_preset_conexant, #endif #ifdef CONFIG_SND_HDA_CODEC_VIA snd_hda_preset_via, #endif NULL };
Presumably we want to build all of these. CONFIG_SND_HDA_GENERIC isn't used in the linux kernel version either, just l-u-m.
Regards,
Peter Clifton
Seems as if the hardware dependant codec drivers aren't getting compiled in. After adding to the Makefile:
EXTRA_CFLAGS := -DCONFIG_ SND_HDA_ GENERIC \
-DCONFIG_ SND_HDA_ CODEC_REALTEK \
-DCONFIG_ SND_HDA_ CODEC_CMEDIA \
-DCONFIG_ SND_HDA_ CODEC_ANALOG \
-DCONFIG_ SND_HDA_ CODEC_SIGMATEL \
-DCONFIG_ SND_HDA_ CODEC_SI3054 \
-DCONFIG_ SND_HDA_ CODEC_ATIHDMI \
-DCONFIG_ SND_HDA_ CODEC_CONEXANT \
-DCONFIG_ SND_HDA_ CODEC_VIA
My box works again. The chip for my HP nc6320 detects as a AD1981, thus requires the CONFIG_ SND_HDA_ CODEC_ANALOG option.
In the kernel sources, the unused HDA driver has in hda_patch.h
static const struct hda_codec_preset *hda_preset_ tables[ ] = { preset_ realtek, preset_ cmedia, preset_ analog, preset_ sigmatel, preset_ si3054, preset_ atihdmi, preset_ conexant, preset_ via,
snd_hda_
snd_hda_
snd_hda_
snd_hda_
snd_hda_
snd_hda_
snd_hda_
snd_hda_
NULL
};
in the l-u-m version in hda_patch.h:
static const struct hda_codec_preset *hda_preset_ tables[ ] = { SND_HDA_ CODEC_REALTEK
snd_hda_ preset_ realtek, SND_HDA_ CODEC_CMEDIA
snd_hda_ preset_ cmedia, SND_HDA_ CODEC_ANALOG
snd_hda_ preset_ analog, SND_HDA_ CODEC_SIGMATEL
snd_hda_ preset_ sigmatel, SND_HDA_ CODEC_SI3054
snd_hda_ preset_ si3054, SND_HDA_ CODEC_ATIHDMI
snd_hda_ preset_ atihdmi, SND_HDA_ CODEC_CONEXANT
snd_hda_ preset_ conexant, SND_HDA_ CODEC_VIA
snd_hda_ preset_ via,
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
#ifdef CONFIG_
#endif
NULL
};
Presumably we want to build all of these. CONFIG_ SND_HDA_ GENERIC isn't used in the linux kernel version either, just l-u-m.
Regards,
Peter Clifton