> - if (eld_valid)
> + if (eld_valid) {
> if (!snd_hdmi_get_eld(eld, codec, pin_nid))
> snd_hdmi_show_eld(eld);
> + else {
Oops, forgot testing @retry here! Updated patch follows.
> + queue_delayed_work(codec->bus->workq,
The Intel HDMI chips (ironlake at least) are found to have ~250ms delay
between the ELD_Valid=1 hotplug event is send and the ELD buffer becomes
actually readable. During the time the ELD buffer is mysteriously all 0.
Fix it by scheduling a delayed work to re-read ELD buffer after 300ms.
Signed-o