<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/staging, branch v3.9</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/staging?h=v3.9</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/staging?h=v3.9'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-03-25T18:35:38Z</updated>
<entry>
<title>staging: comedi: s626: fix continuous acquisition</title>
<updated>2013-03-25T18:35:38Z</updated>
<author>
<name>Ian Abbott</name>
<email>abbotti@mev.co.uk</email>
</author>
<published>2013-03-22T15:16:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e4317ce877a31dbb9d96375391c1c4ad2210d637'/>
<id>urn:sha1:e4317ce877a31dbb9d96375391c1c4ad2210d637</id>
<content type='text'>
For the s626 driver, there is a bug in the handling of asynchronous
commands on the AI subdevice when the stop source is `TRIG_NONE`.  The
command should run continuously until cancelled, but the interrupt
handler stops the command running after the first scan.

The command set-up function `s626_ai_cmd()` contains this code:

	switch (cmd-&gt;stop_src) {
	case TRIG_COUNT:
		/*  data arrives as one packet */
		devpriv-&gt;ai_sample_count = cmd-&gt;stop_arg;
		devpriv-&gt;ai_continous = 0;
		break;
	case TRIG_NONE:
		/*  continous acquisition */
		devpriv-&gt;ai_continous = 1;
		devpriv-&gt;ai_sample_count = 0;
		break;
	}

The interrupt handler `s626_irq_handler()` contains this code:

		if (!(devpriv-&gt;ai_continous))
			devpriv-&gt;ai_sample_count--;
		if (devpriv-&gt;ai_sample_count &lt;= 0) {
			devpriv-&gt;ai_cmd_running = 0;
			/* ... */
		}

So `devpriv-&gt;ai_sample_count` is only decremented for the `TRIG_COUNT`
case, but `devpriv-&gt;ai_cmd_running` is set to 0 (and the command
stopped) regardless.

Fix this in `s626_ai_cmd()` by setting `devpriv-&gt;ai_sample_count = 1`
for the `TRIG_NONE` case.  The interrupt handler will not decrement it
so it will remain greater than 0 and the check for stopping the
acquisition will fail.

Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: zcache: fix typo "64_BIT"</title>
<updated>2013-03-18T23:04:03Z</updated>
<author>
<name>Paul Bolle</name>
<email>pebolle@tiscali.nl</email>
</author>
<published>2013-03-09T21:19:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=27ca0391fb717eecb9b9ca29ad4b9e8d7a84aba5'/>
<id>urn:sha1:27ca0391fb717eecb9b9ca29ad4b9e8d7a84aba5</id>
<content type='text'>
Signed-off-by: Paul Bolle &lt;pebolle@tiscali.nl&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'akpm' (fixes from Andrew)</title>
<updated>2013-03-13T22:21:57Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2013-03-13T22:21:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=842d223f28c4a4a6fe34df2d613049d4e47446c1'/>
<id>urn:sha1:842d223f28c4a4a6fe34df2d613049d4e47446c1</id>
<content type='text'>
Merge misc fixes from Andrew Morton:

 - A bunch of fixes

 - Finish off the idr API conversions before someone starts to use the
   old interfaces again.

* emailed patches from Andrew Morton &lt;akpm@linux-foundation.org&gt;:
  idr: idr_alloc() shouldn't trigger lowmem warning when preloaded
  UAPI: fix endianness conditionals in M32R's asm/stat.h
  UAPI: fix endianness conditionals in linux/raid/md_p.h
  UAPI: fix endianness conditionals in linux/acct.h
  UAPI: fix endianness conditionals in linux/aio_abi.h
  decompressors: fix typo "POWERPC"
  mm/fremap.c: fix oops on error path
  idr: deprecate idr_pre_get() and idr_get_new[_above]()
  tidspbridge: convert to idr_alloc()
  zcache: convert to idr_alloc()
  mlx4: remove leftover idr_pre_get() call
  workqueue: convert to idr_alloc()
  nfsd: convert to idr_alloc()
  nfsd: remove unused get_new_stid()
  kernel/signal.c: use __ARCH_HAS_SA_RESTORER instead of SA_RESTORER
  signal: always clear sa_restorer on execve
  mm: remove_memory(): fix end_pfn setting
  include/linux/res_counter.h needs errno.h
</content>
</entry>
<entry>
<title>tidspbridge: convert to idr_alloc()</title>
<updated>2013-03-13T22:21:47Z</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2013-03-13T21:59:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8e467e855ca5ed2921f290655f96ac40d5dc571c'/>
<id>urn:sha1:8e467e855ca5ed2921f290655f96ac40d5dc571c</id>
<content type='text'>
idr_get_new*() and friends are about to be deprecated.  Convert to the
new idr_alloc() interface.

There are some peculiarities and possible bugs in the converted
functions.  This patch preserves those.

* drv_insert_node_res_element() returns -ENOMEM on alloc failure,
  -EFAULT if id space is exhausted.  -EFAULT is at best misleading.

* drv_proc_insert_strm_res_element() is even weirder.  It returns
  -EFAULT if kzalloc() fails, -ENOMEM if idr preloading fails and
  -EPERM if id space is exhausted.  What's going on here?

* drv_proc_insert_strm_res_element() doesn't free *pstrm_res after
  failure.

Only compile tested.

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Acked-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Cc: Víctor Manuel Jáquez Leal &lt;vjaquez@igalia.com&gt;
Cc: Rene Sapiens &lt;rene.sapiens@ti.com&gt;
Cc: Armando Uribe &lt;x0095078@ti.com&gt;
Cc: Omar Ramirez Luna &lt;omar.ramirez@ti.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>zcache: convert to idr_alloc()</title>
<updated>2013-03-13T22:21:46Z</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2013-03-13T21:59:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a37c3010002322f40fe668162a237aa99aac42d1'/>
<id>urn:sha1:a37c3010002322f40fe668162a237aa99aac42d1</id>
<content type='text'>
idr_get_new*() and friends are about to be deprecated.  Convert to the
new idr_alloc() interface.

Only compile tested.

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Cc: Dan Magenheimer &lt;dan.magenheimer@oracle.com&gt;
Acked-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'staging-3.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging</title>
<updated>2013-03-13T22:01:08Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2013-03-13T22:01:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=886e03bed1af61c9d605a88c14d7d16b7dc55eed'/>
<id>urn:sha1:886e03bed1af61c9d605a88c14d7d16b7dc55eed</id>
<content type='text'>
Pull staging tree fixes from Greg Kroah-Hartman:
 "Here are some drivers/staging and drivers/iio fixes for 3.9 (the two
  are still pretty intertwined, hence them coming both from my tree
  still.) Nothing major, just a few things that have been reported by
  users, all of these have been in linux-next for a while."

* tag 'staging-3.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
  staging: comedi: dt9812: use CR_CHAN() for channel number
  staging/vt6656: Fix too large integer constant warning on 32-bit
  staging: comedi: drivers: usbduxsigma.c: fix DMA buffers on stack
  staging: imx/drm: request irq only after adding the crtc
  staging: comedi: drivers: usbduxfast.c: fix for DMA buffers on stack
  staging: comedi: drivers: usbdux.c: fix DMA buffers on stack
  staging: vt6656: Fix oops on resume from suspend.
  iio:common:st_sensors fixed all warning messages about uninitialized variables
  iio: Fix build error seen if IIO_TRIGGER is defined but IIO_BUFFER is not
  iio/imu: inv_mpu6050 depends on IIO_BUFFER
  iio:ad5064: Initialize register cache correctly
  iio:ad5064: Fix off by one in DAC value range check
  iio:ad5064: Fix address of the second channel for ad5065/ad5045/ad5025
</content>
</entry>
<entry>
<title>staging: comedi: dt9812: use CR_CHAN() for channel number</title>
<updated>2013-03-11T17:21:05Z</updated>
<author>
<name>Ian Abbott</name>
<email>abbotti@mev.co.uk</email>
</author>
<published>2013-03-05T13:13:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=564c526a1bed5e42b5cd52cfe1752c4296ef17a6'/>
<id>urn:sha1:564c526a1bed5e42b5cd52cfe1752c4296ef17a6</id>
<content type='text'>
As pointed out by Dan Carpenper in
&lt;http://driverdev.linuxdriverproject.org/pipermail/devel/2013-February/036025.html&gt;,
the dt9812 comedi driver's use of the `chanspec` member of `struct
comedi_insn` as a channel number is incorrect.  Change it to use
`CR_CHAN(insn-&gt;chanspec)` as the channel number (where `insn` is a
pointer to the `struct comedi_insn` being processed).

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt; # 3.8 onwards
Cc: Anders Blomdell &lt;anders.blomdell@control.lth.se&gt;
Signed-off-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging/vt6656: Fix too large integer constant warning on 32-bit</title>
<updated>2013-03-11T16:53:46Z</updated>
<author>
<name>Geert Uytterhoeven</name>
<email>geert@linux-m68k.org</email>
</author>
<published>2013-03-04T19:42:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=aa1e1234826e21197f818ca0abf519775ad4eb5c'/>
<id>urn:sha1:aa1e1234826e21197f818ca0abf519775ad4eb5c</id>
<content type='text'>
drivers/staging/vt6656/card.c: In function ‘CARDqGetNextTBTT’:
drivers/staging/vt6656/card.c:793: warning: integer constant is too large for ‘unsigned long’ type

Commit c7b7cad0d8df823ea063c86a54316bbcbfa04a7c ("staging/vt6656: Fix
sparse warning constant 0xffffffff00000000U is so big it is unsigned long")
changed the constant to "0xffffffff00000000UL", but that only works on
64-bit.  Change it "0xffffffff00000000ULL" to fix it for 32-bit, too.

Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Reviewed-by: Peter Huewe &lt;peterhuewe@gmx.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: comedi: drivers: usbduxsigma.c: fix DMA buffers on stack</title>
<updated>2013-03-11T16:38:37Z</updated>
<author>
<name>Kumar Amit Mehta</name>
<email>gmate.amit@gmail.com</email>
</author>
<published>2013-02-22T06:07:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b5ae11463a67a5e468dd67482ab2308994da9b2b'/>
<id>urn:sha1:b5ae11463a67a5e468dd67482ab2308994da9b2b</id>
<content type='text'>
This patch fixes an instance of DMA buffer on stack(being passed to
usb_control_msg)for the USB-DUXsigma Board driver. Found using smatch.

Signed-off-by: Kumar Amit Mehta &lt;gmate.amit@gmail.com&gt;
Reviewed-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: imx/drm: request irq only after adding the crtc</title>
<updated>2013-03-11T16:31:48Z</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2013-02-20T02:57:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=47b1be5c0f4ed4991f3d956dbd7ba69cb5bc521f'/>
<id>urn:sha1:47b1be5c0f4ed4991f3d956dbd7ba69cb5bc521f</id>
<content type='text'>
If the bootloader already enabled the display, the interrupt handler
will be called as soon as it is registered. If the CRTC is not already
added at this time, the call to imx_drm_handle_vblank will result in
a NULL pointer dereference.

The patch fixes a kernel panic [1], which has been on linux-next since
Jan 8 [2].

[1] http://thread.gmane.org/gmane.linux.ports.arm.kernel/218858
[2] http://thread.gmane.org/gmane.linux.ports.arm.kernel/208192

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Tested-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
