From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
To: "Cezary Rojewski" <cezary.rojewski@intel.com>,
"Péter Ujfalusi" <peter.ujfalusi@linux.intel.com>,
"Amadeusz Sławiński" <amadeuszx.slawinski@linux.intel.com>,
lgirdwood@gmail.com, broonie@kernel.org
Cc: chao.song@intel.com, alsa-devel@alsa-project.org,
ranjani.sridharan@linux.intel.com, kai.vehmanen@linux.intel.com
Subject: Re: [PATCH 12/19] ASoC: SOF: Intel: Set the default firmware library path for IPC4
Date: Tue, 18 Oct 2022 11:37:10 -0500 [thread overview]
Message-ID: <522cf594-a56a-6649-9bce-b616bf8f47ca@linux.intel.com> (raw)
In-Reply-To: <06f141c4-cf3b-f227-2f94-625ffcda79f6@intel.com>
On 10/18/22 10:46, Cezary Rojewski wrote:
> On 2022-10-18 3:49 PM, Péter Ujfalusi wrote:
>> On 18/10/2022 15:38, Amadeusz Sławiński wrote:
>
> ...
>
>>> I'm not sure that I understand the rationale here, can't libraries be
>>> kept in the same directory as FW, as far as I know they are version
>>> locked to FW anyway.
I am not sure what 'version lock' means, nor who determines the version
of the base firmware. The base firmware is not necessarily compiled by
Intel in an SOF/open-source context.
>> During the internal review we arrived to this setup, to keep the
>> libraries separate from the basefw binary.
>> One of the reason is that SOF project is not likely not going to release
>> external libraries, they are mostly vendor/product locked.
>> To make the life easier for the vendors (and distributions, packagers)
>> we concluded that it is better to keep them separate.
>>
>> The option is there to specify custom path as well in case it is needed.
>
> Thanks for detailed answer, Peter. My two cents:
>
> I'd say the origin of the library has a saying in that. If it's
> implemented by a vendor then it's simply not our decision. If it's made
> by us (Intel), it's highly probable that there's no problem with sharing
> the library. Library alone is often not enough - to process data as
> expected on the specific hardware, additional configuration is needed.
> We share that information over SRAM between the driver and the firmware.
> And that's the key bit that should not be shared here.
We should not debate on this mailing list what can or cannot be
released, not make any distinctions between Intel and others. The
library handling mechanism is generic, who provides the libraries is
irrelevant.
> As the basefw makes use of different prefixes when compared to the
> libraries, I believe it's fine to leave as is. If an error is made when
> differentiating between dsp_fw_* and dsp_lib_* then introducing avs-lib/
> is not going to help here. It's also much less hassle with matching the
> basefw and lib versions if you have them both within single folder,
> granted both target same AudioDSP generation (SKL-based, APL-based etc.).
You're assuming that it's the same exact set of binary libraries for all
skews based on the same SOC.
That's not necessarily a valid assumption, it's perfectly possible that
a specific OEM decides to allocate more budget for a specific feature
and less for others, resulting in libraries that are recompiled,
optimized or configured differently. The UUID is a weak notion here, as
measured by the same UUID being used for different DSP generations.
Nothing prevents someone from generating a slightly different library
exposed with the same UUID.
We didn't want to restrict our partners and gave them with the ability
to put both the base firmware and the libraries in different directories
and overload the default path should they wish to do so. They could
decide to point to the same directory if they wanted to. That's not our
decision.
If you look at all recent evolutions, we initially introduced different
paths for firmware, then topology, then firmware and topology names. The
logic of adding more flexibility for library path follow the pattern of
trying to avoid making assumptions we have to undo at a later point.
>>> In avs driver when we decided on intel/avs/platform
>>> path we planned to keep FW related libaries there...
>>
>> My initial approach was this as well, but after a long debate it got
>> revised.
>
> Amadeo: have my bow..
> Czarek: ..and my axe..
I don't understand what bow and axe have to do with this discussion.
Let's say civil, shall we?
next prev parent reply other threads:[~2022-10-18 16:49 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-18 12:08 [PATCH 00/19] ASoC: SOF: Intel/IPC4: Support for external firmware libraries Peter Ujfalusi
2022-10-18 12:08 ` [PATCH 01/19] ASoC: SOF: loader: Set complete state before post_fw_run op Peter Ujfalusi
2022-10-18 12:08 ` [PATCH 02/19] ASoC: SOF: Introduce container struct for SOF firmware Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 03/19] ASoC: SOF: amd: Use the basefw firmware container directly Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 04/19] ASoC: SOF: Intel: hda-loader: " Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 05/19] ASoC: SOF: Intel: hda-loader-skl: " Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 06/19] ASoC: SOF: Drop the firmware and fw_offset from snd_sof_pdata Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 07/19] ASoC: SOF: ipc: ops: Add support for optional init and exit callbacks Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 08/19] ASoC: SOF: ipc4-loader: Save the maximum number of libraries supported Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 09/19] ASoC: SOF: ipc4: Convert the firmware handling (loader) to library convention Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 10/19] ASoC: SOF: IPC4: Add helper for looking up module by UUID Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 11/19] ASoC: SOF: Add path definition for external firmware libraries Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 12/19] ASoC: SOF: Intel: Set the default firmware library path for IPC4 Peter Ujfalusi
2022-10-18 12:38 ` Amadeusz Sławiński
2022-10-18 13:49 ` Péter Ujfalusi
2022-10-18 15:46 ` Cezary Rojewski
2022-10-18 16:37 ` Pierre-Louis Bossart [this message]
2022-10-18 17:18 ` Cezary Rojewski
2022-10-19 9:51 ` Cezary Rojewski
2022-10-19 11:16 ` Péter Ujfalusi
2022-10-19 11:58 ` Cezary Rojewski
2022-10-19 12:21 ` Péter Ujfalusi
2022-10-18 12:09 ` [PATCH 13/19] ASoC: SOF: ipc4: Define platform dependent library loading callback Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 14/19] ASoC: SOF: Intel: hda: Add flag to indicate that the firmware is IMR booted Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 15/19] ASoC: SOF: Intel: Add ipc4 library loading implementation Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 16/19] ASoC: SOF: loader: Add support for IPC dependent post firmware boot ops Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 17/19] ASoC: SOF: ipc4: Stop using the query_fw_configuration fw_loader ops Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 18/19] ASoC: SOF: loader: Remove the query_fw_configuration ops Peter Ujfalusi
2022-10-18 12:09 ` [PATCH 19/19] ASoC: SOF: ipc4-loader: Support for loading external libraries Peter Ujfalusi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=522cf594-a56a-6649-9bce-b616bf8f47ca@linux.intel.com \
--to=pierre-louis.bossart@linux.intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=amadeuszx.slawinski@linux.intel.com \
--cc=broonie@kernel.org \
--cc=cezary.rojewski@intel.com \
--cc=chao.song@intel.com \
--cc=kai.vehmanen@linux.intel.com \
--cc=lgirdwood@gmail.com \
--cc=peter.ujfalusi@linux.intel.com \
--cc=ranjani.sridharan@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox