summaryrefslogtreecommitdiff
path: root/kernel-devel/char-device/example/user/huhu.c
diff options
context:
space:
mode:
authorManuel Traut <manut@linutronix.de>2010-09-29 09:14:58 +0200
committerManuel Traut <manut@linutronix.de>2010-09-29 09:14:58 +0200
commitc9cbceab01d4afa983dbfa7ee12c5d5e438b78f5 (patch)
tree564fb2dc88fdcceb8bd2dbf20a1d0072b12cad5f /kernel-devel/char-device/example/user/huhu.c
parented4f7d237132ce6d92918013ba2cf1b68aa3a5bd (diff)
kernel-devel/chardev: added example
kernel and userspace example, for open, close, read, write TODO: implement read, write Signed-off-by: Manuel Traut <manut@linutronix.de>
Diffstat (limited to 'kernel-devel/char-device/example/user/huhu.c')
-rw-r--r--kernel-devel/char-device/example/user/huhu.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/kernel-devel/char-device/example/user/huhu.c b/kernel-devel/char-device/example/user/huhu.c
new file mode 100644
index 0000000..e86c126
--- /dev/null
+++ b/kernel-devel/char-device/example/user/huhu.c
@@ -0,0 +1,28 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+
+int main (int argc, char **argv)
+{
+ int ret = 0;
+ FILE *fp;
+
+ fp = fopen ("/dev/huhu", "r+");
+ if (!fp)
+ {
+ perror ("open /dev/huhu failed");
+ ret = errno;
+ goto out;
+ }
+
+ system ("/bin/lsmod | grep huhu");
+
+ ret = fclose (fp);
+ if (ret)
+ {
+ perror ("close /dev/huhu failed");
+ goto out;
+ }
+out:
+ return ret;
+}