Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d1cbb144 authored by Andreas Westin's avatar Andreas Westin Committed by Herbert Xu
Browse files

crypto: ux500 - Cleanup hardware identification



Don't use SOC specific functions to identify
which crypto hardware we are talking to and use
the ID provided in the module instead.

Signed-off-by: default avatarAndreas Westin <andreas.westin@stericsson.com>
Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent f7329e71
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -37,18 +37,16 @@ int cryp_check(struct cryp_device_data *device_data)
	if (NULL == device_data)
		return -EINVAL;

	if (cpu_is_u8500())
		peripheralid2 = CRYP_PERIPHERAL_ID2_DB8500;
	else if (cpu_is_u5500())
		peripheralid2 = CRYP_PERIPHERAL_ID2_DB5500;
	peripheralid2 = readl_relaxed(&device_data->base->periphId2);

	if (peripheralid2 != CRYP_PERIPHERAL_ID2_DB8500)
		return -EPERM;

	/* Check Peripheral and Pcell Id Register for CRYP */
	if ((CRYP_PERIPHERAL_ID0 ==
		readl_relaxed(&device_data->base->periphId0))
	    && (CRYP_PERIPHERAL_ID1 ==
		    readl_relaxed(&device_data->base->periphId1))
	    && (peripheralid2 ==
		    readl_relaxed(&device_data->base->periphId2))
	    && (CRYP_PERIPHERAL_ID3 ==
		    readl_relaxed(&device_data->base->periphId3))
	    && (CRYP_PCELL_ID0 ==
+0 −1
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@
#define CRYP_PERIPHERAL_ID1		0x05

#define CRYP_PERIPHERAL_ID2_DB8500	0x28
#define CRYP_PERIPHERAL_ID2_DB5500	0x29
#define CRYP_PERIPHERAL_ID3		0x00

#define CRYP_PCELL_ID0			0x0D
+0 −10
Original line number Diff line number Diff line
@@ -574,15 +574,6 @@ static int hash_init(struct ahash_request *req)
	memset(&req_ctx->state, 0, sizeof(struct hash_state));
	req_ctx->updated = 0;
	if (hash_mode == HASH_MODE_DMA) {
		if ((ctx->config.oper_mode == HASH_OPER_MODE_HMAC) &&
				cpu_is_u5500()) {
			pr_debug(DEV_DBG_NAME " [%s] HMAC and DMA not working "
					"on u5500, directing to CPU mode.",
					__func__);
			req_ctx->dma_mode = false; /* Don't use DMA */
			goto out;
		}

		if (req->nbytes < HASH_DMA_ALIGN_SIZE) {
			req_ctx->dma_mode = false; /* Don't use DMA */

@@ -604,7 +595,6 @@ static int hash_init(struct ahash_request *req)
			}
		}
	}
out:
	return 0;
}