[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: master Commit: d0adf70c4a58c9ccc113ec54f4e07d0cc6261d5c URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=d0adf70c4a58c9ccc113ec54f4e07d0cc6261d5c Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index b33ff12..1f3c4fe 100644 --- a/configure.ac +++ b/configure.ac @@ -884,6 +884,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a8773ed..c837a05 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -7,6 +7,7 @@ includesub_HEADERS += \ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ serial.h\ testing.h \ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 9560310..c288ff9 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -7,6 +7,7 @@ includesub_HEADERS += \ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ serial.h\ testing.h \ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO11
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: stable-3.0.x Commit: d0adf70c4a58c9ccc113ec54f4e07d0cc6261d5c URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=d0adf70c4a58c9ccc113ec54f4e07d0cc6261d5c Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index b33ff12..1f3c4fe 100644 --- a/configure.ac +++ b/configure.ac @@ -884,6 +884,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a8773ed..c837a05 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -7,6 +7,7 @@ includesub_HEADERS += \ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ serial.h\ testing.h \ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 9560310..c288ff9 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -7,6 +7,7 @@ includesub_HEADERS += \ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ serial.h\ testing.h \ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: wip/drivers Commit: d0adf70c4a58c9ccc113ec54f4e07d0cc6261d5c URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=d0adf70c4a58c9ccc113ec54f4e07d0cc6261d5c Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index b33ff12..1f3c4fe 100644 --- a/configure.ac +++ b/configure.ac @@ -884,6 +884,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a8773ed..c837a05 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -7,6 +7,7 @@ includesub_HEADERS += \ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ serial.h\ testing.h \ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 9560310..c288ff9 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -7,6 +7,7 @@ includesub_HEADERS += \ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ serial.h\ testing.h \ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: wip/drivers Commit: b2dd3fdb4c02e68d9f7748a9b99e91732045cbf0 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=b2dd3fdb4c02e68d9f7748a9b99e91732045cbf0 Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 789a6d7..d4b7987 100644 --- a/configure.ac +++ b/configure.ac @@ -878,6 +878,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a4e6ff8..ad2c342 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 7cff6c2..d53f10c 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: wip/drivers Commit: 089cebf3e1aa7ba02b0e106c49f960c840d6b2df URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=089cebf3e1aa7ba02b0e106c49f960c840d6b2df Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 38a1749..40fff80 100644 --- a/configure.ac +++ b/configure.ac @@ -878,6 +878,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a4e6ff8..ad2c342 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 7cff6c2..d53f10c 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: wip/gpio Commit: 3e56928b4585cce136048ae4aa32c48622e64389 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=3e56928b4585cce136048ae4aa32c48622e64389 Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 8bbeeef..88022a6 100644 --- a/configure.ac +++ b/configure.ac @@ -878,6 +878,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a4e6ff8..ad2c342 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 7cff6c2..d53f10c 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: wip/gpio Commit: 35bfc666cf7ed7cd9bcbf395695b2ebf3b2eb735 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=35bfc666cf7ed7cd9bcbf395695b2ebf3b2eb735 Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 8bbeeef..88022a6 100644 --- a/configure.ac +++ b/configure.ac @@ -878,6 +878,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a4e6ff8..ad2c342 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 7cff6c2..d53f10c 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO
[Xenomai-git] Philippe Gerum : drivers/gpio: introduce real-time GPIO support
Module: xenomai-3 Branch: wip/gpio Commit: 2bba7740be7ce51755b6b7a3dd0a1fae3a79476d URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=2bba7740be7ce51755b6b7a3dd0a1fae3a79476d Author: Philippe Gerum Date: Wed May 25 10:54:22 2016 +0200 drivers/gpio: introduce real-time GPIO support --- configure.ac |1 + include/rtdm/Makefile.am |1 + include/rtdm/gpio.h| 24 +++ include/rtdm/uapi/Makefile.am |1 + include/rtdm/uapi/gpio.h | 28 +++ include/rtdm/uapi/rtdm.h |1 + kernel/drivers/Kconfig |1 + kernel/drivers/Makefile|2 +- kernel/drivers/gpio/Kconfig| 25 +++ kernel/drivers/gpio/Makefile |7 + kernel/drivers/gpio/gpio-bcm2708.c | 39 kernel/drivers/gpio/gpio-core.c| 349 kernel/drivers/gpio/gpio-core.h| 48 + kernel/drivers/gpio/gpio-mxc.c | 67 +++ 14 files changed, 593 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 8bbeeef..88022a6 100644 --- a/configure.ac +++ b/configure.ac @@ -878,6 +878,7 @@ AC_CONFIG_FILES([ \ testsuite/Makefile \ testsuite/latency/Makefile \ testsuite/switchtest/Makefile \ + testsuite/gpiotest/Makefile \ testsuite/smokey/Makefile \ testsuite/smokey/arith/Makefile \ testsuite/smokey/sched-quota/Makefile \ diff --git a/include/rtdm/Makefile.am b/include/rtdm/Makefile.am index a4e6ff8..ad2c342 100644 --- a/include/rtdm/Makefile.am +++ b/include/rtdm/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/gpio.h b/include/rtdm/gpio.h new file mode 100644 index 000..c61f229 --- /dev/null +++ b/include/rtdm/gpio.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2016 Philippe Gerum + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +#ifndef _RTDM_GPIO_H +#define _RTDM_GPIO_H + +#include +#include + +#endif /* !_RTDM_GPIO_H */ diff --git a/include/rtdm/uapi/Makefile.am b/include/rtdm/uapi/Makefile.am index 7cff6c2..d53f10c 100644 --- a/include/rtdm/uapi/Makefile.am +++ b/include/rtdm/uapi/Makefile.am @@ -4,6 +4,7 @@ includesub_HEADERS =\ analogy.h \ autotune.h \ can.h \ + gpio.h \ ipc.h \ rtdm.h \ serial.h\ diff --git a/include/rtdm/uapi/gpio.h b/include/rtdm/uapi/gpio.h new file mode 100644 index 000..b0d4899 --- /dev/null +++ b/include/rtdm/uapi/gpio.h @@ -0,0 +1,28 @@ +/** + * @note Copyright (C) 2016 Philippe Gerum + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +#ifndef _RTDM_UAPI_GPIO_H +#define _RTDM_UAPI_GPIO_H + +#include + +#define GPIO_RTIOC_DIR_OUT _IOW(RTDM_CLASS_GPIO, 0, int) +#define GPIO_RTIOC_DIR_IN _IO(RTDM_CLASS_GPIO, 1) +#define GPIO_RTIOC_IRQEN _IO(RTDM_CLASS_GPIO, 2) +#define GPIO_RTIOC_IRQDIS _IO(RTDM_CLASS_GPIO, 3) + +#endif /* !_RTDM_UAPI_GPIO_H */ diff --git a/include/rtdm/uapi/rtdm.h b/include/rtdm/uapi/rtdm.h index eed3b36..c49378c 100644 --- a/include/rtdm/uapi/rtdm.h +++ b/include/rtdm/uapi/rtdm.h @@ -79,6 +79,7 @@ typedef int64_t nanosecs_rel_t; #define RTDM_CLASS_COBALT 8 #define RTDM_CLASS_UDD 9 #define RTDM_CLASS_MEMORY 10 +#define RTDM_CLASS_GPIO