<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/staging, branch v3.0.31</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/staging?h=v3.0.31</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/staging?h=v3.0.31'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-05-07T15:56:34Z</updated>
<entry>
<title>brcm80211: smac: resume transmit fifo upon receiving frames</title>
<updated>2012-05-07T15:56:34Z</updated>
<author>
<name>Arend van Spriel</name>
<email>arend@broadcom.com</email>
</author>
<published>2012-04-25T22:39:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=326f0492f8b0d4e3f1e1a7f47eddd0c0f7a644d9'/>
<id>urn:sha1:326f0492f8b0d4e3f1e1a7f47eddd0c0f7a644d9</id>
<content type='text'>
commit badc4f07622f0f7093a201638f45e85765f1b5e4 upstream.

There have been reports about not being able to use access-points
on channel 12 and 13 or having connectivity issues when these channels
were part of the selected regulatory domain. Upon switching to these
channels the brcmsmac driver suspends the transmit dma fifos. This
patch resumes them upon handing over the first received beacon to
mac80211.

This patch is to be applied to the stable tree for kernel versions
3.2 and 3.3.

Tested-by: Francesco Saverio Schiavarelli &lt;fschiava@libero.it&gt;
Reviewed-by: Pieter-Paul Giesberts &lt;pieterpg@broadcom.com&gt;
Reviewed-by: Brett Rudley &lt;brudley@broadcom.com&gt;
Signed-off-by: Arend van Spriel &lt;arend@broadcom.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: iio: hmc5843: Fix crash in probe function.</title>
<updated>2012-04-22T23:21:23Z</updated>
<author>
<name>Marek Belisko</name>
<email>marek.belisko@open-nandra.com</email>
</author>
<published>2012-04-12T19:48:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b35a446b31f50aa11ca149b98bcfc517cdc9c8b6'/>
<id>urn:sha1:b35a446b31f50aa11ca149b98bcfc517cdc9c8b6</id>
<content type='text'>
commit 62d2feb9803f18c4e3c8a1a2c7e30a54df8a1d72 upstream.

Fix crash after issuing:
	echo hmc5843 0x1e &gt; /sys/class/i2c-dev/i2c-2/device/new_device

	[   37.180999] device: '2-001e': device_add
	[   37.188293] bus: 'i2c': add device 2-001e
	[   37.194549] PM: Adding info for i2c:2-001e
	[   37.200958] bus: 'i2c': driver_probe_device: matched device 2-001e with driver hmc5843
	[   37.210815] bus: 'i2c': really_probe: probing driver hmc5843 with device 2-001e
	[   37.224884] HMC5843 initialized
	[   37.228759] ------------[ cut here ]------------
	[   37.233612] kernel BUG at mm/slab.c:505!
	[   37.237701] Internal error: Oops - BUG: 0 [#1] PREEMPT
	[   37.243103] Modules linked in:
	[   37.246337] CPU: 0    Not tainted  (3.3.1-gta04+ #28)
	[   37.251647] PC is at kfree+0x84/0x144
	[   37.255493] LR is at kfree+0x20/0x144
	[   37.259338] pc : [&lt;c00b408c&gt;]    lr : [&lt;c00b4028&gt;]    psr: 40000093
	[   37.259368] sp : de249cd8  ip : 0000000c  fp : 00000090
	[   37.271362] r10: 0000000a  r9 : de229eac  r8 : c0236274
	[   37.276855] r7 : c09d6490  r6 : a0000013  r5 : de229c00  r4 : de229c10
	[   37.283691] r3 : c0f00218  r2 : 00000400  r1 : c0eea000  r0 : c00b4028
	[   37.290527] Flags: nZcv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
	[   37.298095] Control: 10c5387d  Table: 9e1d0019  DAC: 00000015
	[   37.304107] Process sh (pid: 91, stack limit = 0xde2482f0)
	[   37.309844] Stack: (0xde249cd8 to 0xde24a000)
	[   37.314422] 9cc0:                                                       de229c10 de229c00
	[   37.322998] 9ce0: de229c10 ffffffea 00000005 c0236274 de140a80 c00b4798 dec00080 de140a80
	[   37.331573] 9d00: c032f37c dec00080 000080d0 00000001 de229c00 de229c10 c048d578 00000005
	[   37.340148] 9d20: de229eac 0000000a 00000090 c032fa40 00000001 00000000 00000001 de229c10
	[   37.348724] 9d40: de229eac 00000029 c075b558 00000001 00000003 00000004 de229c10 c048d594
	[   37.357299] 9d60: 00000000 60000013 00000018 205b0007 37332020 3432322e 5d343838 c0060020
	[   37.365905] 9d80: de251600 00000001 00000000 de251600 00000001 c0065a84 de229c00 de229c48
	[   37.374481] 9da0: 00000006 0048d62c de229c38 de229c00 de229c00 de1f6c00 de1f6c20 00000001
	[   37.383056] 9dc0: 00000000 c048d62c 00000000 de229c00 de229c00 de1f6c00 de1f6c20 00000001
	[   37.391632] 9de0: 00000000 c048d62c 00000000 c0330164 00000000 de1f6c20 c048d62c de1f6c00
	[   37.400207] 9e00: c0330078 de1f6c04 c078d714 de189b58 00000000 c02ccfd8 de1f6c20 c0795f40
	[   37.408782] 9e20: c0238330 00000000 00000000 c02381a8 de1b9fc0 de1f6c20 de1f6c20 de249e48
	[   37.417358] 9e40: c0238330 c0236bb0 decdbed8 de7d0f14 de1f6c20 de1f6c20 de1f6c54 de1f6c20
	[   37.425933] 9e60: 00000000 c0238030 de1f6c20 c078d7bc de1f6c20 c02377ec de1f6c20 de1f6c28
	[   37.434509] 9e80: dee64cb0 c0236138 c047c554 de189b58 00000000 c004b45c de1f6c20 de1f6cd8
	[   37.443084] 9ea0: c0edfa6c de1f6c00 dee64c68 de1f6c04 de1f6c20 dee64cb8 c047c554 de189b58
	[   37.451690] 9ec0: 00000000 c02cd634 dee64c68 de249ef4 de23b008 dee64cb0 0000000d de23b000
	[   37.460266] 9ee0: de23b007 c02cd78c 00000002 00000000 00000000 35636d68 00333438 00000000
	[   37.468841] 9f00: 00000000 00000000 001e0000 00000000 00000000 00000000 00000000 0a10cec0
	[   37.477416] 9f20: 00000002 de249f80 0000000d dee62990 de189b40 c0234d88 0000000d c010c354
	[   37.485992] 9f40: 0000000d de210f28 000acc88 de249f80 0000000d de248000 00000000 c00b7bf8
	[   37.494567] 9f60: de210f28 000acc88 de210f28 000acc88 00000000 00000000 0000000d c00b7ed8
	[   37.503143] 9f80: 00000000 00000000 0000000d 00000000 0007fa28 0000000d 000acc88 00000004
	[   37.511718] 9fa0: c000e544 c000e380 0007fa28 0000000d 00000001 000acc88 0000000d 00000000
	[   37.520294] 9fc0: 0007fa28 0000000d 000acc88 00000004 00000001 00000020 00000002 00000000
	[   37.528869] 9fe0: 00000000 beab8624 0000ea05 b6eaebac 600d0010 00000001 00000000 00000000
	[   37.537475] [&lt;c00b408c&gt;] (kfree+0x84/0x144) from [&lt;c0236274&gt;] (device_add+0x530/0x57c)
	[   37.545806] [&lt;c0236274&gt;] (device_add+0x530/0x57c) from [&lt;c032fa40&gt;] (iio_device_register+0x8c8/0x990)
	[   37.555480] [&lt;c032fa40&gt;] (iio_device_register+0x8c8/0x990) from [&lt;c0330164&gt;] (hmc5843_probe+0xec/0x114)
	[   37.565338] [&lt;c0330164&gt;] (hmc5843_probe+0xec/0x114) from [&lt;c02ccfd8&gt;] (i2c_device_probe+0xc4/0xf8)
	[   37.574737] [&lt;c02ccfd8&gt;] (i2c_device_probe+0xc4/0xf8) from [&lt;c02381a8&gt;] (driver_probe_device+0x118/0x218)
	[   37.584777] [&lt;c02381a8&gt;] (driver_probe_device+0x118/0x218) from [&lt;c0236bb0&gt;] (bus_for_each_drv+0x4c/0x84)
	[   37.594818] [&lt;c0236bb0&gt;] (bus_for_each_drv+0x4c/0x84) from [&lt;c0238030&gt;] (device_attach+0x78/0xa4)
	[   37.604125] [&lt;c0238030&gt;] (device_attach+0x78/0xa4) from [&lt;c02377ec&gt;] (bus_probe_device+0x28/0x9c)
	[   37.613433] [&lt;c02377ec&gt;] (bus_probe_device+0x28/0x9c) from [&lt;c0236138&gt;] (device_add+0x3f4/0x57c)
	[   37.622650] [&lt;c0236138&gt;] (device_add+0x3f4/0x57c) from [&lt;c02cd634&gt;] (i2c_new_device+0xf8/0x19c)
	[   37.631805] [&lt;c02cd634&gt;] (i2c_new_device+0xf8/0x19c) from [&lt;c02cd78c&gt;] (i2c_sysfs_new_device+0xb4/0x130)
	[   37.641754] [&lt;c02cd78c&gt;] (i2c_sysfs_new_device+0xb4/0x130) from [&lt;c0234d88&gt;] (dev_attr_store+0x18/0x24)
	[   37.651611] [&lt;c0234d88&gt;] (dev_attr_store+0x18/0x24) from [&lt;c010c354&gt;] (sysfs_write_file+0x10c/0x140)
	[   37.661193] [&lt;c010c354&gt;] (sysfs_write_file+0x10c/0x140) from [&lt;c00b7bf8&gt;] (vfs_write+0xb0/0x178)
	[   37.670410] [&lt;c00b7bf8&gt;] (vfs_write+0xb0/0x178) from [&lt;c00b7ed8&gt;] (sys_write+0x3c/0x68)
	[   37.678833] [&lt;c00b7ed8&gt;] (sys_write+0x3c/0x68) from [&lt;c000e380&gt;] (ret_fast_syscall+0x0/0x3c)
	[   37.687683] Code: 1593301c e5932000 e3120080 1a000000 (e7f001f2)
	[   37.700775] ---[ end trace aaf805debdb69390 ]---

Client data was assigned to iio_dev structure in probe but in
hmc5843_init_client function casted to private driver data structure which
is wrong. Possibly calling mutex_init(&amp;data-&gt;lock); corrupt data
which the lead to above crash.

Signed-off-by: Marek Belisko &lt;marek.belisko@open-nandra.com&gt;
Acked-by: Jonathan Cameron &lt;jic23@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: staging: lirc_serial: Do not assume error codes returned by request_irq()</title>
<updated>2012-03-12T17:33:00Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2011-11-16T04:54:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=35df833a65492454cffecedbf7a6abc5ae27dcfc'/>
<id>urn:sha1:35df833a65492454cffecedbf7a6abc5ae27dcfc</id>
<content type='text'>
commit affc9a0d59ac49bd304e2137bd5e4ffdd6fdfa52 upstream.

lirc_serial_probe() must fail if request_irq() returns an error, even if
it isn't EBUSY or EINVAL,

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: staging: lirc_serial: Fix deadlock on resume failure</title>
<updated>2012-03-12T17:33:00Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2011-11-16T04:53:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c421942a2c438d3d111222d78704f254ce5201d4'/>
<id>urn:sha1:c421942a2c438d3d111222d78704f254ce5201d4</id>
<content type='text'>
commit 1ff1d88e862948ae5bfe490248c023ff8ac2855d upstream.

A resume function cannot remove the device it is resuming!

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;


</content>
</entry>
<entry>
<title>media: staging: lirc_serial: Free resources on failure paths of lirc_serial_probe()</title>
<updated>2012-03-12T17:33:00Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2011-11-16T04:52:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9971532b094729a08175715fef295cd41d0f7ea7'/>
<id>urn:sha1:9971532b094729a08175715fef295cd41d0f7ea7</id>
<content type='text'>
commit c8e57e1b766c2321aa76ee5e6878c69bd2313d62 upstream.

Failure to allocate the I/O region leaves the IRQ allocated.
A later failure leaves them both allocated.

Reported-by: Torsten Crass &lt;torsten.crass@eBiology.de&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: staging: lirc_serial: Fix init/exit order</title>
<updated>2012-03-12T17:33:00Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2011-11-16T04:49:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=531036606ff0b72c5028134df255e4dd19ad6c20'/>
<id>urn:sha1:531036606ff0b72c5028134df255e4dd19ad6c20</id>
<content type='text'>
commit 9105b8b200410383d0854bbe237ee385d7d33ba6 upstream.

Currently the module init function registers a platform_device and
only then allocates its IRQ and I/O region.  This allows allocation to
race with the device's suspend() function.  Instead, allocate
resources in the platform driver's probe() function and free them in
the remove() function.

The module exit function removes the platform device before the
character device that provides access to it.  Change it to reverse the
order of initialisation.

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: r8712u: Add new Sitecom UsB ID</title>
<updated>2012-02-13T19:06:12Z</updated>
<author>
<name>Larry Finger</name>
<email>Larry.Finger@lwfinger.net</email>
</author>
<published>2012-01-07T16:07:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fc2286972bd426b03fe64d79d39d9ff9ac1c4cc3'/>
<id>urn:sha1:fc2286972bd426b03fe64d79d39d9ff9ac1c4cc3</id>
<content type='text'>
commit 1793bf1deddc8ce25dc41925d5dbe64536c841b6 upstream.

Add USB ID for SITECOM WLA-1000 V1 001 WLAN

Reported-and-tested-by: Roland Gruber &lt;post@rolandgruber.de&gt;
Reported-and-tested-by: Dario Lucia &lt;dario.lucia@gmail.com&gt;
Signed-off-by: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Staging: asus_oled: fix NULL-ptr crash on unloading</title>
<updated>2012-02-13T19:06:12Z</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2012-01-22T14:33:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=946972e6ab9c59142f5cb51f31ea36a090f2ce16'/>
<id>urn:sha1:946972e6ab9c59142f5cb51f31ea36a090f2ce16</id>
<content type='text'>
commit 3589e74595a4332ebf77b5ed006f3c6686071ecd upstream.

Asus_oled triggers the following bug on module unloading:

 usbcore: deregistering interface driver asus-oled
 BUG: unable to handle kernel NULL pointer dereference at 0000000000000038
 IP: [&lt;ffffffff8111292b&gt;] sysfs_delete_link+0x30/0x66

 Call Trace:
  [&lt;ffffffff81225373&gt;] device_remove_class_symlinks+0x6b/0x70
  [&lt;ffffffff812256a8&gt;] device_del+0x9f/0x1ab
  [&lt;ffffffff812257c5&gt;] device_unregister+0x11/0x1e
  [&lt;ffffffffa000cb82&gt;] asus_oled_disconnect+0x4f/0x9e [asus_oled]
  [&lt;ffffffff81277430&gt;] usb_unbind_interface+0x54/0x103
  [&lt;ffffffff812276c4&gt;] __device_release_driver+0xa2/0xeb
  [&lt;ffffffff81227794&gt;] driver_detach+0x87/0xad
  [&lt;ffffffff812269e9&gt;] bus_remove_driver+0x91/0xc1
  [&lt;ffffffff81227fb4&gt;] driver_unregister+0x66/0x6e
  [&lt;ffffffff812771ed&gt;] usb_deregister+0xbb/0xc4
  [&lt;ffffffffa000ce87&gt;] asus_oled_exit+0x2f/0x31 [asus_oled]
  [&lt;ffffffff81068365&gt;] sys_delete_module+0x1b8/0x21b
  [&lt;ffffffff810ae3de&gt;] ? do_munmap+0x2ef/0x313
  [&lt;ffffffff813699bb&gt;] system_call_fastpath+0x16/0x1b

This is due to an incorrect destruction sequence in asus_oled_exit().

Fix the order, fixes the bug. Tested on an Asus G50V laptop only.

Cc: Jakub Schmidtke &lt;sjakub@gmail.com&gt;
Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Staging: asus_oled: fix image processing</title>
<updated>2012-02-13T19:06:12Z</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2012-01-22T14:33:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3f64466ca0f04dc2b138a3c1e348a7e15b91ebba'/>
<id>urn:sha1:3f64466ca0f04dc2b138a3c1e348a7e15b91ebba</id>
<content type='text'>
commit 635032cb397b396241372fa0ff36ae758e658b23 upstream.

Programming an image was broken, because odev-&gt;buf_offs was not advanced
for val == 0 in append_values(). This regression was introduced in:

 commit 1ff12a4aa354bed093a0240d5e6347b1e27601bc
 Author: Kevin A. Granade &lt;kevin.granade@gmail.com&gt;
 Date:   Sat Sep 5 01:03:39 2009 -0500

     Staging: asus_oled: Cleaned up checkpatch issues.

Fix the image processing by special-casing val == 0.

I have tested this change on an Asus G50V laptop only.

Cc: Jakub Schmidtke &lt;sjakub@gmail.com&gt;
Cc: Kevin A. Granade &lt;kevin.granade@gmail.com&gt;
Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: r8712u: Add new USB ID</title>
<updated>2011-12-21T20:57:44Z</updated>
<author>
<name>Larry Finger</name>
<email>Larry.Finger@lwfinger.net</email>
</author>
<published>2011-12-11T16:27:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fa0bd1d27724944e5c8a93ebfdf70af50bec9972'/>
<id>urn:sha1:fa0bd1d27724944e5c8a93ebfdf70af50bec9972</id>
<content type='text'>
commit c7caf4d4c56aee40b995f5858ccf1c814f3d2da2 upstream.

Add USB ID for Sitecom WLA-2000 v1.001 WLAN.

Reported-and-tested-by: Roland Gruber &lt;post@rolandgruber.de&gt;
Signed-off-by: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

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