<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/firmware/cirrus, branch linux-6.3.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.3.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.3.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2022-11-25T14:36:56Z</updated>
<entry>
<title>firmware: cs_dsp: Switch to using namespaced exports</title>
<updated>2022-11-25T14:36:56Z</updated>
<author>
<name>Mark Brown</name>
</author>
<published>2022-11-25T14:36:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af406c90977241bbaa436b121d3e79b1b2ffeeb2'/>
<id>urn:sha1:af406c90977241bbaa436b121d3e79b1b2ffeeb2</id>
<content type='text'>
Merge series from Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;:

Use EXPORT_SYMBOL_NS_GPL() instead of EXPORT_SYMBOL_GPL() and patch the
three drivers that use cs_dsp to add the MODULE_IMPORT_NS().

To make the namespace more specific the KConfig symbol for cs_dsp is
changed from CS_DSP to FW_CS_DSP.
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Make the exports namespaced</title>
<updated>2022-11-25T11:54:00Z</updated>
<author>
<name>Richard Fitzgerald</name>
</author>
<published>2022-11-24T13:45:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e57d904ac4be6de7ecc9083f51a9a38f72482f82'/>
<id>urn:sha1:e57d904ac4be6de7ecc9083f51a9a38f72482f82</id>
<content type='text'>
Move all the exports into a namespace.
This also adds the MODULE_IMPORT_NS to the 3 drivers that use the
exported functions.

Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20221124134556.3343784-3-rf@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Rename KConfig symbol CS_DSP -&gt; FW_CS_DSP</title>
<updated>2022-11-25T11:53:59Z</updated>
<author>
<name>Richard Fitzgerald</name>
</author>
<published>2022-11-24T13:45:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d7cfdf17cb9d072b41547e7cc882ecd900aa6589'/>
<id>urn:sha1:d7cfdf17cb9d072b41547e7cc882ecd900aa6589</id>
<content type='text'>
Qualify the KConfig symbol for cs_dsp by adding a FW_ prefix so that
it is more explicit what is being referred to. This is preparation for
using the symbol to namespace the exports.

Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20221124134556.3343784-2-rf@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: cs_dsp_coeff_write_ctrl() should report changed</title>
<updated>2022-11-23T17:03:08Z</updated>
<author>
<name>Simon Trimmer</name>
</author>
<published>2022-11-23T16:58:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c56f4b2442d33bd94c418697f753271099384bee'/>
<id>urn:sha1:c56f4b2442d33bd94c418697f753271099384bee</id>
<content type='text'>
ALSA callers need to know whether there was a change to the value so
that they can report a control write change correctly.

Signed-off-by: Simon Trimmer &lt;simont@opensource.cirrus.com&gt;
Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20221123165811.3014472-2-rf@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Add memory chunk helpers</title>
<updated>2022-07-22T12:40:00Z</updated>
<author>
<name>Charles Keepax</name>
</author>
<published>2022-07-22T09:48:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a4b976552f122ea851f556769874022cf097741e'/>
<id>urn:sha1:a4b976552f122ea851f556769874022cf097741e</id>
<content type='text'>
Add helpers that can be layered on top of a buffer read from or to be
written to the DSP to faciliate accessing datastructures within the DSP
memory. These functions handle adding the padding bytes for the DSP,
converting to big endian, and packing arbitrary length data.

Signed-off-by: Charles Keepax &lt;ckeepax@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20220722094851.92521-2-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Add pre_stop callback</title>
<updated>2022-07-22T12:39:59Z</updated>
<author>
<name>Charles Keepax</name>
</author>
<published>2022-07-22T09:48:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dea997733575c5793ca77e166bbbf89097987eb4'/>
<id>urn:sha1:dea997733575c5793ca77e166bbbf89097987eb4</id>
<content type='text'>
The code already has a post_stop callback, add a matching pre_stop
callback to the client_ops that is called before execution is stopped.
This callback provides a convenient place for the client code to
communicate with the DSP before it is stopped.

Signed-off-by: Charles Keepax &lt;ckeepax@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20220722094851.92521-1-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Fix overrun of unterminated control name string</title>
<updated>2022-04-12T16:57:04Z</updated>
<author>
<name>Richard Fitzgerald</name>
</author>
<published>2022-04-12T16:39:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5b933c7262c5b0ea11ea3c3b3ea81add04895954'/>
<id>urn:sha1:5b933c7262c5b0ea11ea3c3b3ea81add04895954</id>
<content type='text'>
For wmfw format v2 and later the coefficient name strings have a length
field and are NOT null-terminated. Use kasprintf() to convert the
unterminated string into a null-terminated string in an allocated buffer.

The previous code handled this duplication incorrectly using kmemdup()
and getting the length from a strlen() of the (unterminated) source string.
This resulted in creating a string that continued up to the next byte in
the firmware file that just happened to be 0x00.

Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Fixes: f6bc909e7673 ("firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs")
Link: https://lore.kernel.org/r/20220412163927.1303470-1-rf@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Clear core reset for cache</title>
<updated>2022-01-05T13:53:53Z</updated>
<author>
<name>Charles Keepax</name>
</author>
<published>2022-01-05T11:30:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7aa1cc1091e0a424e9e7711ca381ebe98b6865bc'/>
<id>urn:sha1:7aa1cc1091e0a424e9e7711ca381ebe98b6865bc</id>
<content type='text'>
If the Halo registers are kept in the register cache the
HALO_CORE_RESET bit will be retained as 1 after reset is triggered in
cs_dsp_halo_start_core. This will cause subsequent writes to reset
the core which is not desired. Apart from this bit the rest of the
register bits are cacheable, so for safety sake clear the bit to
ensure the cache is consistent.

Signed-off-by: Charles Keepax &lt;ckeepax@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20220105113026.18955-6-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Move lockdep asserts to avoid potential null pointer</title>
<updated>2021-11-30T13:08:12Z</updated>
<author>
<name>Charles Keepax</name>
</author>
<published>2021-11-30T10:28:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=043c0a6278ca443b1835726239dc2814c1313a9e'/>
<id>urn:sha1:043c0a6278ca443b1835726239dc2814c1313a9e</id>
<content type='text'>
Move the lockdep asserts until after the ctl pointer has been checked
for NULL, to avoid potentially NULL pointer dereferences.

Fixes: fb2f364fb5b9 ("firmware: cs_dsp: Add lockdep asserts to interface functions")
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Charles Keepax &lt;ckeepax@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20211130102842.26410-1-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: cs_dsp: Allow creation of event controls</title>
<updated>2021-11-17T22:16:28Z</updated>
<author>
<name>Charles Keepax</name>
</author>
<published>2021-11-17T13:23:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5c903f64ce97172d63f7591cfa9e37cba58867b2'/>
<id>urn:sha1:5c903f64ce97172d63f7591cfa9e37cba58867b2</id>
<content type='text'>
Some firmwares contain controls intended to convey firmware state back
to the host. Whilst more infrastructure will probably be needed for
these in time, as a first step allow creation of the controls, so said
firmwares arn't completely rejected.

Signed-off-by: Charles Keepax &lt;ckeepax@opensource.cirrus.com&gt;
Link: https://lore.kernel.org/r/20211117132300.1290-10-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
</feed>
