[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2ab412c5-bf96-5ba3-c193-5a8ad9071bbb@linux.intel.com>
Date: Mon, 17 Aug 2020 10:14:25 -0500
From: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
To: Vinod Koul <vkoul@...nel.org>,
Bard Liao <yung-chuan.liao@...ux.intel.com>
Cc: alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
tiwai@...e.de, broonie@...nel.org, gregkh@...uxfoundation.org,
jank@...ence.com, srinivas.kandagatla@...aro.org,
rander.wang@...ux.intel.com, ranjani.sridharan@...ux.intel.com,
hui.wang@...onical.com, sanyog.r.kale@...el.com,
mengdong.lin@...el.com, bard.liao@...el.com
Subject: Re: [PATCH v2] soundwire: SDCA: add helper macro to access controls
>> The upcoming SDCA (SoundWire Device Class Audio) specification defines
>> a hiearchical encoding to interface with Class-defined capabilities,
>
> typo hiearchical
ok
>> based on which audio function, entity, control and channel being used.
>
> Can you please elaborate on what do these terms refer to?
>
> Also can we have some documentation for this and how Linux is going to
> use it..
These are concepts in the SDCA draft spec, and that should be the
reference. We worked with MIPI so that this spec will be available with
a click-through agreement when ratified, for now it's only available to
contributors per MIPI bylaws.
If you do not have access to this specification, then that's a real
problem. Maybe you need to let Bard take care of this part as a
co-maintainer?
The goal with this macro is to enable a first set of codecs drivers
using these concepts to be released upstream. All you need to know at
this point is that controls are defined in a hierarchical way and
accessed with a read/write transaction from/to the address created with
the following macro.
>> +/* v1.2 device - SDCA address mapping */
>> +#define SDW_SDCA_CTL(fun, ent, ctl, ch) (BIT(30) | \
>> + (((fun) & 0x7) << 22) | \
>> + (((ent) & 0x40) << 15) | \
>> + (((ent) & 0x3f) << 7) | \
>> + (((ctl) & 0x30) << 15) | \
>> + (((ctl) & 0x0f) << 3) | \
>> + (((ch) & 0x38) << 12) | \
>> + ((ch) & 0x07))
>> +
>
> how about adding an underscore to the arguments here:
>
> #define SDW_SDCA_CTL(_fun, _ent, _ctl, _ch)
> and so on..
I checked the SoundWire defines and the vast majority of the macros
don't use underscores, and when they do there's no consistency between 1
or 2 underscores.
Powered by blists - more mailing lists