[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <533D62CE.5040907@metafoo.de>
Date: Thu, 03 Apr 2014 15:31:58 +0200
From: Lars-Peter Clausen <lars@...afoo.de>
To: Mark Brown <broonie@...nel.org>
CC: Takashi Iwai <tiwai@...e.de>,
Arun Shamanna Lakshmi <aruns@...dia.com>,
lgirdwood@...il.com, swarren@...dotorg.org, perex@...ex.cz,
alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
Songhee Baek <sbaek@...dia.com>
Subject: Re: [PATCH] ASoC: dapm: Add support for multi register mux
On 04/03/2014 11:53 AM, Mark Brown wrote:
> On Thu, Apr 03, 2014 at 11:47:15AM +0200, Takashi Iwai wrote:
>
>> I'm a bit late in the game, but I feel a bit uneasy through looking
>> at the whole changes. My primary question is, whether do we really
>> need to share the same struct soc_enum for the onehot type? What
>> makes hard to use a struct soc_enum_onehot for them? You need
>> different individual get/put for each type. We may still need to
>> change soc_dapm_update stuff, but it's different from sharing
>> soc_enum.
>
> Indeed, I had thought this was where the discussion was heading - not
> looked at this version of the patch yet.
>
It would be nice, but it also requires some slight restructuring. The issue
we have right now is that there is strictly speaking a bit of a layering
violation. The DAPM widgets should not need to know how the kcontrols that
are attached to the widget do their IO. What we essentially do in
dapm_connect_mux() (and also dapm_connect_mixer) is an open-coded version of
the controls get handler. Replacing that by calling the get handler instead
should allow us to use different structs for enums and onehot enums.
- Lars
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists