On 14/12/2023 12:58, Venkata Prasad Potturu wrote:
On 12/14/23 16:18, Péter Ujfalusi wrote: Thanks for your time Peter!
On 09/12/2023 22:53, Cristian Ciocaltea wrote:
Some SOF drivers like AMD ACP do not always rely on a single static firmware file, but may require multiple files having their names dynamically computed on probe time, e.g. based on chip name.
I see, AMD vangogh needs two binary files to be loaded sometimes, it is not using the default name as it hints via the sof_dev_desc ("sof-vangogh.ri").
The constructed names for the two files are just using different pattern: sof-%PLAT%.ri vs sof-%PLAT%-code.bin sof-%PLAT%-data.bin
iow, instead of the combined .ri file which includes the code and data segment it has 'raw' bin files and cannot use the core for loading the firmware.
What is the reason for this? an .ri file can have two 'modules' one to be written to IRAM the other to DRAM. sof_ipc3_load_fw_to_dsp()
For AMD Vangogh platform devices signed firmware image is required, so split .ri image into code and data images.
Only Code.bin will be signed and loaded into corresponding IRAM location.
This is not different than what the Intel .ri files are made of. The module which is to be loaded to IRAM is signed code the module which goes to DRAM is not signed. The loader itself is not looking into the sections of the .ri image, it just parses the header and copies them where they belong.
if the issue is name collision then you could try to put the signed firmware file under 'signed' folder (fw_path_postfix) of the platform like Intel does with the community signed ones?
It would be great if somehow we can handle all of these in core, have shared code and familiar prints among vendors, platforms..
Fwiw, I'm planning the path, filename creation to be moved to core for the current platforms, but it implies that they do use single firmware file. struct sof_dev_desc would only have two strings: vendor - AMD / iMX / Intel / Mediatek platform - tgl, vaggogh, etc
I need to adjust it based on what I have learned today about vangogh.