On Thu, Mar 20, 2025 at 1:14 PM Mark Brown broonie@kernel.org wrote:
On Wed, Mar 19, 2025 at 05:05:39PM -0600, Nico Pache wrote:
FW_CS_DSP gets enabled if KUNIT is enabled. The test should rather depend on if the feature is enabled. Fix this by moving FW_CS_DSP to the depends on clause, and set CONFIG_FW_CS_DSP=y in the kunit tooling.
config FW_CS_DSP_KUNIT_TEST tristate "KUnit tests for Cirrus Logic cs_dsp" if !KUNIT_ALL_TESTS
depends on KUNIT && REGMAP
depends on KUNIT && REGMAP && FW_CS_DSP default KUNIT_ALL_TESTS
select FW_CS_DSP
This makes no sense to me, the select statement is forcing on the code it's testing which is a library and so is selected by it's users, this
Similarly to eb5c79828cfa ("firmware: cs_dsp: FW_CS_DSP_KUNIT_TEST should not select REGMAP"), We shouldnt force a feature on when using KUNIT_ALL_TESTS.
change will just stop the tests being run unless someone does the dance to enable a driver which relies on the library. That is something that
My config also sets the UML wrapper to enable this FW_CS_DSP config so it will continue to work in that environment.
seems unlikely to change the outcome of the tests when run from KUnit which is independent of any hardware.
KUNIT is supported outside the UML environment, and some distros (like fedora, and downstream flavors), use KUNIT as modules, with KUNIT_ALL_TESTS=m. We only want the tests that are supported by our config to be available, we dont want KUNIT going and enabling other features so the test works.
Cheers, -- Nico