From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
To: Rakesh Ughreja <rakesh.a.ughreja@intel.com>,
alsa-devel@alsa-project.org, broonie@kernel.org, tiwai@suse.de,
liam.r.girdwood@linux.intel.com
Cc: vinod.koul@intel.com, patches.audio@intel.com
Subject: Re: [RFC 05/10] ALSA: hda - make some of the functions externally visible
Date: Fri, 1 Dec 2017 13:26:48 -0600 [thread overview]
Message-ID: <3fd52b04-97e9-a438-2edf-ccb04530125c@linux.intel.com> (raw)
In-Reply-To: <1512119648-2700-6-git-send-email-rakesh.a.ughreja@intel.com>
On 12/1/17 3:14 AM, Rakesh Ughreja wrote:
> Mark some functions with EXPORT_SYMBOL_GPL so that it can be called by
> other kernel modules. These APIs would be called by ASoC based HDA codec
> driver which will be added in the later patches.
Looks ok. Just wondering from a code maintenance perspective if those
functions would need to be part of a library, and if this means that to
compile the ASoC based HDAudio codec support you still need to enable
the legacy support - and if this leads to potential conflicts on which
driver gets probed?
>
> Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
> ---
> sound/pci/hda/hda_codec.c | 9 +++++++--
> sound/pci/hda/hda_codec.h | 4 +++-
> 2 files changed, 10 insertions(+), 3 deletions(-)
>
> diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
> index e018ecb..085fd9e 100644
> --- a/sound/pci/hda/hda_codec.c
> +++ b/sound/pci/hda/hda_codec.c
> @@ -2903,7 +2903,7 @@ static void hda_call_codec_resume(struct hda_codec *codec)
> atomic_dec(&codec->core.in_pm);
> }
>
> -static int hda_codec_runtime_suspend(struct device *dev)
> +int hda_codec_runtime_suspend(struct device *dev)
> {
> struct hda_codec *codec = dev_to_hda_codec(dev);
> struct hda_pcm *pcm;
> @@ -2919,8 +2919,9 @@ static int hda_codec_runtime_suspend(struct device *dev)
> snd_hdac_link_power(&codec->core, false);
> return 0;
> }
> +EXPORT_SYMBOL_GPL(hda_codec_runtime_suspend);
>
> -static int hda_codec_runtime_resume(struct device *dev)
> +int hda_codec_runtime_resume(struct device *dev)
> {
> struct hda_codec *codec = dev_to_hda_codec(dev);
>
> @@ -2930,6 +2931,7 @@ static int hda_codec_runtime_resume(struct device *dev)
> pm_runtime_mark_last_busy(dev);
> return 0;
> }
> +EXPORT_SYMBOL_GPL(hda_codec_runtime_resume);
> #endif /* CONFIG_PM */
>
> /* referred in hda_bind.c */
> @@ -3005,6 +3007,7 @@ int snd_hda_codec_build_controls(struct hda_codec *codec)
> sync_power_up_states(codec);
> return 0;
> }
> +EXPORT_SYMBOL_GPL(snd_hda_codec_build_controls);
>
> /*
> * PCM stuff
> @@ -3210,6 +3213,7 @@ int snd_hda_codec_parse_pcms(struct hda_codec *codec)
>
> return 0;
> }
> +EXPORT_SYMBOL_GPL(snd_hda_codec_parse_pcms);
>
> /* assign all PCMs of the given codec */
> int snd_hda_codec_build_pcms(struct hda_codec *codec)
> @@ -3246,6 +3250,7 @@ int snd_hda_codec_build_pcms(struct hda_codec *codec)
>
> return 0;
> }
> +EXPORT_SYMBOL_GPL(snd_hda_codec_build_pcms);
>
> /**
> * snd_hda_add_new_ctls - create controls from the array
> diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h
> index 681c360..2d02d02 100644
> --- a/sound/pci/hda/hda_codec.h
> +++ b/sound/pci/hda/hda_codec.h
> @@ -83,7 +83,7 @@ struct hda_bus {
> * better than the generic parser.
> */
> typedef int (*hda_codec_patch_t)(struct hda_codec *);
> -
> +
> #define HDA_CODEC_ID_GENERIC_HDMI 0x00000101
> #define HDA_CODEC_ID_GENERIC 0x00000201
>
> @@ -497,6 +497,8 @@ int hda_call_check_power_status(struct hda_codec *codec, hda_nid_t nid)
> #ifdef CONFIG_PM
> void snd_hda_set_power_save(struct hda_bus *bus, int delay);
> void snd_hda_update_power_acct(struct hda_codec *codec);
> +int hda_codec_runtime_suspend(struct device *dev);
> +int hda_codec_runtime_resume(struct device *dev);
> #else
> static inline void snd_hda_set_power_save(struct hda_bus *bus, int delay) {}
> #endif
>
next prev parent reply other threads:[~2017-12-01 19:26 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-01 9:13 [RFC 00/10] Enable HDA Codec support on Intel Platforms (Series2) Rakesh Ughreja
2017-12-01 9:13 ` [RFC 01/10] ASoC: Intel: Boards: Machine driver for Intel platforms Rakesh Ughreja
2017-12-01 17:58 ` Pierre-Louis Bossart
2017-12-04 10:55 ` Ughreja, Rakesh A
2017-12-04 14:49 ` Pierre-Louis Bossart
2017-12-04 15:10 ` Ughreja, Rakesh A
2017-12-04 15:37 ` Pierre-Louis Bossart
2017-12-06 16:17 ` Vinod Koul
2017-12-07 12:27 ` Ughreja, Rakesh A
2017-12-07 13:05 ` Pierre-Louis Bossart
2017-12-07 15:21 ` Ughreja, Rakesh A
2017-12-07 16:33 ` Pierre-Louis Bossart
2017-12-01 9:14 ` [RFC 02/10] ASoC: Intel: Skylake: Add entry in sst_acpi_mach for HDA codecs Rakesh Ughreja
2017-12-01 18:15 ` Pierre-Louis Bossart
2017-12-04 16:27 ` Ughreja, Rakesh A
2017-12-01 9:14 ` [RFC 03/10] ASoC: Intel: Skylake: add HDA BE DAIs Rakesh Ughreja
2017-12-01 18:20 ` Pierre-Louis Bossart
2017-12-04 16:14 ` Ughreja, Rakesh A
2017-12-04 16:40 ` Pierre-Louis Bossart
2017-12-04 16:44 ` Ughreja, Rakesh A
2017-12-04 16:51 ` Pierre-Louis Bossart
2017-12-04 17:01 ` Takashi Iwai
2017-12-01 9:14 ` [RFC 04/10] ASoC: Intel: Skylake: use hda_bus instead of hdac_bus Rakesh Ughreja
2017-12-01 18:27 ` Pierre-Louis Bossart
2017-12-04 16:09 ` Ughreja, Rakesh A
2017-12-01 9:14 ` [RFC 05/10] ALSA: hda - make some of the functions externally visible Rakesh Ughreja
2017-12-01 19:26 ` Pierre-Louis Bossart [this message]
2017-12-04 15:43 ` Ughreja, Rakesh A
2017-12-04 16:23 ` Takashi Iwai
2017-12-01 9:14 ` [RFC 06/10] ASoC: hdac_hda: add ASoC based HDA codec driver Rakesh Ughreja
2017-12-01 19:36 ` Pierre-Louis Bossart
2017-12-04 15:35 ` Ughreja, Rakesh A
2017-12-01 9:14 ` [RFC 07/10] ALSA: hda: add new API snd_hda_asoc_codec_new for ASoC codec drivers Rakesh Ughreja
2017-12-01 9:14 ` [RFC 08/10] ASoC: hdac_hda: add DAI, widgets and related ops Rakesh Ughreja
2017-12-01 9:14 ` [RFC 09/10] ASoC: hdac_hda: add runtime PM support Rakesh Ughreja
2017-12-01 9:14 ` [RFC 10/10] ASoC: Intel: Boards: add support for HDA codecs Rakesh Ughreja
2017-12-01 14:56 ` [RFC 00/10] Enable HDA Codec support on Intel Platforms (Series2) Takashi Iwai
2017-12-01 19:45 ` Pierre-Louis Bossart
2017-12-01 20:03 ` Takashi Iwai
2017-12-03 17:20 ` Vinod Koul
2017-12-04 3:15 ` Pierre-Louis Bossart
2017-12-04 3:22 ` Vinod Koul
2017-12-04 3:44 ` Pierre-Louis Bossart
2017-12-04 4:21 ` Vinod Koul
2017-12-04 14:52 ` Pierre-Louis Bossart
2017-12-04 17:17 ` Vinod Koul
2017-12-04 10:43 ` Ughreja, Rakesh A
2017-12-06 16:06 ` Vinod Koul
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3fd52b04-97e9-a438-2edf-ccb04530125c@linux.intel.com \
--to=pierre-louis.bossart@linux.intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=liam.r.girdwood@linux.intel.com \
--cc=patches.audio@intel.com \
--cc=rakesh.a.ughreja@intel.com \
--cc=tiwai@suse.de \
--cc=vinod.koul@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.