<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/crypto/aspeed, branch v6.19.11</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.19.11</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.19.11'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2025-10-23T04:53:23+00:00</updated>
<entry>
<title>crypto: aspeed - fix double free caused by devm</title>
<updated>2025-10-23T04:53:23+00:00</updated>
<author>
<name>Haotian Zhang</name>
<email>vulab@iscas.ac.cn</email>
</author>
<published>2025-10-20T10:11:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3c9bf72cc1ced1297b235f9422d62b613a3fdae9'/>
<id>urn:sha1:3c9bf72cc1ced1297b235f9422d62b613a3fdae9</id>
<content type='text'>
The clock obtained via devm_clk_get_enabled() is automatically managed
by devres and will be disabled and freed on driver detach. Manually
calling clk_disable_unprepare() in error path and remove function
causes double free.

Remove the manual clock cleanup in both aspeed_acry_probe()'s error
path and aspeed_acry_remove().

Fixes: 2f1cf4e50c95 ("crypto: aspeed - Add ACRY RSA driver")
Signed-off-by: Haotian Zhang &lt;vulab@iscas.ac.cn&gt;
Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed - Fix dma_unmap_sg() direction</title>
<updated>2025-09-20T12:21:03+00:00</updated>
<author>
<name>Thomas Fourier</name>
<email>fourier.thomas@gmail.com</email>
</author>
<published>2025-09-10T08:22:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=838d2d51513e6d2504a678e906823cfd2ecaaa22'/>
<id>urn:sha1:838d2d51513e6d2504a678e906823cfd2ecaaa22</id>
<content type='text'>
It seems like everywhere in this file, when the request is not
bidirectionala, req-&gt;src is mapped with DMA_TO_DEVICE and req-&gt;dst is
mapped with DMA_FROM_DEVICE.

Fixes: 62f58b1637b7 ("crypto: aspeed - add HACE crypto driver")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Thomas Fourier &lt;fourier.thomas@gmail.com&gt;
Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed - Fix hash fallback path typo</title>
<updated>2025-06-26T04:56:26+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-06-23T11:17:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=fa13f1d7c71423a53234c03771fde47f0743a2ef'/>
<id>urn:sha1:fa13f1d7c71423a53234c03771fde47f0743a2ef</id>
<content type='text'>
Fix typo in the fallback code path.

Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Closes: https://lore.kernel.org/oe-kbuild-all/202506231830.us4hiwlZ-lkp@intel.com/
Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Fix potential overflow in dma_prepare_sg</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:04:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8c8f269a58f8aa245c39e732a35560b5884c3461'/>
<id>urn:sha1:8c8f269a58f8aa245c39e732a35560b5884c3461</id>
<content type='text'>
The mapped SG lists are written to hash_engine-&gt;ahash_src_addr which
has the size ASPEED_HASH_SRC_DMA_BUF_LEN.  Since scatterlists are
not bound in size, make sure that size is not exceeded.

If the mapped SG list is larger than the buffer, simply iterate
over it as is done in the dma_prepare case.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Iterate on large hashes in dma_prepare</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:04:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0602f0ef9308fe8a27c2e3325f8281432a5e0a71'/>
<id>urn:sha1:0602f0ef9308fe8a27c2e3325f8281432a5e0a71</id>
<content type='text'>
Rather than failing a hash larger than ASPEED_CRYPTO_SRC_DMA_BUF_LEN,
just hash them over and over again until it's done.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Add fallback</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:04:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=508712228696eaddc4efc706e6a8dd679654f339'/>
<id>urn:sha1:508712228696eaddc4efc706e6a8dd679654f339</id>
<content type='text'>
If a hash request fails due to a DMA mapping error, or if it is too
large to fit in the the driver buffer, use a fallback to do the hash
rather than failing.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Use API partial block handling</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:04:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5f38ebefc3703477a87c128d1a251ab6c9f4fbf8'/>
<id>urn:sha1:5f38ebefc3703477a87c128d1a251ab6c9f4fbf8</id>
<content type='text'>
Use the Crypto API partial block handling.

Also switch to the generic export format.

Remove final function that is no longer used by the Crypto API.
Move final padding into aspeed_ahash_dma_prepare_sg.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Remove sha_iv</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:04:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=72c50eb4f54c2b1412e2a79ec273fa28a449dc8f'/>
<id>urn:sha1:72c50eb4f54c2b1412e2a79ec273fa28a449dc8f</id>
<content type='text'>
Removed unused sha_iv field from request context.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Move final padding into dma_prepare</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:03:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=278d737cc2e0044a93d1dabbdcf293a8e65d981d'/>
<id>urn:sha1:278d737cc2e0044a93d1dabbdcf293a8e65d981d</id>
<content type='text'>
Rather than processing a final as two separate updates, combine
them into one for the linear dma_prepare case.

This means that the total hash size is slightly reduced, but that
will be fixed up later by repeating the hash if necessary.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aspeed/hash - Move sham_final call into sham_update</title>
<updated>2025-06-13T09:26:15+00:00</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2025-05-13T06:03:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=879203defb9216dd4343c3bf995c34321232a5cd'/>
<id>urn:sha1:879203defb9216dd4343c3bf995c34321232a5cd</id>
<content type='text'>
The only time when sham_final needs to be called in sham_finup
is when the finup request fits into the partial block.  Move this
special handling into sham_update.

The comment about releaseing resources is non-sense.  The Crypto
API does not mandate the use of final so the user could always go
away after an update and never come back.  Therefore the driver
must not hold any resources after an update call.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
</feed>
