summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMarcel Ziswiler <marcel.ziswiler@toradex.com>2013-10-21 13:09:14 +0200
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2013-10-21 13:09:14 +0200
commit52b0e319838282ab46592159131b2891104df528 (patch)
tree28eedf41a093a1aca3a634fd90f9394825d5128f /include
parent5746e7e3d1376c80ae7f512d110adbcbad3e7000 (diff)
parent498b5774630e0c8ac7dadd72fce5ceb555f741b8 (diff)
Merge branch '3.0-mvf' into colibri_vf
Diffstat (limited to 'include')
-rw-r--r--include/linux/Kbuild1
-rw-r--r--include/linux/mvf_sema4.h24
2 files changed, 22 insertions, 3 deletions
diff --git a/include/linux/Kbuild b/include/linux/Kbuild
index 947d36f054e5..d2505e354e0c 100644
--- a/include/linux/Kbuild
+++ b/include/linux/Kbuild
@@ -36,6 +36,7 @@ header-y += mxc_sim_interface.h
header-y += mxc_v4l2.h
header-y += mxcfb.h
header-y += mvf-fb.h
+header-y += mvf_sema4.h
header-y += pmic_adc.h
header-y += pmic_battery.h
header-y += pmic_external.h
diff --git a/include/linux/mvf_sema4.h b/include/linux/mvf_sema4.h
index 898065afb23f..4e94276396de 100644
--- a/include/linux/mvf_sema4.h
+++ b/include/linux/mvf_sema4.h
@@ -1,15 +1,33 @@
#ifndef __MVF_SEMA4__
#define __MVF_SEMA4__
+#include <linux/sched.h>
+
+#define MVF_SHMEM_SEMAPHORE_NUMBER (1)
+#define MVF_PRINTF_SEMAPHORE_NUMBER (2)
+#define MVF_I2C_SEMAPHORE_NUMBER (3)
+#define MVF_RESERVED1_SEMAPHORE_NUMBER (4)
+#define MVF_RESERVED2_SEMAPHORE_NUMBER (5)
+
+#ifdef __KERNEL__
+
typedef struct mvf_sema4_handle_struct {
int gate_num;
- int use_interrupts;
wait_queue_head_t wait_queue;
+ // stats
+ u32 attempts;
+ u32 interrupts;
+ u32 failures;
+ struct timeval request_time;
+ u64 total_latency_us;
+ u32 worst_latency_us;
} MVF_SEMA4;
-int mvf_sema4_assign(int gate_num, bool use_interrupts, MVF_SEMA4** sema4_p);
+int mvf_sema4_assign(int gate_num, MVF_SEMA4** sema4_p);
int mvf_sema4_deassign(MVF_SEMA4 *sema4);
-int mvf_sema4_lock(MVF_SEMA4 *sema4, unsigned int timeout_us);
+int mvf_sema4_lock(MVF_SEMA4 *sema4, unsigned int timeout_us, bool use_interrupts);
int mvf_sema4_unlock(MVF_SEMA4 *sema4);
+int mvf_sema4_test(MVF_SEMA4 *sema4);
#endif
+#endif