All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vinod Koul <vinod.koul@intel.com>
To: Mark Brown <broonie@kernel.org>
Cc: liam.r.girdwood@linux.intel.com, patches.audio@intel.com,
	alsa-devel@alsa-project.org, Jeeja KP <jeeja.kp@intel.com>
Subject: Re: [PATCH 3/6] ASoC: Intel: Skylake: Add functions for DSP module configuration
Date: Sat, 1 Aug 2015 18:20:58 +0530	[thread overview]
Message-ID: <20150801125058.GK29916@localhost> (raw)
In-Reply-To: <20150731180925.GL20873@sirena.org.uk>


[-- Attachment #1.1: Type: text/plain, Size: 3006 bytes --]

On Fri, Jul 31, 2015 at 07:09:25PM +0100, Mark Brown wrote:
> On Fri, Jul 31, 2015 at 10:23:50AM +0530, Vinod Koul wrote:
> > On Thu, Jul 30, 2015 at 08:01:04PM +0100, Mark Brown wrote:
> > > On Thu, Jul 30, 2015 at 08:45:07AM +0530, Vinod Koul wrote:
> 
> > > | This series adds NHLT table support in the driver. This also adds support
> > > | for dsp init, modules configuration and messaging support
> 
> One issue I should probably highlight is - what is a NHLT table and has
> is it documented (I guess it is part of some part of some ACPI spec
> given my understanding of the rules on publication of ACPI bindings).
So by default, SKL BIOS has a new ACPI Table called NHLT, Non
HDA-Link Table. This table contains the settings the driver has to pick up
for the non HDA links (SSP, PDM) and send them to firmware for applying.

The firmware expects it in the same format as stored in the BIOS so we just
query the 'endpoint' blob and send it to FW when that BE is enabled from
DPCM. These contain the hardware register settings that are required for
that 'board' and also the DMA gateway settings. All these are taken up by FW
and applied for that link. We are reusing infrastructure made for other OSes
here and will help us when someone installs Linux on SKL devices we always
get the link settings which have been already tested.

> > On your questions above, one thing I would like to point that typically we
> > have alsa controls and dapm widgets to model the DSP, but now with topology
> > core, we have moved these into the usermode.
> 
> I'm not sure how that's relevant?
> 
> > In driver we have handlers for the topology events, so yes it becomes little
> > difficult to visualize but we can do better by adding comments.
> > This series is mostly helper code for getting topology created in DSP and
> > next (last series in current SKL driver work) series will add topology
> > handlers which will use these helpers, so the big picture will be clear
> > easily and complete flow can be visualized when these helpers are invoked.
> 
> Right, but you're sending all this stuff piecemeal with no advance
> explanation of where we're going.  This is a recurring problem here -
> there's lots of Intel specific abstraction layers which aren't terribly
> clear and some of which seem to turn out to be redundant on review.
The piecemeal approach was required to manage and split the traffic. This
series adds the handlers on how send bind and unbind messages, pin
management routines, how driver compute PCM params when we have a 'converter
widget' like SRC, channel converter etc
Next series will add the topology handler which will use these. Okay need to
create a pipeline so call module init, bind, calculate pcm params, apply
them etc
I will try my best to add more clarity to updated patchset (holding that up
and rereading to see if I can add more comments to help) and pls do ask
where you feel where stuff is ambiguous

-- 
~Vinod


[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 0 bytes --]



  reply	other threads:[~2015-08-01 12:49 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-21 18:23 [PATCH 0/6] ASoC: Intel: Skylake: Add DSP management routines Vinod Koul
2015-07-21 18:23 ` [PATCH 1/6] ASoC: Intel: Skylake: Add NHLT support to get BE config Vinod Koul
2015-07-23 16:41   ` Applied "ASoC: Intel: Skylake: Add NHLT support to get BE config" to the asoc tree Mark Brown
2015-07-21 18:23 ` [PATCH 2/6] ASoC: Intel: Skylake: Add dsp and ipc init helpers Vinod Koul
2015-07-23 16:41   ` Applied "ASoC: Intel: Skylake: Add dsp and ipc init helpers" to the asoc tree Mark Brown
2015-07-21 18:23 ` [PATCH 3/6] ASoC: Intel: Skylake: Add functions for DSP module configuration Vinod Koul
2015-07-29 12:33   ` Mark Brown
2015-07-29 16:50     ` Vinod Koul
2015-07-29 17:56       ` Mark Brown
2015-07-30  3:15         ` Vinod Koul
2015-07-30 19:01           ` Mark Brown
2015-07-31  4:53             ` Vinod Koul
2015-07-31 18:09               ` Mark Brown
2015-08-01 12:50                 ` Vinod Koul [this message]
2015-07-21 18:23 ` [PATCH 4/6] ASoC: Intel: Skylake: Add helpers for SRC and converter modules Vinod Koul
2015-07-21 18:23 ` [PATCH 5/6] ASoC: Intel: Skylake: Add DSP module init and binding routines Vinod Koul
2015-07-29 12:35   ` Mark Brown
2015-07-29 16:55     ` Vinod Koul
2015-07-21 18:24 ` [PATCH 6/6] ASoC: Intel: Skylake: Add pipe management helpers 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=20150801125058.GK29916@localhost \
    --to=vinod.koul@intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=jeeja.kp@intel.com \
    --cc=liam.r.girdwood@linux.intel.com \
    --cc=patches.audio@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.