[alsa-devel] [PATCH v6] ASoC: add RT286 CODEC driver
lars at metafoo.de
Wed May 7 19:46:09 CEST 2014
On 05/07/2014 07:21 PM, Mark Brown wrote:
> On Tue, May 06, 2014 at 12:04:27PM +0000, Bard Liao wrote:
>>> -----Original Message-----
>>> From: Mark Brown [mailto:broonie at kernel.org]
> As I'm fairly sure has been requested before please fix your mailer to
> word wrap within paragraphs, it is very hard to read your mails since
> the lines are longer than 80 columns.
>> Virtual controls assume there is no related register related to the controls, so codec
>> doesn't need to set anything when the control's value is changed in general cases.
>> But rt286 need to do something when the control's value is changed especially mux
>> Do you have any suggestion for setting corresponding registers of a
>> virtual control?
> Please extend the APIs for virtual controls if you find they are missing
> things you need, they've not been widely used in this sort of context -
> I think this is the first substantial device anyone has tried to merge
> without a register map so it's likely there are gaps.
I don't think virtual controls are the right approach here. Virtual controls
are for controls where the state is completely in software, but here the
state is still in hardware. It's just that there is no uniform hardware map.
But there is still some structure. So you'd have controls with custom put
and get handlers and for DAPM widgets use the event handler.
But I still think that the best and easiest solution is to have custom
regmap read/write function that do the translation of logical registers to
physical read/write operations.
More information about the Alsa-devel