On 27/11/2023 15:18, Takashi Iwai wrote: >> +bool snd_hda_device_is_hdmi(struct hdac_device *hdev) >> +{ >> + int i; >> + >> + for (i = 0; i < ARRAY_SIZE(snd_hda_id_hdmi); i++) { >> + if (snd_hda_id_hdmi[i].vendor_id == hdev->vendor_id) >> + return true; >> + } >> + >> + return false; >> +} >> +EXPORT_SYMBOL_GPL(snd_hda_device_is_hdmi); > > I'm afraid that this will bring unnecessary dependency on HDMI codec > driver. For HDMI support we anyways need HDMI code? > IMO, it's better to add a bool flag is_hdmi to struct hdac_device, and > let the HDMI codec driver setting it at the probe, instead. Then we > can save an extra exported symbol, too. We only use a combined generic codec driver which just supports 'HDA' codecs regardless of what type they are. When things probed via ASoC/SOF I just could not find any other way to access to this table inside of patch_hdmi.c. We could sort of 'cheat' and look for a specific (I'm not sure if it is Intel or HDA generic) mask: 0x4 It is used in Intel drivers to identify the display codec, so the HDMI/DP. If the 0x4 is universal among all HDA platforms for HDMI/DP then I'm more than happy to drop this patch, but I'm not sure about that. -- Péter