config W1
        tristate "Dallas's 1-wire support"
        ---help---
-         Dallas's 1-wire bus is useful to connect slow 1-pin devices
+         Dallas' 1-wire bus is useful to connect slow 1-pin devices
          such as iButtons and thermal sensors.
 
          If you want W1 support, you should say Y here.
          This W1 support can also be built as a module.  If so, the module
          will be called wire.ko.
 
+config W1_CON
+       depends on CONNECTOR
+       bool "Userspace communication over connector"
+       default y
+       --- help ---
+         This allows to communicate with userspace using connector [Documentation/connector].
+         There are three types of messages between w1 core and userspace:
+         1. Events. They are generated each time new master or slave device found
+               either due to automatic or requested search.
+         2. Userspace commands. Includes read/write and search/alarm search comamnds.
+         3. Replies to userspace commands.
+
 source drivers/w1/masters/Kconfig
 source drivers/w1/slaves/Kconfig
 
 
 # Makefile for the Dallas's 1-wire bus.
 #
 
-ifeq ($(CONFIG_CONNECTOR), n)
-EXTRA_CFLAGS   += -DNETLINK_DISABLED
-endif
-
 ifeq ($(CONFIG_W1_DS2433_CRC), y)
 EXTRA_CFLAGS   += -DCONFIG_W1_F23_CRC
 endif
 
 #include "w1_log.h"
 #include "w1_netlink.h"
 
-#ifndef NETLINK_DISABLED
+#if defined(CONFIG_W1_CON) && (defined(CONFIG_CONNECTOR) || (defined(CONFIG_CONNECTOR_MODULE) && defined(CONFIG_W1_MODULE)))
 void w1_netlink_send(struct w1_master *dev, struct w1_netlink_msg *msg)
 {
        char buf[sizeof(struct cn_msg) + sizeof(struct w1_netlink_msg)];
        cn_del_callback(&w1_id);
 }
 #else
-#warning Netlink support is disabled. Please compile with NET support enabled.
-
 void w1_netlink_send(struct w1_master *dev, struct w1_netlink_msg *msg)
 {
 }