[Xenomai-git] Breeje, R. (Remco) den : analogy: add a missing dependency for the NI MIO driver (NI TIO)

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: 9e0a651e211ce3f5810ddf0e3f0c3ec22e54d7ae
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=9e0a651e211ce3f5810ddf0e3f0c3ec22e54d7ae

Author: Breeje, R. (Remco) den 
Date:   Wed Oct 28 00:52:02 2009 +0100

analogy: add a missing dependency for the NI MIO driver (NI TIO)

---

 ksrc/drivers/analogy/national_instruments/Kconfig |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ksrc/drivers/analogy/national_instruments/Kconfig 
b/ksrc/drivers/analogy/national_instruments/Kconfig
index 67769cb..cb010d7 100644
--- a/ksrc/drivers/analogy/national_instruments/Kconfig
+++ b/ksrc/drivers/analogy/national_instruments/Kconfig
@@ -10,7 +10,7 @@ config XENO_DRIVERS_ANALOGY_NI_TIO
default n
 
 config XENO_DRIVERS_ANALOGY_NI_MIO
-   depends on XENO_DRIVERS_ANALOGY
+   depends on XENO_DRIVERS_ANALOGY && XENO_DRIVERS_ANALOGY_NI_TIO
tristate "NI MIO driver"
default n
 


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git


[Xenomai-git] Alexis Berlemont : analogy: fix comments

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: a81b580e46fc700810c9dfb1e4da5d1f69b317c2
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=a81b580e46fc700810c9dfb1e4da5d1f69b317c2

Author: Alexis Berlemont 
Date:   Wed Oct 28 01:00:40 2009 +0100

analogy: fix comments

---

 src/utils/analogy/analogy_config.c |   22 
 src/utils/analogy/cmd_read.c   |   50 ++--
 src/utils/analogy/cmd_write.c  |   44 
 src/utils/analogy/insn_read.c  |   32 +++---
 4 files changed, 74 insertions(+), 74 deletions(-)

diff --git a/src/utils/analogy/analogy_config.c 
b/src/utils/analogy/analogy_config.c
index a40a178..316dcd4 100644
--- a/src/utils/analogy/analogy_config.c
+++ b/src/utils/analogy/analogy_config.c
@@ -31,12 +31,12 @@
 
 #include 
 
-/* Declares precompilation constants */
+/* Declare precompilation constants */
 #define __NBMIN_ARG 2
 #define __NBMAX_ARG 3
 #define __OPTS_DELIMITER ","
 
-/* Declares prog variables */
+/* Declare prog variables */
 int vlevel = 1;
 int unatt_act = 0;
 struct option a4l_conf_opts[] = {
@@ -55,7 +55,7 @@ int compute_opts(char *opts, unsigned int *nb, unsigned int 
*res)
 
int ret = 0, len, ofs;
 
-   /* Checks arg and inits it */
+   /* Check arg and inits it */
if (nb == NULL)
return -EINVAL;
*nb = 0;
@@ -103,10 +103,10 @@ int main(int argc, char *argv[])
a4l_lnkdesc_t lnkdsc;
int chk_nb, ret = 0, fd = -1;
 
-   /* Inits the descriptor structure */
+   /* Init the descriptor structure */
memset(&lnkdsc, 0, sizeof(a4l_lnkdesc_t));
 
-   /* Computes arguments */
+   /* Compute arguments */
while ((c =
getopt_long(argc, argv, "hvqVrR:W:", a4l_conf_opts,
NULL)) >= 0) {
@@ -133,23 +133,23 @@ int main(int argc, char *argv[])
}
}
 
-   /* Checks the last arguments */
+   /* Check the last arguments */
chk_nb = (unatt_act == 0) ? __NBMIN_ARG : __NBMIN_ARG - 1;
if (argc - optind < chk_nb) {
do_print_usage();
goto out_a4l_config;
}
 
-   /* Gets the device file name */
+   /* Get the device file name */
devfile = argv[optind];
 
-   /* Fills the descriptor with the driver name */
+   /* Fill the descriptor with the driver name */
if (unatt_act == 0) {
lnkdsc.bname = argv[optind + 1];
lnkdsc.bname_size = strlen(argv[optind + 1]);
}
 
-   /* Handles the last arguments: the driver-specific args */
+   /* Handle the last arguments: the driver-specific args */
if (unatt_act == 1 || argc - optind != __NBMAX_ARG)
lnkdsc.opts_size = 0;
else {
@@ -182,7 +182,7 @@ int main(int argc, char *argv[])
}
}
 
-   /* Opens the specified file */
+   /* Open the specified file */
fd = a4l_sys_open(devfile);
if (fd < 0) {
ret = fd;
@@ -191,7 +191,7 @@ int main(int argc, char *argv[])
goto out_a4l_config;
}
 
-   /* Triggers the ioctl */
+   /* Trigger the ioctl */
if (unatt_act == 0)
ret = a4l_sys_attach(fd, &lnkdsc);
else
diff --git a/src/utils/analogy/cmd_read.c b/src/utils/analogy/cmd_read.c
index c71c339..90518d9 100644
--- a/src/utils/analogy/cmd_read.c
+++ b/src/utils/analogy/cmd_read.c
@@ -111,7 +111,7 @@ int main(int argc, char *argv[])
void *map = NULL;
a4l_desc_t dsc;
 
-   /* Computes arguments */
+   /* Compute arguments */
while ((ret = getopt_long(argc,
  argv,
  "vrd:s:S:c:mh", cmd_read_opts, NULL)) >= 0) {
@@ -144,7 +144,7 @@ int main(int argc, char *argv[])
}
}
 
-   /* Recovers the channels to compute */
+   /* Recover the channels to compute */
do {
cmd.nb_chan++;
len = strlen(str_chans);
@@ -156,7 +156,7 @@ int main(int argc, char *argv[])
str_chans += ofs + 1;
} while (len != ofs);
 
-   /* Updates the command structure */
+   /* Update the command structure */
cmd.scan_end_arg = cmd.nb_chan;
 
if (real_time != 0) {
@@ -164,7 +164,7 @@ int main(int argc, char *argv[])
if (verbose != 0)
printf("cmd_read: switching to real-time mode\n");
 
-   /* Prevents any memory-swapping for this program */
+   /* Prevent any memory-swapping for this program */
ret = mlockall(MCL_CURRENT | MCL_FUTURE);
if (ret < 0) {
ret = errno;
@@ -173,7 +173,7 @@ int main(int argc, char *argv[])
goto out_main;
}
 
-   /* Turns the current process into an RT task */

[Xenomai-git] Breeje, R. (Remco) den : analogy: fix received bytes storing in cmd_read

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: 505e4c1f14421deee902e0159f25f1b6ef646f1d
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=505e4c1f14421deee902e0159f25f1b6ef646f1d

Author: Breeje, R. (Remco) den 
Date:   Wed Oct 28 00:56:17 2009 +0100

analogy: fix received bytes storing in cmd_read

---

 src/utils/analogy/cmd_read.c |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/utils/analogy/cmd_read.c b/src/utils/analogy/cmd_read.c
index 6671754..c71c339 100644
--- a/src/utils/analogy/cmd_read.c
+++ b/src/utils/analogy/cmd_read.c
@@ -322,6 +322,9 @@ int main(int argc, char *argv[])
printf("\n");
}
 
+   /* Update the counter */
+   cnt += ret;
+
if (real_time != 0) {
ret = rt_task_set_mode(0, T_PRIMARY, NULL);
if (ret < 0) {
@@ -331,7 +334,6 @@ int main(int argc, char *argv[])
goto out_main;
}
}
-   cnt += ret;
}
 
} else {


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git


[Xenomai-git] Alexis Berlemont : analogy: add modules descriptions and license specifications

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: dbc99707421cfb4a0ce0c78af9565d9a0e6a4a63
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=dbc99707421cfb4a0ce0c78af9565d9a0e6a4a63

Author: Alexis Berlemont 
Date:   Wed Oct 28 00:45:27 2009 +0100

analogy: add modules descriptions and license specifications

---

 ksrc/drivers/analogy/intel/8255.c  |   10 ++
 .../analogy/national_instruments/mio_common.c  |3 +++
 ksrc/drivers/analogy/national_instruments/pcimio.c |2 ++
 .../analogy/national_instruments/tio_common.c  |2 +-
 4 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/ksrc/drivers/analogy/intel/8255.c 
b/ksrc/drivers/analogy/intel/8255.c
index 4f9a7ab..ebaa4bb 100644
--- a/ksrc/drivers/analogy/intel/8255.c
+++ b/ksrc/drivers/analogy/intel/8255.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * Analogy for Linux for 8255 chip
+ * Analogy subdevice driver for 8255 chip
  * @note Copyright (C) 1999 David A. Schleef 
  *
  * This library is free software; you can redistribute it and/or
@@ -258,8 +258,8 @@ int dev_8255_attach(a4l_dev_t *dev, a4l_lnkdesc_t *arg)
"dev_8255_attach: "
"unable to allocate subdevice\n");
/* There is no need to free previously
-  allocated structure(s), the comedi layer will do
-  it for us */
+  allocated structure(s), the analogy layer will
+  do it for us */
err = -ENOMEM;
goto out_attach;
}   
@@ -269,7 +269,7 @@ int dev_8255_attach(a4l_dev_t *dev, a4l_lnkdesc_t *arg)
 
subd_8255 = (subd_8255_t *)subd->priv;  

-   if(request_region(addrs[i], _8255_SIZE, "Comedi 8255") == 0) {  
   
+   if(request_region(addrs[i], _8255_SIZE, "Analogy 8255") == 0) { 
   
subd->flags = A4L_SUBD_UNUSED;
a4l_warn(dev, 
 "dev_8255_attach: "
@@ -324,6 +324,8 @@ static void __exit drv_8255_cleanup(void)
 {
a4l_unregister_drv(&drv_8255);
 }
+MODULE_DESCRIPTION("Analogy driver for 8255 chip");
+MODULE_LICENSE("GPL");
 
 module_init(drv_8255_init);
 module_exit(drv_8255_cleanup);
diff --git a/ksrc/drivers/analogy/national_instruments/mio_common.c 
b/ksrc/drivers/analogy/national_instruments/mio_common.c
index 19f3431..d23ee12 100644
--- a/ksrc/drivers/analogy/national_instruments/mio_common.c
+++ b/ksrc/drivers/analogy/national_instruments/mio_common.c
@@ -5196,6 +5196,9 @@ int ni_E_init(a4l_dev_t *dev)
return 0;
 }
 
+MODULE_DESCRIPTION("Analogy support for NI DAQ-STC based boards");
+MODULE_LICENSE("GPL");
+
 EXPORT_SYMBOL(range_ni_E_ai);
 EXPORT_SYMBOL(range_ni_E_ai_limited);
 EXPORT_SYMBOL(range_ni_E_ai_limited14);
diff --git a/ksrc/drivers/analogy/national_instruments/pcimio.c 
b/ksrc/drivers/analogy/national_instruments/pcimio.c
index 54ea7a0..2c03112 100644
--- a/ksrc/drivers/analogy/national_instruments/pcimio.c
+++ b/ksrc/drivers/analogy/national_instruments/pcimio.c
@@ -1586,6 +1586,8 @@ static void __exit pcimio_cleanup(void)
a4l_unregister_drv(&pcimio_drv);
 }
 
+MODULE_DESCRIPTION("Analogy driver for NI PCI-MIO series cards");
 MODULE_LICENSE("GPL");
+
 module_init(pcimio_init);
 module_exit(pcimio_cleanup);
diff --git a/ksrc/drivers/analogy/national_instruments/tio_common.c 
b/ksrc/drivers/analogy/national_instruments/tio_common.c
index e7d3939..6944201 100644
--- a/ksrc/drivers/analogy/national_instruments/tio_common.c
+++ b/ksrc/drivers/analogy/national_instruments/tio_common.c
@@ -1960,7 +1960,7 @@ static void __exit ni_tio_cleanup_module(void)
 {
 }
 
-MODULE_DESCRIPTION("Comedi support for NI general-purpose counters");
+MODULE_DESCRIPTION("Analogy support for NI general-purpose counters");
 MODULE_LICENSE("GPL");
 
 module_init(ni_tio_init_module);


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : arm: introduce support for freerunning countdown TSC

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: 9c09db6b8be5cc369fe0e94895c92a156ac0196d
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=9c09db6b8be5cc369fe0e94895c92a156ac0196d

Author: Philippe Gerum 
Date:   Tue Oct 27 15:14:06 2009 +0100

arm: introduce support for freerunning countdown TSC

---

 include/asm-arm/syscall.h |   24 
 1 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/include/asm-arm/syscall.h b/include/asm-arm/syscall.h
index 9d5bcad..2ff4a28 100644
--- a/include/asm-arm/syscall.h
+++ b/include/asm-arm/syscall.h
@@ -224,6 +224,7 @@ static inline int __xn_interrupted_p(struct pt_regs *regs)
 #define XENOMAI_SYSARCH_ATOMIC_SET_MASK1
 #define XENOMAI_SYSARCH_ATOMIC_CLEAR_MASK  2
 #define XENOMAI_SYSARCH_XCHG   3
+#define XENOMAI_SYSARCH_TSCINFO 4
 
 struct __xn_tscinfo {
 int type;  /* Must remain first member */
@@ -245,8 +246,7 @@ struct __xn_tscinfo {
 #define __XN_TSC_TYPE_FREERUNNING   1
 #define __XN_TSC_TYPE_DECREMENTER   2
 #define __XN_TSC_TYPE_FREERUNNING_FAST_WRAP 3
-
-#define XENOMAI_SYSARCH_TSCINFO 4
+#define __XN_TSC_TYPE_FREERUNNING_COUNTDOWN 4
 
 #ifndef __KERNEL__
 #include 
@@ -279,6 +279,20 @@ static inline unsigned long long __xn_rdtsc(void)
 if ((counter & mask) < ((unsigned) result & mask))
 result += mask + 1ULL;
 return (result & ~((unsigned long long) mask)) | (counter & mask);
+#elif XNARCH_ARM_TSC_TYPE == __XN_TSC_TYPE_FREERUNNING_COUNTDOWN
+   volatile unsigned long long *const tscp = __xn_tscinfo.u.fr.tsc;
+   volatile unsigned *const counterp = __xn_tscinfo.u.fr.counter;
+const unsigned mask = __xn_tscinfo.u.fr.mask;
+   register unsigned long long result;
+unsigned counter;
+
+__asm__ ("ldmia %1, %M0\n": "=r"(result): "r"(tscp), "m"(*tscp));
+__asm__ __volatile__ ("" : /* */ : /* */ : "memory");
+counter = mask - *counterp;
+
+if ((counter & mask) > ((unsigned) result & mask))
+result += mask + 1ULL;
+return (result & ~((unsigned long long) mask)) | (counter & mask);
 #elif XNARCH_ARM_TSC_TYPE == __XN_TSC_TYPE_FREERUNNING_FAST_WRAP
volatile unsigned long long *const tscp = __xn_tscinfo.u.fr.tsc;
volatile unsigned *const counterp = __xn_tscinfo.u.fr.counter;
@@ -353,9 +367,11 @@ static inline void xeno_arm_features_check(void)
page_size = sysconf(_SC_PAGESIZE);
 
switch(__xn_tscinfo.type) {
-#if XNARCH_ARM_TSC_TYPE == __XN_TSC_TYPE_FREERUNNING   \
+#if XNARCH_ARM_TSC_TYPE == __XN_TSC_TYPE_FREERUNNING \
+   || XNARCH_ARM_TSC_TYPE == __XN_TSC_TYPE_FREERUNNING_COUNTDOWN \
|| XNARCH_ARM_TSC_TYPE == __XN_TSC_TYPE_FREERUNNING_FAST_WRAP
-   case __XN_TSC_TYPE_FREERUNNING: {
+   case __XN_TSC_TYPE_FREERUNNING:
+   case __XN_TSC_TYPE_FREERUNNING_COUNTDOWN: {
unsigned long phys_addr;
 
phys_addr = (unsigned long) __xn_tscinfo.u.fr.counter;


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git


[Xenomai-git] Alexis Berlemont : analogy: some Comedi -> Analogy forgotten renamings

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: ec3eaf851cfc16d1ec862e73eaedc25caae01d4c
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=ec3eaf851cfc16d1ec862e73eaedc25caae01d4c

Author: Alexis Berlemont 
Date:   Wed Oct 28 00:43:57 2009 +0100

analogy: some Comedi -> Analogy forgotten renamings

---

 ksrc/drivers/analogy/instruction.c   |2 +-
 ksrc/drivers/analogy/national_instruments/mite.c |2 +-
 ksrc/drivers/analogy/testing/Config.in   |4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/ksrc/drivers/analogy/instruction.c 
b/ksrc/drivers/analogy/instruction.c
index 41fd1b7..1121d1f 100644
--- a/ksrc/drivers/analogy/instruction.c
+++ b/ksrc/drivers/analogy/instruction.c
@@ -336,7 +336,7 @@ int a4l_free_ilstdsc(a4l_cxt_t * cxt, a4l_kilst_t * dsc)
 }
 
 /* This function is not optimized in terms of memory footprint and
-   CPU charge; however, the whole comedi instruction system was not
+   CPU charge; however, the whole analogy instruction system was not
designed for performance issues */
 int a4l_ioctl_insnlist(a4l_cxt_t * cxt, void *arg)
 {
diff --git a/ksrc/drivers/analogy/national_instruments/mite.c 
b/ksrc/drivers/analogy/national_instruments/mite.c
index edf9ced..3aa89a3 100644
--- a/ksrc/drivers/analogy/national_instruments/mite.c
+++ b/ksrc/drivers/analogy/national_instruments/mite.c
@@ -246,7 +246,7 @@ void mite_list_devices(void)
 {
struct list_head *this;
 
-   printk("Comedi: MITE: Available NI device IDs:");
+   printk("Analogy: MITE: Available NI device IDs:");
list_for_each(this, &mite_devices) {
struct mite_struct *mite = 
list_entry(this, struct mite_struct, list);
diff --git a/ksrc/drivers/analogy/testing/Config.in 
b/ksrc/drivers/analogy/testing/Config.in
index d9503bb..f4abecf 100644
--- a/ksrc/drivers/analogy/testing/Config.in
+++ b/ksrc/drivers/analogy/testing/Config.in
@@ -3,6 +3,6 @@
 # Xenomai configuration for Linux v2.4
 #
 
-dep_tristate 'Fake driver' CONFIG_XENO_DRIVERS_COMEDI_FAKE 
$CONFIG_XENO_DRIVERS_COMEDI
+dep_tristate 'Fake driver' CONFIG_XENO_DRIVERS_ANALOGY_FAKE 
$CONFIG_XENO_DRIVERS_ANALOGY
 
-dep_tristate 'Loop driver' CONFIG_XENO_DRIVERS_COMEDI_LOOP 
$CONFIG_XENO_DRIVERS_COMEDI
+dep_tristate 'Loop driver' CONFIG_XENO_DRIVERS_ANALOGY_LOOP 
$CONFIG_XENO_DRIVERS_ANALOGY


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : analogy: fix debug options dependencies

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: d7324ad5e0027e8363c0e26fafe871e109b6033c
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=d7324ad5e0027e8363c0e26fafe871e109b6033c

Author: Philippe Gerum 
Date:   Tue Oct 27 00:38:27 2009 +0100

analogy: fix debug options dependencies

---

 ksrc/drivers/analogy/Kconfig |2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/ksrc/drivers/analogy/Kconfig b/ksrc/drivers/analogy/Kconfig
index 437a1bc..9d17b1d 100644
--- a/ksrc/drivers/analogy/Kconfig
+++ b/ksrc/drivers/analogy/Kconfig
@@ -9,6 +9,7 @@ config XENO_DRIVERS_ANALOGY
drivers.
 
 config XENO_DRIVERS_ANALOGY_DEBUG
+   depends on XENO_DRIVERS_ANALOGY
bool "Analogy debug trace"
default y
help
@@ -17,6 +18,7 @@ config XENO_DRIVERS_ANALOGY_DEBUG
core and drivers behaviours.
 
 config XENO_DRIVERS_ANALOGY_DEBUG_LEVEL
+   depends on XENO_DRIVERS_ANALOGY_DEBUG
int "Analogy core debug level threshold"
default 0
help


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git


[Xenomai-git] Alexis Berlemont : analogy: add error messages for the IOCTL interface

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: fe9f70a8eca2521dfa54c92b3ebd84052ea0f7f3
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=fe9f70a8eca2521dfa54c92b3ebd84052ea0f7f3

Author: Alexis Berlemont 
Date:   Mon Oct 26 14:23:03 2009 +0100

analogy: add error messages for the IOCTL interface

---

 ksrc/drivers/analogy/buffer.c  |  151 +---
 ksrc/drivers/analogy/command.c |   96 ++-
 ksrc/drivers/analogy/device.c  |   27 +--
 ksrc/drivers/analogy/instruction.c |   24 +-
 ksrc/drivers/analogy/subdevice.c   |   77 +-
 ksrc/drivers/analogy/transfer.c|   46 ---
 src/drvlib/analogy/sync.c  |   27 ---
 7 files changed, 328 insertions(+), 120 deletions(-)

diff --git a/ksrc/drivers/analogy/buffer.c b/ksrc/drivers/analogy/buffer.c
index 304791c..cad8a06 100644
--- a/ksrc/drivers/analogy/buffer.c
+++ b/ksrc/drivers/analogy/buffer.c
@@ -337,7 +337,7 @@ int a4l_buf_evt(a4l_subd_t *subd, unsigned long evts)
clear_bit(tmp, &evts);
}
 
-   /* Notifies the user-space side */
+   /* Notify the user-space side */
a4l_signal_sync(&buf->sync);
 
return 0;
@@ -376,7 +376,7 @@ open:a4l_map,
 close:a4l_unmap,
 };
 
-int a4l_ioctl_mmap(a4l_cxt_t * cxt, void *arg)
+int a4l_ioctl_mmap(a4l_cxt_t *cxt, void *arg)
 {
a4l_mmap_t map_cfg;
a4l_dev_t *dev;
@@ -387,34 +387,44 @@ int a4l_ioctl_mmap(a4l_cxt_t * cxt, void *arg)
 
dev = a4l_get_dev(cxt);
 
-   /* Basically checks the device */
-   if (!test_bit(A4L_DEV_ATTACHED, &dev->flags))
+   /* Basically check the device */
+   if (!test_bit(A4L_DEV_ATTACHED, &dev->flags)) {
+   __a4l_err("a4l_ioctl_mmap: cannot mmap on "
+ "an unattached device\n");
return -EINVAL;
+   }
 
/* The mmap operation cannot be performed in a 
   real-time context */
-   if (a4l_test_rt() != 0)
+   if (a4l_test_rt() != 0) {
+   __a4l_err("a4l_ioctl_mmap: mmap must be done in NRT context\n");
return -EPERM;
+   }
 
-   /* Recovers the argument structure */
+   /* Recover the argument structure */
if (rtdm_safe_copy_from_user(cxt->user_info,
 &map_cfg, arg, sizeof(a4l_mmap_t)) != 0)
return -EFAULT;
 
-   /* Checks the subdevice */
+   /* Check the subdevice */
if (map_cfg.idx_subd >= dev->transfer.nb_subd ||
(dev->transfer.subds[map_cfg.idx_subd]->flags & A4L_SUBD_CMD) ==
0
|| (dev->transfer.subds[map_cfg.idx_subd]->
-   flags & A4L_SUBD_MMAP) == 0)
+   flags & A4L_SUBD_MMAP) == 0) {
+   __a4l_err("a4l_ioctl_mmap: wrong subdevice selected (idx=%d)\n",
+ map_cfg.idx_subd);
return -EINVAL;
+   }
 
-   /* Checks the buffer is not already mapped */
+   /* Check the buffer is not already mapped */
if (test_bit(A4L_TSF_MMAP,
-&(dev->transfer.status[map_cfg.idx_subd])))
+&(dev->transfer.status[map_cfg.idx_subd]))) {
+   __a4l_err("a4l_ioctl_mmap: mmap is already done\n");
return -EBUSY;
+   }
 
-   /* Basically checks the size to be mapped */
+   /* Basically check the size to be mapped */
if ((map_cfg.size & ~(PAGE_MASK)) != 0 ||
map_cfg.size > dev->transfer.bufs[map_cfg.idx_subd]->size)
return -EFAULT;
@@ -427,8 +437,11 @@ int a4l_ioctl_mmap(a4l_cxt_t * cxt, void *arg)
&a4l_vm_ops,
&(dev->transfer.status[map_cfg.idx_subd]));
 
-   if (ret < 0)
+   if (ret < 0) {
+   __a4l_err("a4l_ioctl_mmap: internal error, "
+ "rtdm_mmap_to_user failed (err=%d)\n", ret);
return ret;
+   }
 
return rtdm_safe_copy_to_user(cxt->user_info, 
  arg, &map_cfg, sizeof(a4l_mmap_t));
@@ -445,34 +458,49 @@ int a4l_ioctl_bufcfg(a4l_cxt_t * cxt, void *arg)
  "a4l_ioctl_bufcfg: minor=%d\n", a4l_get_minor(cxt));
 
/* Basic checking */
-   if (!test_bit(A4L_DEV_ATTACHED, &dev->flags))
+   if (!test_bit(A4L_DEV_ATTACHED, &dev->flags)) {
+   __a4l_err("a4l_ioctl_bufcfg: unattached device\n");
return -EINVAL;
+   }
 
/* As Linux API is used to allocate a virtual buffer,
   the calling process must not be in primary mode */
-   if (a4l_test_rt() != 0)
+   if (a4l_test_rt() != 0) {
+   __a4l_err("a4l_ioctl_bufcfg: buffer config must done "
+ "in NRT context\n");
return -EPERM;
+   }
 
if (rtdm_safe_copy_from_user(cxt->user_info,
 &buf_cfg, 

[Xenomai-git] Alexis Berlemont : analogy: fix testing drivers' renaming issues

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: 8e37eb636960b5345e7c8ec0e4edc651dabd480e
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=8e37eb636960b5345e7c8ec0e4edc651dabd480e

Author: Alexis Berlemont 
Date:   Tue Oct 27 00:55:00 2009 +0100

analogy: fix testing drivers' renaming issues

---

 ksrc/drivers/analogy/testing/Kconfig  |8 +-
 ksrc/drivers/analogy/testing/Makefile |   26 +++---
 ksrc/drivers/analogy/testing/fake.c   |  116 ++--
 ksrc/drivers/analogy/testing/loop.c   |  136 
 4 files changed, 143 insertions(+), 143 deletions(-)

diff --git a/ksrc/drivers/analogy/testing/Kconfig 
b/ksrc/drivers/analogy/testing/Kconfig
index 9169c03..fd1e73a 100644
--- a/ksrc/drivers/analogy/testing/Kconfig
+++ b/ksrc/drivers/analogy/testing/Kconfig
@@ -1,10 +1,10 @@
 
-config XENO_DRIVERS_COMEDI_FAKE
-   depends on XENO_DRIVERS_COMEDI
+config XENO_DRIVERS_ANALOGY_FAKE
+   depends on XENO_DRIVERS_ANALOGY
tristate "Fake driver"
default n
 
-config XENO_DRIVERS_COMEDI_LOOP
-   depends on XENO_DRIVERS_COMEDI
+config XENO_DRIVERS_ANALOGY_LOOP
+   depends on XENO_DRIVERS_ANALOGY
tristate "Loop driver"
default n
diff --git a/ksrc/drivers/analogy/testing/Makefile 
b/ksrc/drivers/analogy/testing/Makefile
index 6326422..cb38daa 100644
--- a/ksrc/drivers/analogy/testing/Makefile
+++ b/ksrc/drivers/analogy/testing/Makefile
@@ -4,12 +4,12 @@ ifeq ($(PATCHLEVEL),6)
 
 EXTRA_CFLAGS += -D__IN_XENOMAI__ -Iinclude/xenomai
 
-obj-$(CONFIG_XENO_DRIVERS_COMEDI_FAKE) += comedi_fake.o
-obj-$(CONFIG_XENO_DRIVERS_COMEDI_LOOP) += comedi_loop.o
+obj-$(CONFIG_XENO_DRIVERS_ANALOGY_FAKE) += analogy_fake.o
+obj-$(CONFIG_XENO_DRIVERS_ANALOGY_LOOP) += analogy_loop.o
 
-comedi_fake-y := fake.o
+analogy_fake-y := fake.o
 
-comedi_loop-y := loop.o
+analogy_loop-y := loop.o
 
 else
 
@@ -17,23 +17,23 @@ else
 
 O_TARGET := built-in.o
 
-obj-$(CONFIG_XENO_DRIVERS_COMEDI_FAKE) += comedi_fake.o
-obj-$(CONFIG_XENO_DRIVERS_COMEDI_LOOP) += comedi_loop.o
+obj-$(CONFIG_XENO_DRIVERS_ANALOGY_FAKE) += analogy_fake.o
+obj-$(CONFIG_XENO_DRIVERS_ANALOGY_LOOP) += analogy_loop.o
 
-comedi_fake-objs := fake.o
+analogy_fake-objs := fake.o
 
-comedi_loop-objs := loop.o
+analogy_loop-objs := loop.o
 
-export-objs := $(comedi_fake-objs) $(comedi_loop-objs)
+export-objs := $(analogy_fake-objs) $(analogy_loop-objs)
 
 EXTRA_CFLAGS += -D__IN_XENOMAI__ -I$(TOPDIR)/include/xenomai 
-I$(TOPDIR)/include/xenomai/compat
 
 include $(TOPDIR)/Rules.make
 
-comedi_fake.o: $(comedi_fake-objs)
-   $(LD) -r -o $@ $(comedi_fake-objs)
+analogy_fake.o: $(analogy_fake-objs)
+   $(LD) -r -o $@ $(analogy_fake-objs)
 
-comedi_loop.o: $(comedi_loop-objs)
-   $(LD) -r -o $@ $(comedi_loop-objs)
+analogy_loop.o: $(analogy_loop-objs)
+   $(LD) -r -o $@ $(analogy_loop-objs)
 
 endif
diff --git a/ksrc/drivers/analogy/testing/fake.c 
b/ksrc/drivers/analogy/testing/fake.c
index 8ac48a6..bf3bacf 100644
--- a/ksrc/drivers/analogy/testing/fake.c
+++ b/ksrc/drivers/analogy/testing/fake.c
@@ -1,5 +1,5 @@
 #include 
-#include 
+#include 
 
 #define TEST_TASK_PERIOD 100
 #define TEST_NB_BITS 16
@@ -12,7 +12,7 @@
 struct test_priv {
 
/* Task descriptor */
-   comedi_task_t timer_task;
+   a4l_task_t timer_task;
   
/* Specific timing fields */
unsigned long scan_period_ns;
@@ -39,16 +39,16 @@ typedef struct test_attach_arg tstattr_t;
 /* --- Channels / ranges part --- */
 
 /* Channels descriptor */
-static comedi_chdesc_t test_chandesc = {
-   .mode = COMEDI_CHAN_GLOBAL_CHANDESC,
+static a4l_chdesc_t test_chandesc = {
+   .mode = A4L_CHAN_GLOBAL_CHANDESC,
.length = 8,
.chans = { 
-   {COMEDI_CHAN_AREF_GROUND, TEST_NB_BITS},
+   {A4L_CHAN_AREF_GROUND, TEST_NB_BITS},
},
 };
 
 /* Ranges tab */
-static comedi_rngtab_t test_rngtab = {
+static a4l_rngtab_t test_rngtab = {
.length = 2,
.rngs = {
RANGE_V(-5,5),
@@ -56,10 +56,10 @@ static comedi_rngtab_t test_rngtab = {
},
 };
 /* Ranges descriptor */
-comedi_rngdesc_t test_rngdesc = RNG_GLOBAL(test_rngtab);
+a4l_rngdesc_t test_rngdesc = RNG_GLOBAL(test_rngtab);
 
 /* Command options mask */
-static comedi_cmd_t test_cmd_mask = {
+static a4l_cmd_t test_cmd_mask = {
.idx_subd = 0,
.start_src = TRIG_NOW,
.scan_begin_src = TRIG_TIMER,
@@ -75,21 +75,21 @@ static sampl_t output_tab[8] = {
0x8000, 0xa000, 0xc000, 0x 
 };
 static unsigned int output_idx;
-static comedi_lock_t output_lock = COMEDI_LOCK_UNLOCKED;
+static a4l_lock_t output_lock = A4L_LOCK_UNLOCKED;
 
 static sampl_t test_output(tstprv_t *priv)
 {
unsigned long flags;
unsigned int idx;
 
-   comedi_lock_irqsave(&output_lock, flags);
+   a4l_lock_irqsave(&output_lock, flags);
 
output_idx += priv->quanta_cnt;
if(output_idx == 8)
output_idx = 0; 
 

[Xenomai-git] Philippe Gerum : doc: regenerate documentation

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: 5d2acffc3049b729e78e8c311b8e49d0250b44bf
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=5d2acffc3049b729e78e8c311b8e49d0250b44bf

Author: Philippe Gerum 
Date:   Tue Oct 27 19:10:20 2009 +0100

doc: regenerate documentation

---

 doc/generated/html/api/alarm_8h.html   |   97 +-
 doc/generated/html/api/alarm_8h__dep__incl.map |8 +-
 doc/generated/html/api/alarm_8h__dep__incl.png |  Bin 9472 -> 9189 bytes
 doc/generated/html/api/alarm_8h__incl.map  |   46 +-
 doc/generated/html/api/alarm_8h__incl.md5  |2 +-
 doc/generated/html/api/alarm_8h__incl.png  |  Bin 133889 -> 130226 
bytes
 .../{alarm_8h-source.html => alarm_8h_source.html} |   51 +-
 doc/generated/html/api/annotated.html  |   38 +-
 .../api/{apc_8h-source.html => apc_8h_source.html} |   29 +-
 doc/generated/html/api/arm_2hal_8c.html|   86 +-
 doc/generated/html/api/arm_2hal_8c__incl.map   |2 +
 doc/generated/html/api/arm_2hal_8c__incl.png   |  Bin 35164 -> 33691 bytes
 ...assert_8h-source.html => assert_8h_source.html} |   33 +-
 doc/generated/html/api/async_8c.html   |   92 -
 doc/generated/html/api/async_8c__incl.map  |   12 -
 doc/generated/html/api/async_8c__incl.md5  |1 -
 doc/generated/html/api/async_8c__incl.png  |  Bin 60810 -> 0 bytes
 .../{bheap_8h-source.html => bheap_8h_source.html} |   29 +-
 doc/generated/html/api/blackfin_2hal_8c.html   |   86 +-
 doc/generated/html/api/blackfin_2hal_8c__incl.map  |2 +
 doc/generated/html/api/blackfin_2hal_8c__incl.png  |  Bin 27607 -> 27409 bytes
 doc/generated/html/api/blackfin_2nmi_8c.html   |   54 +-
 doc/generated/html/api/blackfin_2nmi_8c__incl.map  |2 +
 doc/generated/html/api/blackfin_2nmi_8c__incl.png  |  Bin 28184 -> 28443 bytes
 doc/generated/html/api/bound__task_8c-example.html |   33 +-
 doc/generated/html/api/bufd_8c.html|   88 +-
 doc/generated/html/api/bufd_8c__incl.map   |   42 +-
 doc/generated/html/api/bufd_8c__incl.md5   |2 +-
 doc/generated/html/api/bufd_8c__incl.png   |  Bin 110368 -> 106498 
bytes
 doc/generated/html/api/bufd_8h.html|  120 +-
 doc/generated/html/api/bufd_8h__dep__incl.map  |8 +-
 doc/generated/html/api/bufd_8h__dep__incl.png  |  Bin 9433 -> 9125 bytes
 doc/generated/html/api/bufd_8h__incl.map   |8 +-
 doc/generated/html/api/bufd_8h__incl.md5   |2 +-
 doc/generated/html/api/bufd_8h__incl.png   |  Bin 15201 -> 15197 bytes
 .../{bufd_8h-source.html => bufd_8h_source.html}   |   51 +-
 doc/generated/html/api/buffer_8h.html  |   81 +
 ..._8h__dep__incl.map => buffer_8h__dep__incl.map} |6 +-
 ..._8h__dep__incl.md5 => buffer_8h__dep__incl.md5} |0 
 doc/generated/html/api/buffer_8h__dep__incl.png|  Bin 0 -> 7443 bytes
 doc/generated/html/api/buffer_8h__incl.map |6 +
 doc/generated/html/api/buffer_8h__incl.md5 |1 +
 doc/generated/html/api/buffer_8h__incl.png |  Bin 0 -> 18074 bytes
 ...buffer_8h-source.html => buffer_8h_source.html} |   57 +-
 ...cancel_8h-source.html => cancel_8h_source.html} |   29 +-
 ...lock_8h-source.html => cb__lock_8h_source.html} |   29 +-
 .../html/api/channel__range_8h-source.html |  143 -
 doc/generated/html/api/channel__range_8h.html  |  157 -
 .../html/api/channel__range_8h__dep__incl.map  |9 -
 .../html/api/channel__range_8h__dep__incl.md5  |1 -
 .../html/api/channel__range_8h__dep__incl.png  |  Bin 30693 -> 0 bytes
 doc/generated/html/api/classes.html|   39 +-
 .../html/api/comedi_2buffer_8h-source.html |  412 -
 doc/generated/html/api/comedi_2buffer_8h.html  |   56 -
 .../html/api/comedi_2types_8h-source.html  |   59 -
 doc/generated/html/api/comedi_2types_8h.html   |   65 -
 .../html/api/comedi_2types_8h__dep__incl.map   |   10 -
 .../html/api/comedi_2types_8h__dep__incl.md5   |1 -
 .../html/api/comedi_2types_8h__dep__incl.png   |  Bin 40678 -> 0 bytes
 doc/generated/html/api/comedi_8h-source.html   |  171 -
 doc/generated/html/api/comedi_8h.html  |   75 -
 doc/generated/html/api/comedi_8h__dep__incl.map|6 -
 doc/generated/html/api/comedi_8h__dep__incl.md5|1 -
 doc/generated/html/api/comedi_8h__dep__incl.png|  Bin 16801 -> 0 bytes
 doc/generated/html/api/comedi_8h__incl.map |8 -
 doc/generated/html/api/comedi_8h__incl.md5 |1 -
 doc/generated/html/api/comedi_8h__incl.png |  Bin 38399 -> 0 bytes
 .../html/api/comedi__driver_8h-source.html |   54 -
 doc/generated/html/api/comedi__driver_8h.html  |   74 -
 .../html/api/comedi__driver_8h__dep__incl.map  |1 -
 .../html/api/comedi__driver_8h__dep__incl.md5  |1 -
 .../html/api/comedi__driver_8h__dep__incl.png  |  Bin 5149 -> 0 bytes
 doc/generated/html/

[Xenomai-git] Philippe Gerum : build: update version stamp

2009-10-28 Thread GIT version control
Module: xenomai-head
Branch: master
Commit: 793e229913f4821801a716908c0ededb44e0d99a
URL:
http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=793e229913f4821801a716908c0ededb44e0d99a

Author: Philippe Gerum 
Date:   Tue Oct 27 19:08:30 2009 +0100

build: update version stamp

---

 config/version|2 +-
 configure |   20 ++--
 include/nucleus/version.h |2 +-
 3 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/config/version b/config/version
index 0e95c7d..ecfeb0c 100644
--- a/config/version
+++ b/config/version
@@ -1 +1 @@
-2.4.92
+2.4.93
diff --git a/configure b/configure
index 1859e0b..ec2742d 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for Xenomai 2.4.92.
+# Generated by GNU Autoconf 2.64 for Xenomai 2.4.93.
 #
 # Report bugs to .
 #
@@ -698,8 +698,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='Xenomai'
 PACKAGE_TARNAME='xenomai'
-PACKAGE_VERSION='2.4.92'
-PACKAGE_STRING='Xenomai 2.4.92'
+PACKAGE_VERSION='2.4.93'
+PACKAGE_STRING='Xenomai 2.4.93'
 PACKAGE_BUGREPORT='xenomai-h...@gna.org'
 PACKAGE_URL=''
 
@@ -1498,7 +1498,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Xenomai 2.4.92 to adapt to many kinds of systems.
+\`configure' configures Xenomai 2.4.93 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1569,7 +1569,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
- short | recursive ) echo "Configuration of Xenomai 2.4.92:";;
+ short | recursive ) echo "Configuration of Xenomai 2.4.93:";;
esac
   cat <<\_ACEOF
 
@@ -1733,7 +1733,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Xenomai configure 2.4.92
+Xenomai configure 2.4.93
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2104,7 +2104,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Xenomai $as_me 2.4.92, which was
+It was created by Xenomai $as_me 2.4.93, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -4735,7 +4735,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='xenomai'
- VERSION='2.4.92'
+ VERSION='2.4.93'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -13417,7 +13417,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Xenomai $as_me 2.4.92, which was
+This file was extended by Xenomai $as_me 2.4.93, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES= $CONFIG_FILES
@@ -13485,7 +13485,7 @@ Report bugs to ."
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-Xenomai config.status 2.4.92
+Xenomai config.status 2.4.93
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/&/g'`\\"
 
diff --git a/include/nucleus/version.h b/include/nucleus/version.h
index f05cca5..8f65ddb 100644
--- a/include/nucleus/version.h
+++ b/include/nucleus/version.h
@@ -28,6 +28,6 @@
 
 #define XENO_VERSION_NAME  "Flying In A Blue Dream"
 
-#define XENO_VERSION_STRING"2.5-rc3"
+#define XENO_VERSION_STRING"2.5-rc4"
 
 #endif /* _XENO_NUCLEUS_VERSION_H */


___
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git