summaryrefslogtreecommitdiffstats
path: root/cpukit/libcsupport
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-02-21 09:01:49 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-02-23 07:27:43 +0100
commit5bfeddc0c27b7cd896efd8c0b6ef2b5682ec4640 (patch)
treebd57ef40d12ba5222838dcf6ddba9c1297116872 /cpukit/libcsupport
parentscore: Add RTEMS_WEAK_ALIAS() (diff)
downloadrtems-5bfeddc0c27b7cd896efd8c0b6ef2b5682ec4640.tar.bz2
termios: Add kqueue() and poll() support
Real implementation is provided by libbsd.
Diffstat (limited to 'cpukit/libcsupport')
-rw-r--r--cpukit/libcsupport/include/rtems/termiostypes.h20
-rw-r--r--cpukit/libcsupport/src/termios.c4
2 files changed, 22 insertions, 2 deletions
diff --git a/cpukit/libcsupport/include/rtems/termiostypes.h b/cpukit/libcsupport/include/rtems/termiostypes.h
index 3cf6bebe19..2dcaa16abd 100644
--- a/cpukit/libcsupport/include/rtems/termiostypes.h
+++ b/cpukit/libcsupport/include/rtems/termiostypes.h
@@ -555,6 +555,26 @@ int rtems_termios_set_initial_baud(
rtems_termios_baud_t baud
);
+/**
+ * @brief Termios kqueue() filter filesystem node handler
+ *
+ * Real implementation is provided by libbsd.
+ */
+int rtems_termios_kqfilter(
+ rtems_libio_t *iop,
+ struct knote *kn
+);
+
+/**
+ * @brief Termios poll() filesystem node handler.
+ *
+ * Real implementation is provided by libbsd.
+ */
+int rtems_termios_poll(
+ rtems_libio_t *iop,
+ int events
+);
+
#ifdef __cplusplus
}
#endif
diff --git a/cpukit/libcsupport/src/termios.c b/cpukit/libcsupport/src/termios.c
index c44abbe810..5067f6c465 100644
--- a/cpukit/libcsupport/src/termios.c
+++ b/cpukit/libcsupport/src/termios.c
@@ -2063,8 +2063,8 @@ static const rtems_filesystem_file_handlers_r rtems_termios_imfs_handler = {
.fsync_h = rtems_filesystem_default_fsync_or_fdatasync,
.fdatasync_h = rtems_filesystem_default_fsync_or_fdatasync,
.fcntl_h = rtems_filesystem_default_fcntl,
- .kqfilter_h = rtems_filesystem_default_kqfilter,
- .poll_h = rtems_filesystem_default_poll,
+ .kqfilter_h = rtems_termios_kqfilter,
+ .poll_h = rtems_termios_poll,
.readv_h = rtems_filesystem_default_readv,
.writev_h = rtems_filesystem_default_writev
};