<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers, branch v2.6.27.40</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers?h=v2.6.27.40</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers?h=v2.6.27.40'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2009-12-08T19:17:33Z</updated>
<entry>
<title>hwmon: (it87) Fix VID reading on IT8718F</title>
<updated>2009-12-08T19:17:33Z</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2009-11-07T18:11:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=909ec99b24903fcd15cd78b01c0925afeb46ebf3'/>
<id>urn:sha1:909ec99b24903fcd15cd78b01c0925afeb46ebf3</id>
<content type='text'>
commit 371dc4a6d8c3c74a9a1c74b87c2affb3fcef6500 upstream

Comparing apples to bananas doesn't seem right.

The bug has been there since support for the IT8718F was added, so
VID never worked for this chip.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>dca: redesign locks to fix deadlocks</title>
<updated>2009-12-08T19:17:31Z</updated>
<author>
<name>Maciej Sosnowski</name>
<email>maciej.sosnowski@intel.com</email>
</author>
<published>2009-02-03T07:26:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=34dcc7657b7e11976cb9ab67e0bd3135539c97ea'/>
<id>urn:sha1:34dcc7657b7e11976cb9ab67e0bd3135539c97ea</id>
<content type='text'>
commit eb4400e3a040b90a3ad805b01fcbc99a5f615c8f upstream.

Change spin_locks to irqsave to prevent dead-locks.
Protect adding and deleting to/from dca_providers list.
Drop the lock during dca_sysfs_add_req() and dca_sysfs_remove_req() calls
as they might sleep (use GFP_KERNEL allocation).

Signed-off-by: Maciej Sosnowski &lt;maciej.sosnowski@intel.com&gt;
Acked-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: usb-serial: replace shutdown with disconnect, release</title>
<updated>2009-12-08T19:17:31Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2009-12-01T15:01:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f10f9dd87161b70da6ec3d257c1f01a6ac02536f'/>
<id>urn:sha1:f10f9dd87161b70da6ec3d257c1f01a6ac02536f</id>
<content type='text'>
This is commit f9c99bb8b3a1ec81af68d484a551307326c2e933 back-ported to
2.6.27.39.

This patch (as1254-2) splits up the shutdown method of usb_serial_driver
into a disconnect and a release method.

The problem is that the usb-serial core was calling shutdown during
disconnect handling, but drivers didn't expect it to be called until
after all the open file references had been closed.  The result was an
oops when the close method tried to use memory that had been
deallocated by shutdown.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Tested-by: Rory Filer &lt;rfiler@SierraWireless.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: suspend/resume support for option driver</title>
<updated>2009-12-08T19:17:28Z</updated>
<author>
<name>Oliver Neukum</name>
<email>oliver@neukum.org</email>
</author>
<published>2009-01-27T16:21:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e1897f9fc227055733cea2b7449af38276b2e6a5'/>
<id>urn:sha1:e1897f9fc227055733cea2b7449af38276b2e6a5</id>
<content type='text'>
commit 4901b2c34ecb6fc45909228ad269c8126efe4401 upstream.

This patch implements suspend and resume methods for the
option driver. With my hardware I can even suspend the system
and keep up a connection for a short time.

Signed-off-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Signed-Off-By: Matthias Urlichs &lt;smurf@smurf.noris.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: ohci: quirk AMD prefetch for USB 1.1 ISO transfer</title>
<updated>2009-12-08T19:17:27Z</updated>
<author>
<name>Libin Yang</name>
<email>libin.yang@amd.com</email>
</author>
<published>2009-11-04T06:55:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e72432d716f8555c27fc95b39969ba0a1d0c988b'/>
<id>urn:sha1:e72432d716f8555c27fc95b39969ba0a1d0c988b</id>
<content type='text'>
commit a1f17a872bc7b1cb7efdd5486a2963e88a536e61 upstream.

The following patch in the driver is required to avoid USB 1.1 device
failures that may occur due to requests from USB OHCI controllers may
be overwritten if the latency for any pending request by the USB
controller is very long (in the range of milliseconds).

Signed-off-by: Libin Yang &lt;libin.yang@amd.com&gt;
Cc: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>thinkpad-acpi: fix sign of ERESTARTSYS return</title>
<updated>2009-12-08T19:17:24Z</updated>
<author>
<name>Roel Kluin</name>
<email>roel.kluin@gmail.com</email>
</author>
<published>2009-11-20T18:48:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d608b567459dd38ced1f3691d71520a8984f63a1'/>
<id>urn:sha1:d608b567459dd38ced1f3691d71520a8984f63a1</id>
<content type='text'>
commit 80a8d1228e90349b4514e8c925c061fa5cbcea75 upstream.

The returned error should be negative

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Acked-by: Henrique de Moraes Holschuh &lt;hmh@hmh.eng.br&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>isdn: hfc_usb: Fix read buffer overflow</title>
<updated>2009-12-08T19:17:23Z</updated>
<author>
<name>Roel Kluin</name>
<email>roel.kluin@gmail.com</email>
</author>
<published>2009-11-04T16:31:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e9ab6d1f58eda5d33cc7e849778b72a5b2c1d916'/>
<id>urn:sha1:e9ab6d1f58eda5d33cc7e849778b72a5b2c1d916</id>
<content type='text'>
commit 286e633ef0ff5bb63c07b4516665da8004966fec upstream.

Check whether index is within bounds before testing the element.

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Cc: Karsten Keil &lt;isdn@linux-pingi.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>V4L/DVB (13230): s2255drv: Don't conditionalize video buffer completion on waiting processes</title>
<updated>2009-12-08T19:17:15Z</updated>
<author>
<name>Mike Isely</name>
<email>isely@pobox.com</email>
</author>
<published>2009-09-23T21:06:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f6cb332a48ed2100e820cbcae1904e3ad294ae32'/>
<id>urn:sha1:f6cb332a48ed2100e820cbcae1904e3ad294ae32</id>
<content type='text'>
commit 1f95725755ab67f3198df3b5bf7517f926f310ca upstream.

The s2255 driver had logic which aborted processing of a video frame
if there was no process waiting on the video buffer in question.  That
simply doesn't work when the application is doing things in an
asynchronous manner.  If the application went to the trouble to queue
the buffer in the first place, then the driver should always attempt
to complete it - even if the application at that moment has its
attention turned elsewhere.  Applications which always blocked waiting
for I/O on the capture device would not have been affected by this.
Applications which *mostly* blocked waiting for I/O on the capture
device probably only would have been somewhat affected (frame lossage,
at a rate which goes up as the application blocks less).  Applications
which never blocked on the capture device (e.g. polling only) however
would never have been able to receive any video frames, since in that
case this "is anyone waiting on this?" check on the buffer never would
have evalutated true.  This patch just deletes that harmful check
against the buffer's wait queue.

Signed-off-by: Mike Isely &lt;isely@pobox.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Michael Krufky &lt;mkrufky@kernellabs.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>V4L/DVB (13190): em28xx: fix panic that can occur when starting audio streaming</title>
<updated>2009-12-08T19:17:13Z</updated>
<author>
<name>Devin Heitmueller</name>
<email>dheitmueller@kernellabs.com</email>
</author>
<published>2009-10-15T04:14:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=72c62be1f9f89d3f60408ab55728237f37911e08'/>
<id>urn:sha1:72c62be1f9f89d3f60408ab55728237f37911e08</id>
<content type='text'>
commit 96fbf771d86a90ff006bc62ca4d4de6474b3de31 upstream.

Because the counters were not reset when starting up streaming, they would
be reused from the previous run.  This can result in cases such that when the
second instance of streaming starts up, the "cnt" variable in
em28xx_audio_isocirq() can end up being negative, resulting in attempting to
write to memory before the start of runtime-&gt;dma_area (as well as having a
negative number of bytes to copy).

Signed-off-by: Devin Heitmueller &lt;dheitmueller@kernellabs.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Michael Krufky &lt;mkrufky@kernellabs.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>V4L/DVB (13109): tda18271: fix signedness issue in tda18271_rf_tracking_filters_init</title>
<updated>2009-12-08T19:17:11Z</updated>
<author>
<name>Seth Barry</name>
<email>seth@cyberseth.com</email>
</author>
<published>2009-09-27T19:42:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1ed704825c65b7dd7da77427898d6f08c793c040'/>
<id>urn:sha1:1ed704825c65b7dd7da77427898d6f08c793c040</id>
<content type='text'>
commit a57c1dcb93e43357ed3f666e5a2b5d5071dd3930 upstream.

While having tda18271 module set with debug=17 (cal &amp; info prints) and
cal=0 (delay calibration process until first use) - I discovered that
during the calibration process, if the frequency test for 69750000
returned a bcal of 0 (see tda18721-fe.c in tda18271_powerscan func) that
the tuner wouldn't be able to pickup any of the frequencies in the range
(all the other frequencies bands returned bcal=1).  I spent some time
going over the code and the NXP's tda18271 spec (ver.4 of it i think) and
adding a lot of debug prints and walking/stepping through the calibration
process.  I found that when the powerscan fails to find a frequency, the
rf calibration is not run and the default value is supposed to be used in
its place (pulled from the RF_CAL_map table) - but something was getting
goofed up there.

Now, my c coding skills are very rusty, but i think root of the problem is
a signedness issue with the math operation for calculating the rf_a1 and
rf_a2 values in tda18271_rf_tracking_filters_init func, which results in
values like 20648 for rf_a1 (when it should probably have a value like 0,
or so slightly negative that it should be zero - this bad value for rf_a1
would in turn makes the approx calc within
tda18271c2_rf_tracking_filters_correction go out of whack).  The simplest
solution i found was to explicitly convert the signedness of the
denominator to avoid the implicit conversion.  The values placed into the
u32 rf_freq array should never exceed about 900mhz, so i think the s32 max
value shouldn't be an issue in this case.

I've tested it out a little, and even when i get a bcal=0 with the
modified code, the default calibration value gets used, rf_a1 is zero, and
the tuner seems to lock on the stream and mythtv seems to play it fine.

Signed-off-by: Seth Barry &lt;seth@cyberseth.com&gt;
Signed-off-by: Michael Krufky &lt;mkrufky@kernellabs.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
