[PATCH] CHROMIUM: ASoC: amd: acp: Add tdm support for codecs in machine driver
Venkata Prasad Potturu
venkataprasad.potturu at amd.com
Mon Nov 7 16:02:07 CET 2022
On 11/7/22 19:44, Pierre-Louis Bossart wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
>
>
> On 11/7/22 04:34, Venkata Prasad Potturu wrote:
>> On 11/2/22 17:02, Mark Brown wrote:
>>>> On 11/1/22 20:01, Mark Brown wrote:
>>>>> On Tue, Nov 01, 2022 at 03:15:08PM +0530, Venkata Prasad Potturu wrote:
>>>>> Right, that's what the code does but why is this something that should
>>>>> be controlled in this fashion?
>>>> This machine driver is common for TDM mode and I2S mode, user can
>>>> select TDM
>>>> mode or I2S mode.
>>> Why would the user choose one value or the other, and why would this
>>> choice be something that only changes at module load time? If this is
>>> user controllable I'd really expect it to be runtime controllable.
>>> You're not explaining why this is a module parameter.
>> Different vendors/OEM's use the same hardware as one need I2S mode and
>> other need TDM mode, using common driver to support I2S and TDM mode
>> with this parameter.
>>
>>
>> static int tdm_mode = 0;
>> module_param_named(tdm_mode, tdm_mode, int, 0444);
>>
>> And this can be runtime controllable by setting permissions as 0644, we
>> will change and send next version patch.
> kernel parameters are difficult to manage for distributions using a
> single-build. Either all platforms use the kernel parameter or none of
> them do. That would not allow a per-platform choice of parameters.
> Using DMI quirks or ACPI identifiers would be a lot less problematic, no?
All platforms use the kernel parameter to select the I2S/TDM mode.
Runtime parameters are not required here, by default it is in I2S mode and
when the platform needs to enable TDM mode then pass tdm_mode module
parameter as 1.
More information about the Alsa-devel
mailing list