Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull crypto updates from Herbert Xu: "Here is the crypto update for 4.15: API: - Disambiguate EBUSY when queueing crypto request by adding ENOSPC. This change touches code outside the crypto API. - Reset settings when empty string is written to rng_current. Algorithms: - Add OSCCA SM3 secure hash. Drivers: - Remove old mv_cesa driver (replaced by marvell/cesa). - Enable rfc3686/ecb/cfb/ofb AES in crypto4xx. - Add ccm/gcm AES in crypto4xx. - Add support for BCM7278 in iproc-rng200. - Add hash support on Exynos in s5p-sss. - Fix fallback-induced error in vmx. - Fix output IV in atmel-aes. - Fix empty GCM hash in mediatek. Others: - Fix DoS potential in lib/mpi. - Fix potential out-of-order issues with padata" * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (162 commits) lib/mpi: call cond_resched() from mpi_powm() loop crypto: stm32/hash - Fix return issue on update crypto: dh - Remove pointless checks for NULL 'p' and 'g' crypto: qat - Clean up error handling in qat_dh_set_secret() crypto: dh - Don't permit 'key' or 'g' size longer than 'p' crypto: dh - Don't permit 'p' to be 0 crypto: dh - Fix double free of ctx->p hwrng: iproc-rng200 - Add support for BCM7278 dt-bindings: rng: Document BCM7278 RNG200 compatible crypto: chcr - Replace _manual_ swap with swap macro crypto: marvell - Add a NULL entry at the end of mv_cesa_plat_id_table[] hwrng: virtio - Virtio RNG devices need to be re-registered after suspend/resume crypto: atmel - remove empty functions crypto: ecdh - remove empty exit() MAINTAINERS: update maintainer for qat crypto: caam - remove unused param of ctx_map_to_sec4_sg() crypto: caam - remove unneeded edesc zeroization crypto: atmel-aes - Reset the controller before each use crypto: atmel-aes - properly set IV after {en,de}crypt hwrng: core - Reset user selected rng by writing "" to rng_current ...
This commit is contained in:
@@ -895,7 +895,6 @@ static int stm32_hash_enqueue(struct ahash_request *req, unsigned int op)
|
||||
static int stm32_hash_update(struct ahash_request *req)
|
||||
{
|
||||
struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
|
||||
int ret;
|
||||
|
||||
if (!req->nbytes || !(rctx->flags & HASH_FLAGS_CPU))
|
||||
return 0;
|
||||
@@ -909,12 +908,7 @@ static int stm32_hash_update(struct ahash_request *req)
|
||||
return 0;
|
||||
}
|
||||
|
||||
ret = stm32_hash_enqueue(req, HASH_OP_UPDATE);
|
||||
|
||||
if (rctx->flags & HASH_FLAGS_FINUP)
|
||||
return ret;
|
||||
|
||||
return 0;
|
||||
return stm32_hash_enqueue(req, HASH_OP_UPDATE);
|
||||
}
|
||||
|
||||
static int stm32_hash_final(struct ahash_request *req)
|
||||
@@ -1070,7 +1064,6 @@ static int stm32_hash_cra_sha256_init(struct crypto_tfm *tfm)
|
||||
static irqreturn_t stm32_hash_irq_thread(int irq, void *dev_id)
|
||||
{
|
||||
struct stm32_hash_dev *hdev = dev_id;
|
||||
int err;
|
||||
|
||||
if (HASH_FLAGS_CPU & hdev->flags) {
|
||||
if (HASH_FLAGS_OUTPUT_READY & hdev->flags) {
|
||||
@@ -1087,8 +1080,8 @@ static irqreturn_t stm32_hash_irq_thread(int irq, void *dev_id)
|
||||
return IRQ_HANDLED;
|
||||
|
||||
finish:
|
||||
/*Finish current request */
|
||||
stm32_hash_finish_req(hdev->req, err);
|
||||
/* Finish current request */
|
||||
stm32_hash_finish_req(hdev->req, 0);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
@@ -1411,11 +1404,10 @@ MODULE_DEVICE_TABLE(of, stm32_hash_of_match);
|
||||
static int stm32_hash_get_of_match(struct stm32_hash_dev *hdev,
|
||||
struct device *dev)
|
||||
{
|
||||
const struct of_device_id *match;
|
||||
int err;
|
||||
|
||||
match = of_match_device(stm32_hash_of_match, dev);
|
||||
if (!match) {
|
||||
hdev->pdata = of_device_get_match_data(dev);
|
||||
if (!hdev->pdata) {
|
||||
dev_err(dev, "no compatible OF match\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1423,8 +1415,6 @@ static int stm32_hash_get_of_match(struct stm32_hash_dev *hdev,
|
||||
err = of_property_read_u32(dev->of_node, "dma-maxburst",
|
||||
&hdev->dma_maxburst);
|
||||
|
||||
hdev->pdata = match->data;
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user