[alsa-devel] [PATCH 3/4] ALSA: hda - Dispatch incoming HDMI hotplug i915 callback

Takashi Iwai tiwai at suse.de
Wed Jul 22 16:01:02 CEST 2015


On Wed, 22 Jul 2015 15:56:37 +0200,
Vinod Koul wrote:
> 
> On Wed, Jul 22, 2015 at 10:30:57AM +0200, Takashi Iwai wrote:
> > On Tue, 21 Jul 2015 09:57:26 +0200,
> > David Henningsson wrote:
> > > 
> > > This lets interested codec(s) be notified of HDMI hotplug
> > > events sent from the i915 driver.
> > > 
> > > Signed-off-by: David Henningsson <david.henningsson at canonical.com>
> > > ---
> > >  include/sound/hdaudio.h |    4 ++++
> > >  sound/hda/hdac_i915.c   |   24 ++++++++++++++++++++++++
> > >  2 files changed, 28 insertions(+)
> > > 
> > > diff --git a/include/sound/hdaudio.h b/include/sound/hdaudio.h
> > > index 4caf1fd..ce34182 100644
> > > --- a/include/sound/hdaudio.h
> > > +++ b/include/sound/hdaudio.h
> > > @@ -79,6 +79,10 @@ struct hdac_device {
> > >  	int (*exec_verb)(struct hdac_device *dev, unsigned int cmd,
> > >  			 unsigned int flags, unsigned int *res);
> > >  
> > > +	/* Used for hotplug notification from i915 driver */
> > > +	void (*hotplug_notify)(struct hdac_device *,
> > > +			       const struct i915_audio_hotplug_info *);
> > 
> > Since this callback is specific to HDMI/DP, a more specific name would
> > be better.  Otherwise this sounds like a generic hotplug handler.
> > 
> > Or, we may make it really generic, e.g. something like
> > 	void (*hotplug_notify)(struct hdac_device *, int event_type,
> > 				const void *data);
> > 
> > and call it with a specific event_type value
> > 	codec->hotplug_notify(codec, HDAC_NOTIFY_I915_DP, hotplug_info);
> or should this be added to unsol_event handler for the device, we already
> are have worker thread for that.
> For device it will be single notify for both SW and HW events. Yes adding
> event types will help

Well, the difference from the unsol event is that this gives the
certain amount of data together with the notification.  Of course, it
can be a two-step procedure: first notify via a faked unsol event,
then the driver fetches data actively.


Takashi


More information about the Alsa-devel mailing list