27 #ifndef __RTNET_CHRDEV_H_
28 #define __RTNET_CHRDEV_H_
35 #include <linux/list.h>
36 #include <linux/init.h>
37 #include <linux/ioctl.h>
38 #include <linux/netdevice.h>
39 #include <linux/types.h>
45 struct list_head entry;
49 const char *service_name;
50 unsigned int ioctl_type;
51 int (*handler)(
struct rtnet_device *rtdev,
52 unsigned int request,
unsigned long arg);
55 extern int rtnet_register_ioctls(
struct rtnet_ioctls *ioctls);
56 extern void rtnet_unregister_ioctls(
struct rtnet_ioctls *ioctls);
58 extern int __init rtnet_chrdev_init(
void);
59 extern void rtnet_chrdev_release(
void);
64 #include <linux/types.h>
69 #define RTNET_MINOR 240
70 #define DEV_ADDR_LEN 32
73 struct rtnet_ioctl_head {
74 char if_name[IFNAMSIZ];
77 struct rtnet_core_cmd {
78 struct rtnet_ioctl_head head;
86 __u32 clear_dev_flags;
89 __u8 dev_addr[DEV_ADDR_LEN];
99 __u8 dev_addr[DEV_ADDR_LEN];
107 #define RTNET_IOC_NODEV_PARAM 0x80
109 #define RTNET_IOC_TYPE_CORE 0
110 #define RTNET_IOC_TYPE_RTCFG 1
111 #define RTNET_IOC_TYPE_IPV4 2
112 #define RTNET_IOC_TYPE_RTMAC_NOMAC 100
113 #define RTNET_IOC_TYPE_RTMAC_TDMA 110
115 #define IOC_RT_IFUP _IOW(RTNET_IOC_TYPE_CORE, 0, \
116 struct rtnet_core_cmd)
117 #define IOC_RT_IFDOWN _IOW(RTNET_IOC_TYPE_CORE, 1, \
118 struct rtnet_core_cmd)
119 #define IOC_RT_IFINFO _IOWR(RTNET_IOC_TYPE_CORE, 2 | \
120 RTNET_IOC_NODEV_PARAM, \
121 struct rtnet_core_cmd)
Copyright © 2011 Gilles Chanteperdrix gilles.chanteperdrix@xenomai.org.
Definition: atomic.h:24