On Thu, 17 Oct 2019 at 17:18, Kamil Konieczny <k.konieczny@xxxxxxxxxxx> wrote: > > Hi, > > On 14.10.2019 14:18, Ard Biesheuvel wrote: > > Commit 7a7ffe65c8c5 ("crypto: skcipher - Add top-level skcipher interface") > > dated 20 august 2015 introduced the new skcipher API which is supposed to > > replace both blkcipher and ablkcipher. While all consumers of the API have > > been converted long ago, some producers of the ablkcipher remain, forcing > > us to keep the ablkcipher support routines alive, along with the matching > > code to expose [a]blkciphers via the skcipher API. > > > > So switch this driver to the skcipher API, allowing us to finally drop the > > blkcipher code in the near future. > > > > Cc: Krzysztof Kozlowski <krzk@xxxxxxxxxx> > > Cc: Vladimir Zapolskiy <vz@xxxxxxxxx> > > Cc: Kamil Konieczny <k.konieczny@xxxxxxxxxxxxxxxxxxx> > > Cc: linux-samsung-soc@xxxxxxxxxxxxxxx > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> > > --- > > There are comments for hash functions changed, see below. > With that fixed, you can add my > > Reviewed-by: Kamil Konieczny <k.konieczny@xxxxxxxxxxx> > Tested-by: Kamil Konieczny <k.konieczny@xxxxxxxxxxx> > Thanks! > > drivers/crypto/s5p-sss.c | 191 ++++++++++---------- > > 1 file changed, 91 insertions(+), 100 deletions(-) > > [...] > > diff --git a/drivers/crypto/s5p-sss.c b/drivers/crypto/s5p-sss.c > > index 010f1bb20dad..e6f1d4d5186c 100644 > > --- a/drivers/crypto/s5p-sss.c > > +++ b/drivers/crypto/s5p-sss.c > > [...] > > @@ -660,7 +660,7 @@ static irqreturn_t s5p_aes_interrupt(int irq, void *dev_id) > > { > > struct platform_device *pdev = dev_id; > > struct s5p_aes_dev *dev = platform_get_drvdata(pdev); > > - struct ablkcipher_request *req; > > + struct skcipher_request *req; > > int err_dma_tx = 0; > > int err_dma_rx = 0; > > int err_dma_hx = 0; > > These two comments below should not be touched, they are for hash part. > > > @@ -1208,7 +1208,7 @@ static int s5p_hash_prepare_sgs(struct s5p_hash_reqctx *ctx, > > * > > * Note 1: we can have update flag _and_ final flag at the same time. > > * Note 2: we enter here when digcnt > BUFLEN (=HASH_BLOCK_SIZE) or > > - * either req->nbytes or ctx->bufcnt + req->nbytes is > BUFLEN or > > + * either req->cryptlen or ctx->bufcnt + req->cryptlen is > BUFLEN or > > * we have final op > > */ > > static int s5p_hash_prepare_request(struct ahash_request *req, bool update) > > @@ -1555,7 +1555,7 @@ static int s5p_hash_final_shash(struct ahash_request *req) > > * s5p_hash_final() - close up hash and calculate digest > > * @req: AHASH request > > * > > - * Note: in final req->src do not have any data, and req->nbytes can be > > + * Note: in final req->src do not have any data, and req->cryptlen can be > > * non-zero. > > * > > * If there were no input data processed yet and the buffered hash data is > > [...] > > -- > Best regards, > Kamil Konieczny > Samsung R&D Institute Poland >