diff options
author | Vinod Koul <vinod.koul@intel.com> | 2015-08-21 12:17:42 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2015-08-21 12:34:02 +0200 |
commit | d51783c15f7548229e49331d254a738be8ac865c (patch) | |
tree | 5417516e6bbab6720a2af68882a21d52b8a050bd /include/sound/hdaudio_ext.h | |
parent | ALSA: hdac: add hdac extended device (diff) | |
download | linux-d51783c15f7548229e49331d254a738be8ac865c.tar.xz linux-d51783c15f7548229e49331d254a738be8ac865c.zip |
ALSA: hdac: add extended device driver registration
This adds new extended driver objects and API for registering the
extended devices.
Signed-off-by: Subhransu S. Prusty <subhransu.s.prusty@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'include/sound/hdaudio_ext.h')
-rw-r--r-- | include/sound/hdaudio_ext.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/sound/hdaudio_ext.h b/include/sound/hdaudio_ext.h index 0641d00e2a94..55e2fc36177f 100644 --- a/include/sound/hdaudio_ext.h +++ b/include/sound/hdaudio_ext.h @@ -173,5 +173,20 @@ struct hdac_ext_device { #define to_ehdac_device(dev) (container_of((dev), \ struct hdac_ext_device, hdac)) +/* + * HD-audio codec base driver + */ +struct hdac_ext_driver { + struct hdac_driver hdac; + + int (*probe)(struct hdac_ext_device *dev); + int (*remove)(struct hdac_ext_device *dev); + void (*shutdown)(struct hdac_ext_device *dev); +}; + +int snd_hda_ext_driver_register(struct hdac_ext_driver *drv); +void snd_hda_ext_driver_unregister(struct hdac_ext_driver *drv); + +#define to_ehdac_driver(_drv) container_of(_drv, struct hdac_ext_driver, hdac) #endif /* __SOUND_HDAUDIO_EXT_H */ |