<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/w1, branch v3.4.48</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.4.48</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.4.48'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2013-03-20T20:04:59Z</updated>
<entry>
<title>w1: fix oops when w1_search is called from netlink connector</title>
<updated>2013-03-20T20:04:59Z</updated>
<author>
<name>Marcin Jurkowski</name>
<email>marcin1j@gmail.com</email>
</author>
<published>2013-03-02T13:50:15Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=32f81345140d7f237afba1a26d42a11117a0304e'/>
<id>urn:sha1:32f81345140d7f237afba1a26d42a11117a0304e</id>
<content type='text'>
commit 9d1817cab2f030f6af360e961cc69bb1da8ad765 upstream.

On Sat, Mar 02, 2013 at 10:45:10AM +0100, Sven Geggus wrote:
&gt; This is the bad commit I found doing git bisect:
&gt; 04f482faf50535229a5a5c8d629cf963899f857c is the first bad commit
&gt; commit 04f482faf50535229a5a5c8d629cf963899f857c
&gt; Author: Patrick McHardy &lt;kaber@trash.net&gt;
&gt; Date:   Mon Mar 28 08:39:36 2011 +0000

Good job. I was too lazy to bisect for bad commit;)

Reading the code I found problematic kthread_should_stop call from netlink
connector which causes the oops. After applying a patch, I've been testing
owfs+w1 setup for nearly two days and it seems to work very reliable (no
hangs, no memleaks etc).
More detailed description and possible fix is given below:

Function w1_search can be called from either kthread or netlink callback.
While the former works fine, the latter causes oops due to kthread_should_stop
invocation.

This patch adds a check if w1_search is serving netlink command, skipping
kthread_should_stop invocation if so.

Signed-off-by: Marcin Jurkowski &lt;marcin1j@gmail.com&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Cc: Josh Boyer &lt;jwboyer@gmail.com&gt;
Tested-by: Sven Geggus &lt;lists@fuchsschwanzdomain.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>DS2781 Maxim Stand-Alone Fuel Gauge battery and w1 slave drivers</title>
<updated>2012-03-08T19:15:33Z</updated>
<author>
<name>Renata Sayakhova</name>
<email>rsayakhova@gmail.com</email>
</author>
<published>2012-02-29T13:58:53Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fef37e9a47b9927ce2817fe1a0fa8cf40f6eefb6'/>
<id>urn:sha1:fef37e9a47b9927ce2817fe1a0fa8cf40f6eefb6</id>
<content type='text'>
Signed-off-by: Renata Sayakhova &lt;rsayakhova@gmail.com&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>w1_bq27000: Only one thread can access the bq27000 at a time.</title>
<updated>2012-02-24T22:25:50Z</updated>
<author>
<name>NeilBrown</name>
<email>neilb@suse.de</email>
</author>
<published>2012-02-19T02:10:00Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=f6e8a1d7b4c4087e13913da43deb45b3e3413f29'/>
<id>urn:sha1:f6e8a1d7b4c4087e13913da43deb45b3e3413f29</id>
<content type='text'>
If multiple threads try, they trip over each other badly.

Signed-off-by: NeilBrown &lt;neilb@suse.de&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>w1_bq27000 - remove w1_bq27000_write</title>
<updated>2012-02-24T22:25:50Z</updated>
<author>
<name>NeilBrown</name>
<email>neilb@suse.de</email>
</author>
<published>2012-02-19T02:10:00Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=df7019f37053bb5357907ec2d1fd516304f38348'/>
<id>urn:sha1:df7019f37053bb5357907ec2d1fd516304f38348</id>
<content type='text'>
The function is never used so remove it to avoid bit-rot.
It can trivially be re-added if there is ever a need.

Signed-off-by: NeilBrown &lt;neilb@suse.de&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>w1_bq27000: remove unnecessary NULL test.</title>
<updated>2012-02-24T22:25:50Z</updated>
<author>
<name>NeilBrown</name>
<email>neilb@suse.de</email>
</author>
<published>2012-02-19T02:10:00Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b6c40b8581d5f2c88d18d7905b9ff6ba9956f506'/>
<id>urn:sha1:b6c40b8581d5f2c88d18d7905b9ff6ba9956f506</id>
<content type='text'>
As recent change means that we now dereference 'dev' before testing
for NULL.

That means either the change was wrong, or the test isn't needed.
As this function is only called from one driver (bq27x000_battery) and
it always passed a non-NULL dev, it seems good to assume that the
test isn't needed.

So remove it.

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: NeilBrown &lt;neilb@suse.de&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>w1: Fix w1_bq27000</title>
<updated>2012-02-16T01:17:50Z</updated>
<author>
<name>NeilBrown</name>
<email>neilb@suse.de</email>
</author>
<published>2012-02-15T17:21:42Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=9f3519d2ed26d2ede5b6432fb64af0e7e8ed13e3'/>
<id>urn:sha1:9f3519d2ed26d2ede5b6432fb64af0e7e8ed13e3</id>
<content type='text'>
w1_bq27000 adds a bq27000-battery platform device but does not provide
platform data for it. This causes the bq27x00 driver to dereference a NULL
pointer.
So provide the appropriate platform data.  This requires modifying
w1_bq27000_read so that it find the w1 device as the parent of the bq device.

Also there is no point exporting w1_bq27000_read as nothing else uses it
or could use it.  So make it static.

Finally, as there is no way to track how many batteries have been found, and
we will probably only find one, use an id number of '-1' to assert that this
is a unique instance.

Signed-off-by: NeilBrown &lt;neilb@suse.de&gt;
Tested-by: Thomas Weber &lt;weber@corscience.de&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>w1: Use linux/gpio.h rather than asm/gpio.h</title>
<updated>2012-02-09T16:36:05Z</updated>
<author>
<name>Mark Brown</name>
<email>broonie@opensource.wolfsonmicro.com</email>
</author>
<published>2012-02-04T16:33:55Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e250b34e57888ebe829a0b89cfa8ad303ad5ae74'/>
<id>urn:sha1:e250b34e57888ebe829a0b89cfa8ad303ad5ae74</id>
<content type='text'>
Direct inclusion of the asm header has long been deprecated by the
introduction of gpiolib.

Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>w1: add fast search for single slave bus</title>
<updated>2011-12-10T03:19:18Z</updated>
<author>
<name>Evgeniy Polyakov</name>
<email>zbr@ioremap.net</email>
</author>
<published>2011-12-10T01:36:11Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c9cbf558e7793d312a4dd5d839ad7eae1aa8bd12'/>
<id>urn:sha1:c9cbf558e7793d312a4dd5d839ad7eae1aa8bd12</id>
<content type='text'>
This enables a much more efficient way of device searching. It uses the
1-wire read-rom operation which allows the direct reading of the slave
address. BUT this works only with exactly one slave on the bus.

Signed-off-by: Hubert Feurstein &lt;h.feurstein@gmail.com&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;

index c374978..9761950 100644
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>USB: convert some miscellanies drivers to use module_usb_driver()</title>
<updated>2011-11-18T17:52:10Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2011-11-18T17:52:10Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fe7484834bb614c2c205726647635171ce6cc070'/>
<id>urn:sha1:fe7484834bb614c2c205726647635171ce6cc070</id>
<content type='text'>
This converts the remaining USB drivers in the kernel to use the
module_usb_driver() macro which makes the code smaller and a bit
simpler.

Added bonus is that it removes some unneeded kernel log messages about
drivers loading and/or unloading.

Cc: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Ben Dooks &lt;ben-linux@fluff.org&gt;
Cc: Till Harbaum &lt;till@harbaum.org&gt;
Cc: Karsten Keil &lt;isdn@linux-pingi.de&gt;
Cc: Chris Ball &lt;cjb@laptop.org&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Lauro Ramos Venancio &lt;lauro.venancio@openbossa.org&gt;
Cc: Aloisio Almeida Jr &lt;aloisio.almeida@openbossa.org&gt;
Cc: Samuel Ortiz &lt;sameo@linux.intel.com&gt;
Cc: Steve Glendinning &lt;steve.glendinning@smsc.com&gt;
Cc: Florian Tobias Schandinat &lt;FlorianSchandinat@gmx.de&gt;
Cc: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Cc: Wim Van Sebroeck &lt;wim@iguana.be&gt;
Cc: "David S. Miller" &lt;davem@davemloft.net&gt;
Cc: Jesper Juhl &lt;jj@chaosbits.net&gt;
Cc: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Cc: Jamie Iles &lt;jamie@jamieiles.com&gt;
Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>W1: w1_therm: release the bus during conversion on externally powered devices</title>
<updated>2011-11-17T19:47:56Z</updated>
<author>
<name>Maciej Szmigiero</name>
<email>mhej@o2.pl</email>
</author>
<published>2011-11-15T23:43:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=377195c438fc5e9e4ca59e69382c10771d817d6a'/>
<id>urn:sha1:377195c438fc5e9e4ca59e69382c10771d817d6a</id>
<content type='text'>
w1_therm devices can either be bus powered or externally powered.

When device is bus powered during temperature conversion the bus
have to be left high to provide necessary power. Some masters also allow
strong power-up to be enabled in this case.
Naturally, no communication over bus can occur during that time.

However, if device has external power then there is no such restriction,
and host can talk to other devices during temperature conversion.

There is command which allows us to check how device is powered,
this patch uses it to release the bus on externally w1_therm powered devices
during temperature conversion.

Also, this changes uninterruptible sleeps there into interruptible ones to
avoid long uninterruptible sleep if w1 subsystem happens to grab bus for
scan during w1_therm_read().

Signed-off-by: Maciej Szmigiero &lt;mhej@o2.pl&gt;
Acked-by: Evgeniy Polyakov &lt;zbr@ioremap.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
</feed>
