sof icon indicating copy to clipboard operation
sof copied to clipboard

[amd-rn-prod-001 ONLY] Support multi-config identification via enum control of module_adapter

Open johnylin76 opened this issue 2 years ago • 0 comments

Note: commits will NOT be landed to main. (might be landed to other production branches on demand)

For the purposes of security concerns, the bytes control for 3P components will be set as read-only for production builds. For project Dewatt (ChromeOS device under AMD Renoir platform), DTS (under module_adapter) is applied on ACP SP playback pipeline, which is exclusively shared to Speakers and Headphone BE.

The config blob of DTS should be specified individually for Speakers and Headphone during the switch of active output device. However the bytes control is no more writable after topology initialization. As alternative, the enum control is added on module_adapter for multi-config identification support.

By these commits, the multi-config blobs should be assigned via the control private data for read-only bytes control, or once from external during sound card initialization, as the format of module_param with the enumerated indices as param->id. Blobs are stored by internal cache and applied accordingly to the value of enum control on prepare(). The client needs to set the corresponding value to enum control before switching the active output device.

johnylin76 avatar Oct 12 '22 12:10 johnylin76