diff options
| author | David S. Miller <davem@davemloft.net> | 2014-09-24 16:48:32 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2014-09-24 16:48:32 -0400 |
| commit | 4daaab4f0c2b55adccab08da06e17acc270cb84a (patch) | |
| tree | 41dfea3867755d3853218d50533c5600ac8fa6c0 /drivers/crypto/ccp | |
| parent | 3c4d1daecef875d28bdbe93587908c897c29ba71 (diff) | |
| parent | b94d525e58dc9638dd3f98094cb468bcfb262039 (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'drivers/crypto/ccp')
| -rw-r--r-- | drivers/crypto/ccp/ccp-crypto-main.c | 4 | ||||
| -rw-r--r-- | drivers/crypto/ccp/ccp-dev.c | 14 |
2 files changed, 18 insertions, 0 deletions
diff --git a/drivers/crypto/ccp/ccp-crypto-main.c b/drivers/crypto/ccp/ccp-crypto-main.c index 20dc848481e7..4d4e016d755b 100644 --- a/drivers/crypto/ccp/ccp-crypto-main.c +++ b/drivers/crypto/ccp/ccp-crypto-main.c @@ -367,6 +367,10 @@ static int ccp_crypto_init(void) { int ret; + ret = ccp_present(); + if (ret) + return ret; + spin_lock_init(&req_queue_lock); INIT_LIST_HEAD(&req_queue.cmds); req_queue.backlog = &req_queue.cmds; diff --git a/drivers/crypto/ccp/ccp-dev.c b/drivers/crypto/ccp/ccp-dev.c index a7d110652a74..c6e6171eb6d3 100644 --- a/drivers/crypto/ccp/ccp-dev.c +++ b/drivers/crypto/ccp/ccp-dev.c @@ -55,6 +55,20 @@ static inline void ccp_del_device(struct ccp_device *ccp) } /** + * ccp_present - check if a CCP device is present + * + * Returns zero if a CCP device is present, -ENODEV otherwise. + */ +int ccp_present(void) +{ + if (ccp_get_device()) + return 0; + + return -ENODEV; +} +EXPORT_SYMBOL_GPL(ccp_present); + +/** * ccp_enqueue_cmd - queue an operation for processing by the CCP * * @cmd: ccp_cmd struct to be processed |
