[Xenomai-git] Gilles Chanteperdrix : drivers/testing: adapt timerbench after RTDM changes

2014-05-10 Thread git repository hosting
Module: xenomai-gch
Branch: for-forge-rtdm-rework
Commit: 0abbd5240c737b5d704f660844f52d97cef70195
URL:
http://git.xenomai.org/?p=xenomai-gch.git;a=commit;h=0abbd5240c737b5d704f660844f52d97cef70195

Author: Gilles Chanteperdrix gilles.chanteperd...@xenomai.org
Date:   Sat Feb  1 20:22:27 2014 +0100

drivers/testing: adapt timerbench after RTDM changes

---

 kernel/drivers/testing/timerbench.c |   89 +++
 1 file changed, 39 insertions(+), 50 deletions(-)

diff --git a/kernel/drivers/testing/timerbench.c 
b/kernel/drivers/testing/timerbench.c
index af75d56..4cf6c44 100644
--- a/kernel/drivers/testing/timerbench.c
+++ b/kernel/drivers/testing/timerbench.c
@@ -186,12 +186,11 @@ static void timer_proc(rtdm_timer_t *timer)
} while (err);
 }
 
-static int rt_tmbench_open(struct rtdm_dev_context *context,
-  rtdm_user_info_t *user_info, int oflags)
+static int rt_tmbench_open(struct rtdm_fd *context, int oflags)
 {
struct rt_tmbench_context *ctx;
 
-   ctx = (struct rt_tmbench_context *)context-dev_private;
+   ctx = rtdm_context_to_private(context);
 
ctx-mode = RTTST_TMBENCH_INVALID;
sema_init(ctx-nrt_mutex, 1);
@@ -199,12 +198,11 @@ static int rt_tmbench_open(struct rtdm_dev_context 
*context,
return 0;
 }
 
-static int rt_tmbench_close(struct rtdm_dev_context *context,
-   rtdm_user_info_t *user_info)
+static void rt_tmbench_close(struct rtdm_fd *context)
 {
struct rt_tmbench_context *ctx;
 
-   ctx = (struct rt_tmbench_context *)context-dev_private;
+   ctx = rtdm_context_to_private(context);
 
down(ctx-nrt_mutex);
 
@@ -224,13 +222,10 @@ static int rt_tmbench_close(struct rtdm_dev_context 
*context,
}
 
up(ctx-nrt_mutex);
-
-   return 0;
 }
 
-static int rt_tmbench_start(struct rtdm_dev_context *context,
+static int rt_tmbench_start(struct rtdm_fd *context,
struct rt_tmbench_context *ctx,
-   rtdm_user_info_t *user_info,
struct rttst_tmbench_config __user *user_config)
 {
int err = 0;
@@ -240,9 +235,9 @@ static int rt_tmbench_start(struct rtdm_dev_context 
*context,
struct rttst_tmbench_config *config =
(struct rttst_tmbench_config *)user_config;
 
-   if (user_info) {
+   if (rtdm_context_user_p(context)) {
if (rtdm_safe_copy_from_user
-   (user_info, config_buf,user_config,
+   (context, config_buf,user_config,
 sizeof(struct rttst_tmbench_config))  0)
return -EFAULT;
 
@@ -293,32 +288,28 @@ static int rt_tmbench_start(struct rtdm_dev_context 
*context,
rtdm_event_init(ctx-result_event, 0);
 
if (config-mode == RTTST_TMBENCH_TASK) {
-   if (!test_bit(RTDM_CLOSING, context-context_flags)) {
-   err = rtdm_task_init(ctx-timer_task, timerbench,
-timer_task_proc, ctx,
-config-priority, 0);
-   if (!err)
-   ctx-mode = RTTST_TMBENCH_TASK;
-   }
+   err = rtdm_task_init(ctx-timer_task, timerbench,
+   timer_task_proc, ctx,
+   config-priority, 0);
+   if (!err)
+   ctx-mode = RTTST_TMBENCH_TASK;
} else {
rtdm_timer_init(ctx-timer, timer_proc,
-   context-device-device_name);
+   rtdm_context_device(context)-device_name);
 
ctx-curr.test_loops = 0;
 
-   if (!test_bit(RTDM_CLOSING, context-context_flags)) {
-   ctx-mode = RTTST_TMBENCH_HANDLER;
+   ctx-mode = RTTST_TMBENCH_HANDLER;
 
-   cobalt_atomic_enter(s);
-   ctx-start_time = rtdm_clock_read_monotonic();
+   cobalt_atomic_enter(s);
+   ctx-start_time = rtdm_clock_read_monotonic();
 
-   /* first event: one millisecond from now. */
-   ctx-date = ctx-start_time + 100;
+   /* first event: one millisecond from now. */
+   ctx-date = ctx-start_time + 100;
 
-   err = rtdm_timer_start(ctx-timer, ctx-date, 0,
-  RTDM_TIMERMODE_ABSOLUTE);
-   cobalt_atomic_leave(s);
-   }
+   err = rtdm_timer_start(ctx-timer, ctx-date, 0,
+   RTDM_TIMERMODE_ABSOLUTE);
+   cobalt_atomic_leave(s);
}
 
up(ctx-nrt_mutex);
@@ -327,9 +318,9 @@ static int rt_tmbench_start(struct rtdm_dev_context 
*context,
 }
 
 static int rt_tmbench_stop(struct rt_tmbench_context *ctx,
- 

[Xenomai-git] Gilles Chanteperdrix : drivers/testing: adapt timerbench after RTDM changes

2014-02-04 Thread git repository hosting
Module: xenomai-gch
Branch: for-forge
Commit: 25cb0437cc4c5a1c1409cc7bcafd518d0815602a
URL:
http://git.xenomai.org/?p=xenomai-gch.git;a=commit;h=25cb0437cc4c5a1c1409cc7bcafd518d0815602a

Author: Gilles Chanteperdrix gilles.chanteperd...@xenomai.org
Date:   Sat Feb  1 20:22:27 2014 +0100

drivers/testing: adapt timerbench after RTDM changes

---

 kernel/drivers/testing/timerbench.c |   90 +++
 1 file changed, 39 insertions(+), 51 deletions(-)

diff --git a/kernel/drivers/testing/timerbench.c 
b/kernel/drivers/testing/timerbench.c
index 6563fd5..8696f4d 100644
--- a/kernel/drivers/testing/timerbench.c
+++ b/kernel/drivers/testing/timerbench.c
@@ -189,12 +189,11 @@ static void timer_proc(rtdm_timer_t *timer)
} while (err);
 }
 
-static int rt_tmbench_open(struct rtdm_dev_context *context,
-  rtdm_user_info_t *user_info, int oflags)
+static int rt_tmbench_open(struct xnfd *context, int oflags)
 {
struct rt_tmbench_context *ctx;
 
-   ctx = (struct rt_tmbench_context *)context-dev_private;
+   ctx = rtdm_context_to_private(context);
 
ctx-mode = RTTST_TMBENCH_INVALID;
sema_init(ctx-nrt_mutex, 1);
@@ -202,12 +201,11 @@ static int rt_tmbench_open(struct rtdm_dev_context 
*context,
return 0;
 }
 
-static int rt_tmbench_close(struct rtdm_dev_context *context,
-   rtdm_user_info_t *user_info)
+static void rt_tmbench_close(struct xnfd *context)
 {
struct rt_tmbench_context *ctx;
 
-   ctx = (struct rt_tmbench_context *)context-dev_private;
+   ctx = rtdm_context_to_private(context);
 
down(ctx-nrt_mutex);
 
@@ -227,13 +225,10 @@ static int rt_tmbench_close(struct rtdm_dev_context 
*context,
}
 
up(ctx-nrt_mutex);
-
-   return 0;
 }
 
-static int rt_tmbench_start(struct rtdm_dev_context *context,
+static int rt_tmbench_start(struct xnfd *context,
struct rt_tmbench_context *ctx,
-   rtdm_user_info_t *user_info,
struct rttst_tmbench_config __user *user_config)
 {
int err = 0;
@@ -242,9 +237,9 @@ static int rt_tmbench_start(struct rtdm_dev_context 
*context,
struct rttst_tmbench_config *config =
(struct rttst_tmbench_config *)user_config;
 
-   if (user_info) {
+   if (rtdm_context_user_p(context)) {
if (rtdm_safe_copy_from_user
-   (user_info, config_buf,user_config,
+   (context, config_buf,user_config,
 sizeof(struct rttst_tmbench_config))  0)
return -EFAULT;
 
@@ -295,33 +290,28 @@ static int rt_tmbench_start(struct rtdm_dev_context 
*context,
rtdm_event_init(ctx-result_event, 0);
 
if (config-mode == RTTST_TMBENCH_TASK) {
-   if (!test_bit(RTDM_CLOSING, context-context_flags)) {
-   err = rtdm_task_init(ctx-timer_task, timerbench,
-timer_task_proc, ctx,
-config-priority, 0);
-   if (!err)
-   ctx-mode = RTTST_TMBENCH_TASK;
-   }
+   err = rtdm_task_init(ctx-timer_task, timerbench,
+   timer_task_proc, ctx,
+   config-priority, 0);
+   if (!err)
+   ctx-mode = RTTST_TMBENCH_TASK;
} else {
rtdm_timer_init(ctx-timer, timer_proc,
-   context-device-device_name);
+   rtdm_context_device(context)-device_name);
 
ctx-curr.test_loops = 0;
 
-   if (!test_bit(RTDM_CLOSING, context-context_flags)) {
-   ctx-mode = RTTST_TMBENCH_HANDLER;
+   ctx-mode = RTTST_TMBENCH_HANDLER;
 
-   RTDM_EXECUTE_ATOMICALLY(
-   ctx-start_time = rtdm_clock_read_monotonic();
+   RTDM_EXECUTE_ATOMICALLY(
+   ctx-start_time = rtdm_clock_read_monotonic();
 
-   /* first event: one millisecond from now. */
-   ctx-date = ctx-start_time + 100;
+   /* first event: one millisecond from now. */
+   ctx-date = ctx-start_time + 100;
 
-   err =
-   rtdm_timer_start(ctx-timer, ctx-date, 0,
-RTDM_TIMERMODE_ABSOLUTE);
-   );
-   }
+   err = rtdm_timer_start(ctx-timer, ctx-date, 0,
+   RTDM_TIMERMODE_ABSOLUTE);
+   );
}
 
up(ctx-nrt_mutex);
@@ -330,9 +320,9 @@ static int rt_tmbench_start(struct rtdm_dev_context 
*context,