Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

crypto: stm32 - use the new scatterwalk functions

Replace calls to the deprecated function scatterwalk_copychunks() with
memcpy_from_scatterwalk(), memcpy_to_scatterwalk(), scatterwalk_skip(),
or scatterwalk_start_at_pos() as appropriate.

Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Maxime Méré <maxime.mere@foss.st.com>
Cc: Thomas Bourgoin <thomas.bourgoin@foss.st.com>
Cc: linux-stm32@st-md-mailman.stormreply.com
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Eric Biggers and committed by
Herbert Xu
95c47514 323abf25

+17 -17
+17 -17
drivers/crypto/stm32/stm32-cryp.c
··· 666 666 667 667 written = min_t(size_t, AES_BLOCK_SIZE - len, alen); 668 668 669 - scatterwalk_copychunks((char *)block + len, &cryp->in_walk, written, 0); 669 + memcpy_from_scatterwalk((char *)block + len, &cryp->in_walk, written); 670 670 671 671 writesl(cryp->regs + cryp->caps->din, block, AES_BLOCK_32); 672 672 ··· 993 993 994 994 /* Advance scatterwalk to not DMA'ed data */ 995 995 align_size = ALIGN_DOWN(cryp->header_in, cryp->hw_blocksize); 996 - scatterwalk_copychunks(NULL, &cryp->in_walk, align_size, 2); 996 + scatterwalk_skip(&cryp->in_walk, align_size); 997 997 cryp->header_in -= align_size; 998 998 999 999 ret = dma_submit_error(dmaengine_submit(tx_in)); ··· 1056 1056 1057 1057 /* Advance scatterwalk to not DMA'ed data */ 1058 1058 align_size = ALIGN_DOWN(cryp->payload_in, cryp->hw_blocksize); 1059 - scatterwalk_copychunks(NULL, &cryp->in_walk, align_size, 2); 1059 + scatterwalk_skip(&cryp->in_walk, align_size); 1060 1060 cryp->payload_in -= align_size; 1061 1061 1062 1062 ret = dma_submit_error(dmaengine_submit(tx_in)); ··· 1067 1067 dma_async_issue_pending(cryp->dma_lch_in); 1068 1068 1069 1069 /* Advance scatterwalk to not DMA'ed data */ 1070 - scatterwalk_copychunks(NULL, &cryp->out_walk, align_size, 2); 1070 + scatterwalk_skip(&cryp->out_walk, align_size); 1071 1071 cryp->payload_out -= align_size; 1072 1072 ret = dma_submit_error(dmaengine_submit(tx_out)); 1073 1073 if (ret < 0) { ··· 1737 1737 out_sg = areq->dst; 1738 1738 1739 1739 scatterwalk_start(&cryp->in_walk, in_sg); 1740 - scatterwalk_start(&cryp->out_walk, out_sg); 1741 1740 /* In output, jump after assoc data */ 1742 - scatterwalk_copychunks(NULL, &cryp->out_walk, cryp->areq->assoclen, 2); 1741 + scatterwalk_start_at_pos(&cryp->out_walk, out_sg, 1742 + areq->assoclen); 1743 1743 1744 1744 ret = stm32_cryp_hw_init(cryp); 1745 1745 if (ret) ··· 1873 1873 1874 1874 /* Get and write tag */ 1875 1875 readsl(cryp->regs + cryp->caps->dout, out_tag, AES_BLOCK_32); 1876 - scatterwalk_copychunks(out_tag, &cryp->out_walk, cryp->authsize, 1); 1876 + memcpy_to_scatterwalk(&cryp->out_walk, out_tag, cryp->authsize); 1877 1877 } else { 1878 1878 /* Get and check tag */ 1879 1879 u32 in_tag[AES_BLOCK_32], out_tag[AES_BLOCK_32]; 1880 1880 1881 - scatterwalk_copychunks(in_tag, &cryp->in_walk, cryp->authsize, 0); 1881 + memcpy_from_scatterwalk(in_tag, &cryp->in_walk, cryp->authsize); 1882 1882 readsl(cryp->regs + cryp->caps->dout, out_tag, AES_BLOCK_32); 1883 1883 1884 1884 if (crypto_memneq(in_tag, out_tag, cryp->authsize)) ··· 1923 1923 u32 block[AES_BLOCK_32]; 1924 1924 1925 1925 readsl(cryp->regs + cryp->caps->dout, block, cryp->hw_blocksize / sizeof(u32)); 1926 - scatterwalk_copychunks(block, &cryp->out_walk, min_t(size_t, cryp->hw_blocksize, 1927 - cryp->payload_out), 1); 1926 + memcpy_to_scatterwalk(&cryp->out_walk, block, min_t(size_t, cryp->hw_blocksize, 1927 + cryp->payload_out)); 1928 1928 cryp->payload_out -= min_t(size_t, cryp->hw_blocksize, 1929 1929 cryp->payload_out); 1930 1930 } ··· 1933 1933 { 1934 1934 u32 block[AES_BLOCK_32] = {0}; 1935 1935 1936 - scatterwalk_copychunks(block, &cryp->in_walk, min_t(size_t, cryp->hw_blocksize, 1937 - cryp->payload_in), 0); 1936 + memcpy_from_scatterwalk(block, &cryp->in_walk, min_t(size_t, cryp->hw_blocksize, 1937 + cryp->payload_in)); 1938 1938 writesl(cryp->regs + cryp->caps->din, block, cryp->hw_blocksize / sizeof(u32)); 1939 1939 cryp->payload_in -= min_t(size_t, cryp->hw_blocksize, cryp->payload_in); 1940 1940 } ··· 1981 1981 */ 1982 1982 readsl(cryp->regs + cryp->caps->dout, block, cryp->hw_blocksize / sizeof(u32)); 1983 1983 1984 - scatterwalk_copychunks(block, &cryp->out_walk, min_t(size_t, cryp->hw_blocksize, 1985 - cryp->payload_out), 1); 1984 + memcpy_to_scatterwalk(&cryp->out_walk, block, min_t(size_t, cryp->hw_blocksize, 1985 + cryp->payload_out)); 1986 1986 cryp->payload_out -= min_t(size_t, cryp->hw_blocksize, 1987 1987 cryp->payload_out); 1988 1988 ··· 2079 2079 */ 2080 2080 readsl(cryp->regs + cryp->caps->dout, block, cryp->hw_blocksize / sizeof(u32)); 2081 2081 2082 - scatterwalk_copychunks(block, &cryp->out_walk, min_t(size_t, cryp->hw_blocksize, 2083 - cryp->payload_out), 1); 2082 + memcpy_to_scatterwalk(&cryp->out_walk, block, min_t(size_t, cryp->hw_blocksize, 2083 + cryp->payload_out)); 2084 2084 cryp->payload_out -= min_t(size_t, cryp->hw_blocksize, cryp->payload_out); 2085 2085 2086 2086 /* d) Load again CRYP_CSGCMCCMxR */ ··· 2161 2161 2162 2162 written = min_t(size_t, AES_BLOCK_SIZE, cryp->header_in); 2163 2163 2164 - scatterwalk_copychunks(block, &cryp->in_walk, written, 0); 2164 + memcpy_from_scatterwalk(block, &cryp->in_walk, written); 2165 2165 2166 2166 writesl(cryp->regs + cryp->caps->din, block, AES_BLOCK_32); 2167 2167