All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Henningsson <david.henningsson@canonical.com>
To: "Wang, Xingchao" <xingchao.wang@intel.com>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	"Girdwood, Liam R" <liam.r.girdwood@intel.com>,
	"tiwai@suse.de" <tiwai@suse.de>,
	"Lin, Mengdong" <mengdong.lin@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>,
	Wang Xingchao <xingchao.wang@linux.intel.com>,
	"Li, Jocelyn" <jocelyn.li@intel.com>,
	"Barnes, Jesse" <jesse.barnes@intel.com>,
	"Zanoni, Paulo R" <paulo.r.zanoni@intel.com>
Subject: Re: [alsa-devel] [PATCH 5/5] ALSA/i915: Check power well API existense before calling
Date: Mon, 13 May 2013 14:13:16 +0200	[thread overview]
Message-ID: <5190D8DC.8090305@canonical.com> (raw)
In-Reply-To: <46B810F6945F7C4788E11DCE57EC489010E5C1B8@SHSMSX102.ccr.corp.intel.com>

On 05/13/2013 01:55 PM, Wang, Xingchao wrote:
> Hi David,
>
>
>> -----Original Message-----
>> From: alsa-devel-bounces@alsa-project.org
>> [mailto:alsa-devel-bounces@alsa-project.org] On Behalf Of David Henningsson
>> Sent: Monday, May 13, 2013 4:29 PM
>> To: Wang Xingchao
>> Cc: alsa-devel@alsa-project.org; daniel@ffwll.ch; tiwai@suse.de; Lin,
>> Mengdong; intel-gfx@lists.freedesktop.org; Li, Jocelyn; Barnes, Jesse;
>> Girdwood, Liam R; Zanoni, Paulo R
>> Subject: Re: [alsa-devel] [PATCH 5/5] ALSA/i915: Check power well API
>> existense before calling
>>
>> On 05/13/2013 09:37 AM, Wang Xingchao wrote:
>>> I915 module maybe loaded after snd_hda_intel, the power-well API
>>> doesnot exist in such case. This patch intended to avoid loading
>>> dependency between snd-hda-intel and i915 module.
>>
>> Hi Xingchao and thanks for working on this.
>>
>> This patch seems to re-do some of the work done in other patches (a lot of lines
>> removed), so it's a little hard to follow. But I'll try to write some overall
>> comments on how I have envisioned things...
>>
>> 1. I don't think there's any need to create an additional kernel module, we can
>> just let hda_i915.c be in the snd-hda-intel.ko module, and only compile it if
>> DRM_I915 is defined.
>>
>> 2. We don't need an IS_HSW macro on the audio side. Instead declare a new
>> AZX_DCAPS_NEED_I915_POWER (or similar) driver quirk.
>>
>> 3. Somewhere in the beginning of the probing in hda_intel.c, we'll need
>> something like:
>>
>> if (driver_caps & AZX_DCAPS_NEED_I915_POWER)
>>     hda_i915_init(chip);
>>
>> 4. The hda_i915_init does not need to be exported (they're now both in the
>> same module). hda_i915.h could have something like:
>>
>> #ifdef DRM_I915
>>     void hda_i915_init(chip);
>> #else
>>     #define hda_i915_init(chip) do {} while(0) #endif

Or perhaps even better

static inline void hda_i915_init(azx *chip) {}

>
> Thanks your suggestions. Will change them in next version.
>>
>> 5. You're saying this patch is about avoid loading dependency between
>> snd-hda-intel and i915 module. That does not make sense to me, since the
>> powerwell API is in the i915 module, snd-hda-intel must load it when it wants to
>> enable power on haswell, right? Thus there is a loading dependency. If the i915
>> module is not loaded at that point, we must wait for it to load, so we can have
>> proper power, instead of continuing probing without the power well?
>>
>
> If i915 module not loaded, snd-had-intel will load it in current code.
> The question is the tolerant delay of waiting for i915 loading.

Could you explain in more detail, what you mean with "tolerant delay" 
and what will happen if you exceed that delay?

> Continuing probing would immediately fail.

Isn't that what's happening with your current patch set, if 
snd-hda-intel is loaded first?
In azx_probe, hda_i915_init won't get the symbols, because 
request_module is nowait. Then hda_display_power(true) won't enable 
power, because there are no symbols.
Probing audio controller will then continue without power well, which is 
bad?

-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic

  reply	other threads:[~2013-05-13 12:13 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-13  7:37 [PATCH 0/5] Power-well API implementation for Haswell Wang Xingchao
2013-05-13  7:37 ` [PATCH 1/5] drm/915: Add private api for power well usage Wang Xingchao
2013-05-13 12:29   ` Takashi Iwai
2013-05-13  7:37 ` [PATCH 2/5] ALSA: hda - Add external module hda-i915 for power well Wang Xingchao
2013-05-13 12:32   ` Takashi Iwai
2013-05-13  7:37 ` [PATCH 3/5] ALSA: hda - Power well request/release for hda controller Wang Xingchao
2013-05-13  7:37 ` [PATCH 4/5] ALSA: hda - Fix module dependency with gfx i915 Wang Xingchao
2013-05-13 12:34   ` Takashi Iwai
2013-05-13  7:37 ` [PATCH 5/5] ALSA/i915: Check power well API existense before calling Wang Xingchao
2013-05-13  8:28   ` David Henningsson
2013-05-13  8:55     ` Jaroslav Kysela
2013-05-13  8:59       ` [alsa-devel] " Takashi Iwai
2013-05-13  9:53         ` Jaroslav Kysela
2013-05-13 12:00       ` Wang, Xingchao
2013-05-13 11:55     ` [alsa-devel] " Wang, Xingchao
2013-05-13 12:13       ` David Henningsson [this message]
2013-05-13 13:50         ` Wang, Xingchao
2013-05-13 15:37           ` David Henningsson
2013-05-13 12:17       ` Takashi Iwai
2013-05-13 13:43         ` Wang, Xingchao
2013-05-13 12:38   ` [alsa-devel] " Takashi Iwai
2013-05-13  7:51 ` [alsa-devel] [PATCH 0/5] Power-well API implementation for Haswell Wang, Xingchao

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=5190D8DC.8090305@canonical.com \
    --to=david.henningsson@canonical.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jesse.barnes@intel.com \
    --cc=jocelyn.li@intel.com \
    --cc=liam.r.girdwood@intel.com \
    --cc=mengdong.lin@intel.com \
    --cc=paulo.r.zanoni@intel.com \
    --cc=tiwai@suse.de \
    --cc=xingchao.wang@intel.com \
    --cc=xingchao.wang@linux.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.