X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fw1%2Fw1_netlink.h;h=56122b9e9294b865f30da01730c16ac0a4728dc3;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=7064ded18a3a030b1c295a27d301647bb2bcce77;hpb=5fc42a6ed0ec81088c37caadb45898ae6cd0ad2c;p=linux-2.6.git diff --git a/drivers/w1/w1_netlink.h b/drivers/w1/w1_netlink.h index 7064ded18..56122b9e9 100644 --- a/drivers/w1/w1_netlink.h +++ b/drivers/w1/w1_netlink.h @@ -23,22 +23,52 @@ #define __W1_NETLINK_H #include +#include #include "w1.h" -struct w1_netlink_msg +enum w1_netlink_message_types { + W1_SLAVE_ADD = 0, + W1_SLAVE_REMOVE, + W1_MASTER_ADD, + W1_MASTER_REMOVE, + W1_MASTER_CMD, + W1_SLAVE_CMD, +}; + +struct w1_netlink_msg { - union - { - struct w1_reg_num id; - __u64 w1_id; + __u8 type; + __u8 reserved; + __u16 len; + union { + __u8 id[8]; + struct w1_mst { + __u32 id; + __u32 res; + } mst; } id; - __u64 val; + __u8 data[0]; +}; + +#define W1_CMD_READ 0x0 +#define W1_CMD_WRITE 0x1 +#define W1_CMD_SEARCH 0x2 +#define W1_CMD_ALARM_SEARCH 0x3 + +struct w1_netlink_cmd +{ + __u8 cmd; + __u8 res; + __u16 len; + __u8 data[0]; }; #ifdef __KERNEL__ void w1_netlink_send(struct w1_master *, struct w1_netlink_msg *); +int w1_init_netlink(void); +void w1_fini_netlink(void); #endif /* __KERNEL__ */ #endif /* __W1_NETLINK_H */