[PATCH] w1: Adds a sysfs entry (w1_master_search) that allows you to disable/enable...
[pandora-kernel.git] / drivers / w1 / w1_int.c
index ce24e3b..cf18f13 100644 (file)
@@ -69,6 +69,7 @@ static struct w1_master * w1_alloc_dev(u32 id, int slave_count, int slave_ttl,
        dev->initialized        = 0;
        dev->id                 = id;
        dev->slave_ttl          = slave_ttl;
+        dev->search_count      = -1; /* continual scan */
 
        atomic_set(&dev->refcnt, 2);
 
@@ -121,6 +122,14 @@ int w1_add_master_device(struct w1_bus_master *master)
        int retval = 0;
        struct w1_netlink_msg msg;
 
+        /* validate minimum functionality */
+        if (!(master->touch_bit && master->reset_bus) &&
+            !(master->write_bit && master->read_bit))
+        {
+           printk(KERN_ERR "w1_add_master_device: invalid function set\n");
+           return(-EINVAL);
+        }
+
        dev = w1_alloc_dev(w1_ids++, w1_max_slave_count, w1_max_slave_ttl, &w1_driver, &w1_device);
        if (!dev)
                return -ENOMEM;