On Thu, Jul 15, 2021 at 5:39 PM Mark Brown broonie@kernel.org wrote:
On Thu, Jul 15, 2021 at 05:18:00PM +0300, Daniel Baluta wrote:
Introduce two DT properties in dsp node: * fw-filename, optional property giving the firmware filename (if this is missing fw filename is read from board description) * tplg-filename, mandatory giving the topology filename.
These sound entirely like operating system configuration which I'd expect to be inferred from the machine identification. What happens if a system has multiple options for firmware files, or if the OS ships the topology and firmware bundled up in a single image to avoid them getting out of sync? What's the benefit of putting them in the DT?
We thought that if a system has multiple options for firmware files we could use different Device Tree files. But indeed this doesn't scale.
It would be awkward to create a new dts just to change the firmware name.
Similarly for topology files. We might have:
- different audio scenarios (e.g different audio pipeline with different components, e.g Post Processing Components, etc) - different hardware attached to a board (e.g i.MX8 can have a baseboard attached which brings in more codecs).
I think the best way to specify the audio firmware is via the board description structure which is already used to provide a default value for firmware file name.
Then for the topology used we could make that as a module parameter.
For us it is important to be able to use different topologies without recompiling the kernel. So, far we just used a simbolic link to the default topology file and change the symbolic link to the desired topology and then reboot.