CRYPTO_DEV_OMAP_DES only depends on ARCH_OMAP2PLUS, which is ARM-only
and selects OF via ARM's USE_OF, making any non-OF code unreachable.
Add COMPILE_TEST so the driver can be built with CONFIG_OF=n, making the
non-OF code reachable.
Fix the resulting non-OF build failures:
- omap_des_irq() was defined inside a CONFIG_OF block, but is referenced
unconditionally from omap_des_probe(). Move the CONFIG_OF guard so it
only covers omap_des_get_of().
- The non-OF omap_des_get_of() stub took a struct device *, while
omap_des_probe() passes a struct platform_device *. Make the stub
prototype match the OF implementation and the caller.
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
config CRYPTO_DEV_OMAP
tristate "Support for OMAP crypto HW accelerators"
- depends on ARCH_OMAP2PLUS
+ depends on ARCH_OMAP2PLUS || COMPILE_TEST
help
OMAP processors have various crypto HW accelerators. Select this if
you want to use the OMAP modules for any of the crypto algorithms.
config CRYPTO_DEV_OMAP_DES
tristate "Support for OMAP DES/3DES hw engine"
- depends on ARCH_OMAP2PLUS
+ depends on ARCH_OMAP2PLUS || COMPILE_TEST
select CRYPTO_LIB_DES
select CRYPTO_SKCIPHER
select CRYPTO_ENGINE
},
};
-#ifdef CONFIG_OF
static const struct omap_des_pdata omap_des_pdata_omap4 = {
.algs_info = omap_des_algs_info_ecb_cbc,
.algs_info_size = ARRAY_SIZE(omap_des_algs_info_ecb_cbc),
};
MODULE_DEVICE_TABLE(of, omap_des_of_match);
+#ifdef CONFIG_OF
static int omap_des_get_of(struct omap_des_dev *dd,
struct platform_device *pdev)
{
}
#else
static int omap_des_get_of(struct omap_des_dev *dd,
- struct device *dev)
+ struct platform_device *pdev)
{
return -EINVAL;
}