diff options
Diffstat (limited to 'drivers/w1')
-rw-r--r-- | drivers/w1/Kconfig | 3 | ||||
-rw-r--r-- | drivers/w1/masters/ds2482.c | 2 | ||||
-rw-r--r-- | drivers/w1/masters/ds2490.c | 2 | ||||
-rw-r--r-- | drivers/w1/slaves/w1_therm.c | 4 | ||||
-rw-r--r-- | drivers/w1/w1.c | 6 |
5 files changed, 8 insertions, 9 deletions
diff --git a/drivers/w1/Kconfig b/drivers/w1/Kconfig index 6854fd6b971..9adbb4f9047 100644 --- a/drivers/w1/Kconfig +++ b/drivers/w1/Kconfig @@ -17,7 +17,8 @@ config W1_CON bool "Userspace communication over connector" default y --- help --- - This allows to communicate with userspace using connector [Documentation/connector]. + This allows to communicate with userspace using connector. For more + information see <file:Documentation/connector/connector.txt>. 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. diff --git a/drivers/w1/masters/ds2482.c b/drivers/w1/masters/ds2482.c index d93eb626b2f..0fd5820d5c6 100644 --- a/drivers/w1/masters/ds2482.c +++ b/drivers/w1/masters/ds2482.c @@ -29,7 +29,7 @@ * However, the chip cannot be detected without doing an i2c write, * so use the force module parameter. */ -static unsigned short normal_i2c[] = {I2C_CLIENT_END}; +static const unsigned short normal_i2c[] = { I2C_CLIENT_END }; /** * Insmod parameters diff --git a/drivers/w1/masters/ds2490.c b/drivers/w1/masters/ds2490.c index 299e274d241..b63b5e044a4 100644 --- a/drivers/w1/masters/ds2490.c +++ b/drivers/w1/masters/ds2490.c @@ -233,7 +233,7 @@ static int ds_recv_status_nodump(struct ds_device *dev, struct ds_status *st, { int count, err; - memset(st, 0, sizeof(st)); + memset(st, 0, sizeof(*st)); count = 0; err = usb_bulk_msg(dev->udev, usb_rcvbulkpipe(dev->udev, dev->ep[EP_STATUS]), buf, size, &count, 100); diff --git a/drivers/w1/slaves/w1_therm.c b/drivers/w1/slaves/w1_therm.c index 4318935678c..112f4ec5903 100644 --- a/drivers/w1/slaves/w1_therm.c +++ b/drivers/w1/slaves/w1_therm.c @@ -112,7 +112,7 @@ static struct w1_therm_family_converter w1_therm_families[] = { static inline int w1_DS18B20_convert_temp(u8 rom[9]) { - int t = (rom[1] << 8) | rom[0]; + s16 t = (rom[1] << 8) | rom[0]; t /= 16; return t; } @@ -204,7 +204,7 @@ static ssize_t w1_therm_read_bin(struct kobject *kobj, crc = w1_calc_crc8(rom, 8); - if (rom[8] == crc && rom[0]) + if (rom[8] == crc) verdict = 1; } } diff --git a/drivers/w1/w1.c b/drivers/w1/w1.c index 070217322c9..33e50310e9e 100644 --- a/drivers/w1/w1.c +++ b/drivers/w1/w1.c @@ -869,11 +869,9 @@ void w1_search_process(struct w1_master *dev, u8 search_type) w1_search_devices(dev, search_type, w1_slave_found); list_for_each_entry_safe(sl, sln, &dev->slist, w1_slave_entry) { - if (!test_bit(W1_SLAVE_ACTIVE, (unsigned long *)&sl->flags) && !--sl->ttl) { + if (!test_bit(W1_SLAVE_ACTIVE, (unsigned long *)&sl->flags) && !--sl->ttl) w1_slave_detach(sl); - - dev->slave_count--; - } else if (test_bit(W1_SLAVE_ACTIVE, (unsigned long *)&sl->flags)) + else if (test_bit(W1_SLAVE_ACTIVE, (unsigned long *)&sl->flags)) sl->ttl = dev->slave_ttl; } |