From: Takashi Iwai <tiwai@suse.de>
To: "Ughreja, Rakesh A" <rakesh.a.ughreja@intel.com>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
"Koul, Vinod" <vinod.koul@intel.com>,
"pierre-louis.bossart@linux.intel.com"
<pierre-louis.bossart@linux.intel.com>,
"liam.r.girdwood@linux.intel.com"
<liam.r.girdwood@linux.intel.com>,
Patches Audio <patches.audio@intel.com>,
"broonie@kernel.org" <broonie@kernel.org>
Subject: Re: [RFC v3 06/11] ASoC: hdac_hda: add ASoC based HDA codec driver
Date: Sat, 16 Dec 2017 10:13:36 +0100 [thread overview]
Message-ID: <s5h4lorvxvj.wl-tiwai@suse.de> (raw)
In-Reply-To: <85DFEED57DC57344B2483EF7BF8CB60579ADAF8C@BGSMSX104.gar.corp.intel.com>
On Sat, 16 Dec 2017 08:48:35 +0100,
Ughreja, Rakesh A wrote:
>
>
>
> >-----Original Message-----
> >From: Takashi Iwai [mailto:tiwai@suse.de]
> >Sent: Friday, December 15, 2017 9:18 PM
> >To: Ughreja, Rakesh A <rakesh.a.ughreja@intel.com>
> >Cc: alsa-devel@alsa-project.org; broonie@kernel.org;
> >liam.r.girdwood@linux.intel.com; pierre-louis.bossart@linux.intel.com; Koul, Vinod
> ><vinod.koul@intel.com>; Patches Audio <patches.audio@intel.com>
> >Subject: Re: [RFC v3 06/11] ASoC: hdac_hda: add ASoC based HDA codec driver
> >
>
> >> >Can we check differently? For example, we may put some difference in
> >> >the driver and check it here instead of the static IS_ENABLED().
> >>
> >> Do you think a module parameter is a good idea ?
> >
> >I don't think so. We do need to consider a better way.
> >
> >Maybe an alternative is to give the additional indirect calls.
> >That is, put some new ops or hook to the bus for calling some extra
> >probing task in addition to the standard codec probe.
> >
>
> I am not sure if I understand you fully, so asking some follow up
> Questions.
>
> I am assuming you are asking me to implement something like following.
> Where I have to implement snd_hda_get_mode() function which would
> return "true" if we need to register the driver as "asoc" driver.
>
> Is that right understanding ?
>
> int __hda_codec_driver_register(struct hda_codec_driver *drv, const char *name,
> struct module *owner)
> {
> /*
> * check if we need to register ASoC HDA driver
> */
> #if IS_ENABLED(CONFIG_SND_SOC_HDAC_HDA)
> int asoc_mode = snd_hda_get_mode();
> if (asoc_mode) {
> drv->core.id_table = drv->id;
> return __hdac_hda_codec_driver_register(&drv->core, name, owner);
> }
> #endif
> return __hda_legacy_codec_driver_register(drv, name, owner);
> }
>
> If above is true then the follow up question is, what are the criteria to determine
> the mode. Since I cannot assume that the bus instance is already created at the
> time of driver registration, I am not sure how to determine what kind of platform
> driver would be loaded in future.
My assumption is that there is only one hda_codec_driver_register().
The legacy code needs to be rewritten to implement the standard
probe/remove as preliminary. Any the rest differentiation is done via
additional callbacks at probe/remove time.
Takashi
next prev parent reply other threads:[~2017-12-16 9:13 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-15 11:30 [RFC v3 00/11] Enable HDA Codec support on Intel Platforms (Series2) Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 01/11] ASoC: Intel: Boards: Machine driver for Intel platforms Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 02/11] ASoC: Intel: Skylake: Add entry in sst_acpi_mach for HDA codecs Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 03/11] ASoC: Intel: Skylake: add HDA BE DAIs Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 04/11] ASoC: Intel: Skylake: use hda_bus instead of hdac_bus Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 05/11] ALSA: hda - make some of the functions externally visible Rakesh Ughreja
2017-12-15 11:34 ` Takashi Iwai
2017-12-15 11:30 ` [RFC v3 06/11] ASoC: hdac_hda: add ASoC based HDA codec driver Rakesh Ughreja
2017-12-15 11:38 ` Takashi Iwai
2017-12-15 12:20 ` Ughreja, Rakesh A
2017-12-15 15:47 ` Takashi Iwai
2017-12-16 7:48 ` Ughreja, Rakesh A
2017-12-16 9:13 ` Takashi Iwai [this message]
2017-12-18 4:06 ` Ughreja, Rakesh A
2017-12-19 9:19 ` Ughreja, Rakesh A
2017-12-19 11:27 ` Takashi Iwai
2017-12-19 15:26 ` Ughreja, Rakesh A
2017-12-19 15:40 ` Takashi Iwai
2017-12-19 16:14 ` Ughreja, Rakesh A
2017-12-19 16:23 ` Takashi Iwai
2017-12-19 17:12 ` Ughreja, Rakesh A
2017-12-19 19:17 ` Takashi Iwai
2017-12-20 10:26 ` Mark Brown
2017-12-20 10:52 ` Ughreja, Rakesh A
2017-12-21 15:36 ` Ughreja, Rakesh A
2017-12-21 15:48 ` Takashi Iwai
2017-12-21 16:39 ` Ughreja, Rakesh A
2017-12-21 16:44 ` Takashi Iwai
2017-12-22 12:51 ` Ughreja, Rakesh A
2017-12-15 11:30 ` [RFC v3 07/11] ALSA: hda: split API snd_hda_codec_new for using it from ASoC codec drivers Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 08/11] ASoC: hdac_hda: add DAI, widgets and related ops Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 09/11] ASoC: hdac_hda: add runtime PM support Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 10/11] ASoC: codec: Support for ASoC Realtek HDA codec Driver Rakesh Ughreja
2017-12-15 11:30 ` [RFC v3 11/11] ASoC: Intel: Boards: add support for HDA codecs Rakesh Ughreja
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=s5h4lorvxvj.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=liam.r.girdwood@linux.intel.com \
--cc=patches.audio@intel.com \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=rakesh.a.ughreja@intel.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox