<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Makefile</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>75a4a6ef - firmware: cs_dsp: Add KUnit testing of client callbacks</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#75a4a6ef</link>
        <description>firmware: cs_dsp: Add KUnit testing of client callbacksTest that the cs_dsp_client_ops callbacks are called when expected.pre_run, post_run - when cs_dsp_run() is called.pre_stop, post_stop - when cs_dsp_stop() is calledcontrol_add - when a WMFW is loadedcontrol_remove - when cs_dsp_remove() is calledSigned-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-13-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:25 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>feb5fb06 - firmware: cs_dsp: Add KUnit testing of wmfw error cases</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#feb5fb06</link>
        <description>firmware: cs_dsp: Add KUnit testing of wmfw error casesAdd tests for various types of errors and illegal values inwmfw files. This covers buffer overflows as well as generalunsupported field values.There are several sets of test cases to cover various differentversions of the wmfw file format.V0 format was only used on the earlier ADSP2 devices. It doesnot have algorithm blocks.V1 format is used on all ADSP2 versions. It added algorithmblocks and firmware coefficient descriptor blocks. Stringsare stored in fixed-length arrays.V2 format is used on all ADSP2 versions. It is similar to V1but space for strings is variable-length with either an 8-bitor 16-bit length field.V3 format is used on Halo Core DSPs and is mostly identical tothe V3 format.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-12-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:24 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>cd8c0584 - firmware: cs_dsp: Add KUnit testing of bin error cases</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#cd8c0584</link>
        <description>firmware: cs_dsp: Add KUnit testing of bin error casesAdd tests for various types of errors and illegal values inbin files. This covers buffer overflows as well as generalunsupported field values.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-11-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:23 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>fe54fd54 - firmware: cs_dsp: Add KUnit testing of control read/write</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#fe54fd54</link>
        <description>firmware: cs_dsp: Add KUnit testing of control read/writeAdd KUnit test cases for control read/write.Tests cases cover general reading and writing of controls:1) Read/write at offset position in control.2) Read/write of various lengths less than length of the control.3) Rejecting illegal arguments.The test cases are run for ADSP2 with 16-bit registers, ADSP2with 32-bit registers and Halo Core with 32-bit registers. TheADSP2 cases are further divided into runs for V1 and V2 formatWMFW files, because there are differences in how V1 and V2defines controls.The obsolete V0 format does not have controls, so no testing ofthat format is needed.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-10-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:22 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>9b33a4fc - firmware: cs_dsp: Add KUnit testing of control cache</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#9b33a4fc</link>
        <description>firmware: cs_dsp: Add KUnit testing of control cacheAdd KUnit test cases for the caching of control content.The test cases can be divided into four groups:1) The cache is correctly initialized when the firmware is first   downloaded.2) Reads return the correct data.3) Writes update the registers and cache.4) If a value has been written to the control it is retained in   the cache and written out to the registers when the firmware   is started.There are multiple test suites to cover: - V1 and V2 format files on 16-bit and 32-bit ADSP2. - V3 format files on Halo Core DSPs.V1 format files, and some V2 format files, didn&apos;t provide accessflags for the controls. There are a couple of test cases forunspecified flags to ensure backwards compatibility with theoriginal implementation of these older firmware versions.The obsolete V0 format does not have controls, so no testing ofthat format is needed.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-9-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:21 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>83baecd9 - firmware: cs_dsp: Add KUnit testing of control parsing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#83baecd9</link>
        <description>firmware: cs_dsp: Add KUnit testing of control parsingAdd KUnit test cases for parsing of firmware controls out of thewmfw. These test cases are only testing that the data in the wmfwis correctly interpreted and entered into the list of controls.The test cases can be roughly divided into three types:1) The correct values are extracted from the wmfw.2) Variable-length strings are handled correctly.3) Controls are correctly identified as unique or identical.There are multiple test suites to cover:- V1 and V2 format files on 16-bit and 32-bit ADSP2.- V3 format files on Halo Core DSPs.V1 format does not have named controls, and the strings in thecoefficient descriptor are fixed-length fields. On V2 and V3 formatthe controls are named and all strings are variable-length.The obsolete V0 format does not have controls, so no testing ofthat format is needed.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-8-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:20 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>a2b2f2c1 - firmware: cs_dsp: Add KUnit testing of wmfw download</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#a2b2f2c1</link>
        <description>firmware: cs_dsp: Add KUnit testing of wmfw downloadThis adds a KUnit test suite to test downloading wmfw files.The general technique is1. Create mock wmfw file content2. Tell cs_dsp to download the wmfw file3. Check in the emulated regmap registers that the correct values have   been written to DSP memory4. Drop the regmap cache for the expected written registers and then do a   regcache_sync() to check for unexpected writes to other registers.The test covers ADSP2 v1 and v2, and HALO Core DSPs. (ADSP1 is veryobsolete so isn&apos;t tested).There is a large number of test cases and parameterized variants of testsbecause of the many different addressing schemes supported by the Cirrusdevices. The DSP has 2 or 3 memory spaces: XM, YM and ZM. The DSP seesthese using its native addressing, which is word-addressed (notbyte-addressed). The host sees these through one of several registermappings (depending on the DSP type and parent codec family). Theregisters have three different addressing schemes: 16-bit registersaddressed by register number, 32-bit registers addressed by registernumber, or 32-bit registers addressed by byte (with a stride of 4). Inaddition to these multiple addressing schemes, the Halo Core DSPs have a&quot;packed&quot; register mapping that maps 4 DSP words into 3 registers. Inaddition to this there are 4 versions of the wmfw file format to betested.The test cases intentionally have relatively little factoring-out ofsimilar code. This makes it much easier to visually verify that a testcase is testing correctly, and what exactly it is testing. Factoring outlarge amounts of code into helper functions tends to obscure what theactual test procedure is, so increasing the chance of hidden errors wheretest cases don&apos;t actually test as intended.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-7-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:19 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>dd0b6b1f - firmware: cs_dsp: Add KUnit testing of bin file download</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#dd0b6b1f</link>
        <description>firmware: cs_dsp: Add KUnit testing of bin file downloadThis adds a KUnit test suite to test downloading bin files.The general technique is1. Create mock bin file content2. Tell cs_dsp to download the bin file3. Check in the emulated regmap registers that the correct values have   been written to DSP memory4. Drop the regmap cache for the expected written registers and then do a   regcache_sync() to check for unexpected writes to other registers.The test covers ADSP2 v1 and v2, and HALO Core DSPs. (ADSP1 is veryobsolete so isn&apos;t tested).There is a large number of test cases and parameterized variants of testsbecause of the many different addressing schemes supported by the Cirrusdevices. The DSP has 2 or 3 memory spaces: XM, YM and ZM. The DSP seesthese using its native addressing, which is word-addressed (notbyte-addressed). The host sees these through one of several registermappings (depending on the DSP type and parent codec family). Theregisters have three different addressing schemes: 16-bit registersaddressed by register number, 32-bit registers addressed by registernumber, or 32-bit registers addressed by byte (with a stride of 4). Inaddition to these multiple addressing schemes, the Halo Core DSPs have a&quot;packed&quot; register mapping that maps 4 DSP words into 3 registers. The binfile addresses the data blob relative to the base address of an algorithm,which has to be calculated in both DSP words (for the DSP to access) andregister addresses (for the host).This results in many different addressing schemes used in parallel, hencethe complexity of the address and size manipulation in the test cases:word addresses in DSP memory, byte offsets, word offsets, registeraddresses (either byte-addressed 32-bit or index-addressed 16-bit), andpacked register addresses.The test cases intentionally have relatively little factoring-out ofsimilar code. This makes it much easier to visually verify that a testcase is testing correctly, and what exactly it is testing. Factoring outlarge amounts of code into helper functions tends to obscure what theactual test procedure is, so increasing the chance of hidden errors wheretest cases don&apos;t actually test as intended.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-6-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:18 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>7c052c66 - firmware: cs_dsp: Add mock bin file generator for KUnit testing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#7c052c66</link>
        <description>firmware: cs_dsp: Add mock bin file generator for KUnit testingAdd a mock firmware file that emulates what the firmware build toolswould normally create. This will be used by KUnit tests to generate atest bin file.The data payload in a bin is an opaque blob, so the mock bin only needsto generate the appropriate file header and description block for eachpayload blob.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-5-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:17 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>5cf1b7b4 - firmware: cs_dsp: Add mock wmfw file generator for KUnit testing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#5cf1b7b4</link>
        <description>firmware: cs_dsp: Add mock wmfw file generator for KUnit testingAdd a mock firmware file that emulates what the firmware build toolswould normally create. This will be used by KUnit tests to generate atest wmfw file.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-4-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:16 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>41e78c0f - firmware: cs_dsp: Add mock DSP memory map for KUnit testing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#41e78c0f</link>
        <description>firmware: cs_dsp: Add mock DSP memory map for KUnit testingAdd helper functions to implement an emulation of the DSP memory map.There are three main groups of functionality:1. Define a mock cs_dsp_region table.2. Calculate the addresses of memory and algorithms from the firmware   header in XM.3. Build a mock XM header in emulated XM.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-3-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:15 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
<item>
        <title>d54a3fc6 - firmware: cs_dsp: Add mock regmap for KUnit testing</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/firmware/cirrus/test/Makefile#d54a3fc6</link>
        <description>firmware: cs_dsp: Add mock regmap for KUnit testingAdd a mock regmap implementation to act as a simulated DSP for KUnittesting. This is built as a utility module so that it could be used byclients of cs_dsp to create a mock &quot;DSP&quot; for their own testing.cs_dsp interacts with the DSP only through registers. Most of theregister space of the DSP is RAM. ADSP cores have a small set of controlregisters. HALO Core DSPs have a much larger set of control registers butonly a small subset are used.Most writes are &quot;blind&quot; in the sense that cs_dsp does not expect toreceive any sort of response from the DSP. So there isn&apos;t any need toemulate a &quot;DSP&quot;, only a set of registers that can be written and readback.The idea of the mock regmap is to use the cache to accumulate writeswhich can then be tested against the values that are expected to be inthe registers.Stray writes can be detected by dropping the cache entries for alladdresses that should have been written and then issuing a regcache_sync().If this causes bus writes it means there were writes to unexpectedregisters.Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;Link: https://patch.msgid.link/20241212143725.1381013-2-rf@opensource.cirrus.comSigned-off-by: Mark Brown &lt;broonie@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/firmware/cirrus/test/Makefile</description>
        <pubDate>Thu, 12 Dec 2024 14:37:14 +0000</pubDate>
        <dc:creator>Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;</dc:creator>
    </item>
</channel>
</rss>
