1*1da177e4SLinus Torvalds /* 2*1da177e4SLinus Torvalds * w1_netlink.h 3*1da177e4SLinus Torvalds * 4*1da177e4SLinus Torvalds * Copyright (c) 2003 Evgeniy Polyakov <johnpol@2ka.mipt.ru> 5*1da177e4SLinus Torvalds * 6*1da177e4SLinus Torvalds * 7*1da177e4SLinus Torvalds * This program is free software; you can redistribute it and/or modify 8*1da177e4SLinus Torvalds * it under the terms of the GNU General Public License as published by 9*1da177e4SLinus Torvalds * the Free Software Foundation; either version 2 of the License, or 10*1da177e4SLinus Torvalds * (at your option) any later version. 11*1da177e4SLinus Torvalds * 12*1da177e4SLinus Torvalds * This program is distributed in the hope that it will be useful, 13*1da177e4SLinus Torvalds * but WITHOUT ANY WARRANTY; without even the implied warranty of 14*1da177e4SLinus Torvalds * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15*1da177e4SLinus Torvalds * GNU General Public License for more details. 16*1da177e4SLinus Torvalds * 17*1da177e4SLinus Torvalds * You should have received a copy of the GNU General Public License 18*1da177e4SLinus Torvalds * along with this program; if not, write to the Free Software 19*1da177e4SLinus Torvalds * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20*1da177e4SLinus Torvalds */ 21*1da177e4SLinus Torvalds 22*1da177e4SLinus Torvalds #ifndef __W1_NETLINK_H 23*1da177e4SLinus Torvalds #define __W1_NETLINK_H 24*1da177e4SLinus Torvalds 25*1da177e4SLinus Torvalds #include <asm/types.h> 26*1da177e4SLinus Torvalds 27*1da177e4SLinus Torvalds #include "w1.h" 28*1da177e4SLinus Torvalds 29*1da177e4SLinus Torvalds enum w1_netlink_message_types { 30*1da177e4SLinus Torvalds W1_SLAVE_ADD = 0, 31*1da177e4SLinus Torvalds W1_SLAVE_REMOVE, 32*1da177e4SLinus Torvalds W1_MASTER_ADD, 33*1da177e4SLinus Torvalds W1_MASTER_REMOVE, 34*1da177e4SLinus Torvalds }; 35*1da177e4SLinus Torvalds 36*1da177e4SLinus Torvalds struct w1_netlink_msg 37*1da177e4SLinus Torvalds { 38*1da177e4SLinus Torvalds __u8 type; 39*1da177e4SLinus Torvalds __u8 reserved[3]; 40*1da177e4SLinus Torvalds union 41*1da177e4SLinus Torvalds { 42*1da177e4SLinus Torvalds struct w1_reg_num id; 43*1da177e4SLinus Torvalds __u64 w1_id; 44*1da177e4SLinus Torvalds struct 45*1da177e4SLinus Torvalds { 46*1da177e4SLinus Torvalds __u32 id; 47*1da177e4SLinus Torvalds __u32 pid; 48*1da177e4SLinus Torvalds } mst; 49*1da177e4SLinus Torvalds } id; 50*1da177e4SLinus Torvalds }; 51*1da177e4SLinus Torvalds 52*1da177e4SLinus Torvalds #ifdef __KERNEL__ 53*1da177e4SLinus Torvalds 54*1da177e4SLinus Torvalds void w1_netlink_send(struct w1_master *, struct w1_netlink_msg *); 55*1da177e4SLinus Torvalds 56*1da177e4SLinus Torvalds #endif /* __KERNEL__ */ 57*1da177e4SLinus Torvalds #endif /* __W1_NETLINK_H */ 58