diff options
author | Ed Nash <enash54@gmail.com> | 2013-07-31 12:11:03 -0400 |
---|---|---|
committer | Ed Nash <enash54@gmail.com> | 2013-07-31 12:11:03 -0400 |
commit | ae3bc0f60b587eb3a5b26d67165c7d923bb23776 (patch) | |
tree | aaf404b8bf278b83711484cf19e45ba0638c70ad /arch | |
parent | 614660a165ac827ea272c6fa0c59986881309f90 (diff) |
add a test call to determine state of
semaphore without requesting it
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-mvf/mvf_sema4.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/mach-mvf/mvf_sema4.c b/arch/arm/mach-mvf/mvf_sema4.c index 31e40f6d02f0..4521d124f1b7 100644 --- a/arch/arm/mach-mvf/mvf_sema4.c +++ b/arch/arm/mach-mvf/mvf_sema4.c @@ -286,3 +286,13 @@ int mvf_sema4_unlock(MVF_SEMA4 *sema4) } EXPORT_SYMBOL(mvf_sema4_unlock); +// return 0 on success (meaning it is set to us) +int mvf_sema4_test(MVF_SEMA4 *sema4) +{ + if(!sema4) + return -EINVAL; + + return (readb(MVF_IO_ADDRESS(MVF_SEMA4_BASE_ADDR) + sema4->gate_num)) == LOCK_VALUE ? 0 : 1; +} +EXPORT_SYMBOL(mvf_sema4_test); + |