summaryrefslogtreecommitdiff
path: root/drivers/w1/w1.h
diff options
context:
space:
mode:
authorDavid Fries <David@Fries.net>2014-01-16 08:29:17 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-02-08 03:40:17 +0400
commit70b34d2ed807b722413894975a8c60617defb887 (patch)
tree5dd0073cdfb48471130284bf3727223e3a100530 /drivers/w1/w1.h
parent3c6955e5aa2a7ebf18a44486be6a7f047811650b (diff)
downloadlinux-70b34d2ed807b722413894975a8c60617defb887.tar.xz
w1: new netlink commands, add/remove/list slaves
Introduce new commands to add, remove, and list slave devices through the netlink interface. This can be useful to skip the search on a static network. They could previously only be added or removed through automatic search or sysfs, and this allows a program to only use netlink. Only allocate memory when needed, so move kzalloc into w1_get_slaves where it was used. Signed-off-by: David Fries <David@Fries.net> Acked-by: Evgeniy Polyakov <zbr@ioremap.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/w1/w1.h')
-rw-r--r--drivers/w1/w1.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/w1/w1.h b/drivers/w1/w1.h
index 80fbdf908919..3376bfbb10f4 100644
--- a/drivers/w1/w1.h
+++ b/drivers/w1/w1.h
@@ -213,6 +213,8 @@ struct w1_slave *w1_search_slave(struct w1_reg_num *id);
void w1_slave_found(struct w1_master *dev, u64 rn);
void w1_search_process_cb(struct w1_master *dev, u8 search_type,
w1_slave_found_callback cb);
+struct w1_slave *w1_slave_search_device(struct w1_master *dev,
+ struct w1_reg_num *rn);
struct w1_master *w1_search_master_id(u32 id);
/* Disconnect and reconnect devices in the given family. Used for finding
@@ -221,6 +223,7 @@ struct w1_master *w1_search_master_id(u32 id);
* has just been registered, to 0 when it has been unregistered.
*/
void w1_reconnect_slaves(struct w1_family *f, int attach);
+int w1_attach_slave_device(struct w1_master *dev, struct w1_reg_num *rn);
void w1_slave_detach(struct w1_slave *sl);
u8 w1_triplet(struct w1_master *dev, int bdir);