drm/i915: Split audio component to a generic type

For allowing other drivers to use the DRM audio component, rename the
i915_audio_component_* with drm_audio_component_*, and split the
generic part into drm_audio_component.h.  The i915 specific stuff
remains in struct i915_audio_component, which contains
drm_audio_component as the base.

The license of drm_audio_component.h is kept to MIT as same as the the
original i915_component.h.

This is a preliminary change for further development, and no
functional changes by this patch itself, merely code-split and
renames.

v1->v2: Use SPDX for drm_audio_component.h, fix remaining i915
        argument in drm_audio_component.h

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2018-07-11 15:17:22 +02:00
parent 9a9b13dd27
commit ae891abe7c
8 changed files with 144 additions and 120 deletions

View file

@ -5,7 +5,7 @@
#ifndef __SOUND_HDA_I915_H
#define __SOUND_HDA_I915_H
#include <drm/i915_component.h>
#include <drm/drm_audio_component.h>
#ifdef CONFIG_SND_HDA_I915
int snd_hdac_set_codec_wakeup(struct hdac_bus *bus, bool enable);
@ -17,7 +17,7 @@ int snd_hdac_acomp_get_eld(struct hdac_device *codec, hda_nid_t nid, int dev_id,
bool *audio_enabled, char *buffer, int max_bytes);
int snd_hdac_i915_init(struct hdac_bus *bus);
int snd_hdac_i915_exit(struct hdac_bus *bus);
int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *);
int snd_hdac_i915_register_notifier(const struct drm_audio_component_audio_ops *);
#else
static inline int snd_hdac_set_codec_wakeup(struct hdac_bus *bus, bool enable)
{
@ -49,7 +49,7 @@ static inline int snd_hdac_i915_exit(struct hdac_bus *bus)
{
return 0;
}
static inline int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *ops)
static inline int snd_hdac_i915_register_notifier(const struct drm_audio_component_audio_ops *ops)
{
return -ENODEV;
}

View file

@ -333,9 +333,9 @@ struct hdac_bus {
spinlock_t reg_lock;
struct mutex cmd_mutex;
/* i915 component interface */
struct i915_audio_component *audio_component;
int i915_power_refcount;
/* DRM component interface */
struct drm_audio_component *audio_component;
int drm_power_refcount;
/* parameters required for enhanced capabilities */
int num_streams;