On Sun, Feb 17, 2013 at 09:07:24AM +0100, David Henningsson wrote: > On 02/17/2013 02:29 AM, Fengguang Wu wrote: > >Hi David, > > > >On Fri, Feb 15, 2013 at 11:02:31PM -0600, Pierre-Louis Bossart wrote: > >> > >>>There's a bummer though. On the one machine I've tested this, the ELD is not > >>>immediately available, so hotplugging doesn't work. It also looks like there's no > >>>event being sent out from the kernel when ELD has become available, so we probably > > > >You may print a debug messages in the graphics driver's interrupt handler > >for every hotplug event to check if the hotplug event is not raised > >from hardware at all, or (likely) get lost somewhere later when > >passing it to the audio driver. > > > >>>need to add some kind of timer - but I'm not sure exactly what time ranges should > >>>work for all machines. Pierre, do you know? > >> > >>Trying rebooting with the HDMI cable plugged and see if this works. > >>I know my IbexPeak hardware only detects HDMI at boot, probably some > >>BIOS issue. Fengguang might be able to help? > > > >Good tip. It's worth trying, as I noticed the same phenomenon in my > >past HDMI tests (HDMI not useable at all if hot-plugged after boot). > >For the boot issue, it may be because of some unknown BIOS hack, or > >something the graphics driver failed to initialize (or did it right). > > To clarify: When hotplugging, the ELD does show up, it just doesn't > do that at the same time as the jack does, that is, eld might become > valid at a later time compared to the "precense" bit. > > I looked at the kernel code now, and it seems like there is a repoll > mechanism to fetch the ELD information. It shouldn't be too > difficult to insert a snd_ctl_notify when the ELD control changes > (as Tanu suggests), I will look into this next week hopefully. Yeah I added the repoll code. It's beyond me why the repoll is necessary at all... Thanks, Fengguang