From 610705e780395ef30a1b8e53de150c37381ca31f Mon Sep 17 00:00:00 2001 From: Evgeniy Polyakov Date: Wed, 7 Jan 2009 18:08:59 -0800 Subject: w1: add list masters w1 command This patch series introduces and extends several userspace commands used with netlink protocol. Touch block command allows to write data and return sampled data to the userspace. Extended search and alarm seach commands to return list of slave devices found during given search. List masters command allows to send all registered master IDs to the userspace. Great thanks to Paul Alfille (owfs) who tested this implementation and wrote w1-to-network daemon http://sourceforge.net/projects/w1repeater/ and Frederik Deweerdt and Randy Dunlap for review. This patch: Returns list of registered bus master devices. Signed-off-by: Evgeniy Polyakov Cc: Paul Alfille Cc: Frederik Deweerdt Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/w1/w1_netlink.h | 1 + 1 file changed, 1 insertion(+) (limited to 'drivers/w1/w1_netlink.h') diff --git a/drivers/w1/w1_netlink.h b/drivers/w1/w1_netlink.h index 56122b9e9294..21913dfc0f3a 100644 --- a/drivers/w1/w1_netlink.h +++ b/drivers/w1/w1_netlink.h @@ -34,6 +34,7 @@ enum w1_netlink_message_types { W1_MASTER_REMOVE, W1_MASTER_CMD, W1_SLAVE_CMD, + W1_LIST_MASTERS, }; struct w1_netlink_msg -- cgit v1.2.3 From 9be62e0b2fadaf5ffeb32fd1b910ef1fe6bd43db Mon Sep 17 00:00:00 2001 From: Evgeniy Polyakov Date: Wed, 7 Jan 2009 18:09:01 -0800 Subject: w1: add touch block command Writes and returns sampled data back to userspace. Signed-off-by: Evgeniy Polyakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/w1/w1_netlink.h | 1 + 1 file changed, 1 insertion(+) (limited to 'drivers/w1/w1_netlink.h') diff --git a/drivers/w1/w1_netlink.h b/drivers/w1/w1_netlink.h index 21913dfc0f3a..99dd21ba14c6 100644 --- a/drivers/w1/w1_netlink.h +++ b/drivers/w1/w1_netlink.h @@ -56,6 +56,7 @@ struct w1_netlink_msg #define W1_CMD_WRITE 0x1 #define W1_CMD_SEARCH 0x2 #define W1_CMD_ALARM_SEARCH 0x3 +#define W1_CMD_TOUCH 0x4 struct w1_netlink_cmd { -- cgit v1.2.3 From 325a06fb13614fd4e5ea36996c0ce043752a93a0 Mon Sep 17 00:00:00 2001 From: Evgeniy Polyakov Date: Wed, 7 Jan 2009 18:09:03 -0800 Subject: w1: move w1 commands from defines to enum Signed-off-by: Evgeniy Polyakov Cc: Paul Alfille Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/w1/w1_netlink.h | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'drivers/w1/w1_netlink.h') diff --git a/drivers/w1/w1_netlink.h b/drivers/w1/w1_netlink.h index 99dd21ba14c6..01d86a71cf32 100644 --- a/drivers/w1/w1_netlink.h +++ b/drivers/w1/w1_netlink.h @@ -52,11 +52,14 @@ struct w1_netlink_msg __u8 data[0]; }; -#define W1_CMD_READ 0x0 -#define W1_CMD_WRITE 0x1 -#define W1_CMD_SEARCH 0x2 -#define W1_CMD_ALARM_SEARCH 0x3 -#define W1_CMD_TOUCH 0x4 +enum w1_commands { + W1_CMD_READ = 0, + W1_CMD_WRITE, + W1_CMD_SEARCH, + W1_CMD_ALARM_SEARCH, + W1_CMD_TOUCH, + W1_CMD_MAX, +}; struct w1_netlink_cmd { -- cgit v1.2.3 From f89735c4e281e8642907b38640c076ae5048f3a6 Mon Sep 17 00:00:00 2001 From: Evgeniy Polyakov Date: Wed, 7 Jan 2009 18:09:04 -0800 Subject: w1: added w1 reset command Command which allows to reset the bus. Signed-off-by: Evgeniy Polyakov Cc: Paul Alfille Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/w1/w1_netlink.h | 1 + 1 file changed, 1 insertion(+) (limited to 'drivers/w1/w1_netlink.h') diff --git a/drivers/w1/w1_netlink.h b/drivers/w1/w1_netlink.h index 01d86a71cf32..68a4ff46cb96 100644 --- a/drivers/w1/w1_netlink.h +++ b/drivers/w1/w1_netlink.h @@ -58,6 +58,7 @@ enum w1_commands { W1_CMD_SEARCH, W1_CMD_ALARM_SEARCH, W1_CMD_TOUCH, + W1_CMD_RESET, W1_CMD_MAX, }; -- cgit v1.2.3 From 4037014e3fb71e998189374e19ca141c59d15323 Mon Sep 17 00:00:00 2001 From: Evgeniy Polyakov Date: Wed, 7 Jan 2009 18:09:05 -0800 Subject: w1: send status messages after command processing Send completion status of the commands to the userspace. Message and protocol are described in the documentation. Signed-off-by: Evgeniy Polyakov Cc: Paul Alfille Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/w1/w1_netlink.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/w1/w1_netlink.h') diff --git a/drivers/w1/w1_netlink.h b/drivers/w1/w1_netlink.h index 68a4ff46cb96..27e950f935b1 100644 --- a/drivers/w1/w1_netlink.h +++ b/drivers/w1/w1_netlink.h @@ -40,7 +40,7 @@ enum w1_netlink_message_types { struct w1_netlink_msg { __u8 type; - __u8 reserved; + __u8 status; __u16 len; union { __u8 id[8]; -- cgit v1.2.3