openwrt/staging/blogic.git
13 years agostaging:iio:adc:ad7150 fix event codes.
Jonathan Cameron [Wed, 18 May 2011 13:42:13 +0000 (14:42 +0100)]
staging:iio:adc:ad7150 fix event codes.

I won't guarantee I got these right, but they are certainly closer than
the abuse of buffer event codes that was perviously in here.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:core clean out unused elements.
Jonathan Cameron [Wed, 18 May 2011 13:42:12 +0000 (14:42 +0100)]
staging:iio:core clean out unused elements.

Trivial cleanup of things that have fallen by the way.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:trigger sysfs userspace trigger rework.
Jonathan Cameron [Wed, 18 May 2011 13:42:11 +0000 (14:42 +0100)]
staging:iio:trigger sysfs userspace trigger rework.

Awaiting comments on using the nested_irq_trick so that may change.
Moves away from platform device to sysfs controlled creation and
removal of these triggers.

Fix double free of name on trigger allocation failure thanks
to Michael Hennerich.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Reviewed-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:max1363 add new 2 channels parts form maxim, 11644-7
Jonathan Cameron [Wed, 18 May 2011 13:42:10 +0000 (14:42 +0100)]
staging:iio:max1363 add new 2 channels parts form maxim, 11644-7

V2: IIO_CHAN macro usage update.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:max1363 trivial removal of unused trig pointer.
Jonathan Cameron [Wed, 18 May 2011 13:42:09 +0000 (14:42 +0100)]
staging:iio:max1363 trivial removal of unused trig pointer.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: rip out scan_el attributes. Now handled as iio_dev_attrs like everything...
Jonathan Cameron [Wed, 18 May 2011 13:42:08 +0000 (14:42 +0100)]
staging:iio: rip out scan_el attributes. Now handled as iio_dev_attrs like everything else.

Drivers have no need to use this functionality any more and we save a lot of
code by getting rid of it.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:meter:ade7758: Use iio channel spec and miscellaneous other changes.
Michael Hennerich [Wed, 18 May 2011 13:42:07 +0000 (14:42 +0100)]
staging:iio:meter:ade7758: Use iio channel spec and miscellaneous other changes.

Use iio channel spec for the ring buffer channels.
Add/update file comment/license headers.
Use available_scan_masks to prevent that multiple channels are enabled.
Remove wavefrom type attributes. (no handled directly by the scan_elements)
Use SPI_MODE_1.
Move ade7758_initial_setup() before ade7758_probe_trigger() to ensure the
ADE7758 interrupt is disabled when the host interrupt get's enabled.
Add spi_device_id.
Update ring buffer setup.

Some backporting needed to ensure driver builds all the way through core
changes.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:meter:ade7758: Fix list and set of available sample frequencies.
Michael Hennerich [Wed, 18 May 2011 13:42:06 +0000 (14:42 +0100)]
staging:iio:meter:ade7758: Fix list and set of available sample frequencies.

Fix list of available sample frequencies.
Fix ade7758_write_frequency().

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:meter:ade7758: Fix return value of ade7758_write_reset
Michael Hennerich [Wed, 18 May 2011 13:42:05 +0000 (14:42 +0100)]
staging:iio:meter:ade7758: Fix return value of ade7758_write_reset

Update file comment/license header.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:meter:ade7758: Fix timing on SPI read accessor functions.
Michael Hennerich [Wed, 18 May 2011 13:42:04 +0000 (14:42 +0100)]
staging:iio:meter:ade7758: Fix timing on SPI read accessor functions.

According to the ADE7758 datasheet the minimum time between read command
(that is, a write to communication register) and data read must not be
less than 4us.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:meter:ade7758: Update trigger to the new API
Michael Hennerich [Wed, 18 May 2011 13:42:03 +0000 (14:42 +0100)]
staging:iio:meter:ade7758: Update trigger to the new API

Update trigger to the new API.
Add file comment/license header.

Some backporting needed to keep the driver building all the way
through the core changes.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Add channel types IIO_CURRENT and IIO_POWER.
Michael Hennerich [Wed, 18 May 2011 13:42:02 +0000 (14:42 +0100)]
staging:iio: Add channel types IIO_CURRENT and IIO_POWER.

This is required for the ADE7758 driver cleanup.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7606: Use private data space from iio_allocate_device
Michael Hennerich [Wed, 18 May 2011 13:42:01 +0000 (14:42 +0100)]
staging:iio:adc:ad7606: Use private data space from iio_allocate_device

Trivial backport done by Jonathan Cameron

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7606 Convert to new channel registration method Update Add missing...
Michael Hennerich [Wed, 18 May 2011 13:42:00 +0000 (14:42 +0100)]
staging:iio:adc:ad7606 Convert to new channel registration method Update Add missing call to iio_trigger_notify_done() Set pollfunc top and bottom half handler

V3: rebase fixup.

Backported to relevant merge point by Jonathan Cameron.
V2: IIO_CHAN macro usage update

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:gyro:adis16260 move to chan_spec based setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:59 +0000 (14:41 +0100)]
staging:iio:gyro:adis16260 move to chan_spec based setup.

For clean drivers its easier to convert to chan_spec based
registration than to work around the scan_el attributes
going away.

Some minor cleanups done whilst here.

Untested.
V3: rebase fixup and make attribute_group static.

V2: IIO_CHAN macro updates.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16240 move to chan_spec based setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:58 +0000 (14:41 +0100)]
staging:iio:accel:adis16240 move to chan_spec based setup.

For clean drivers its easier to convert to chan_spec based
registration than to work around the scan_el attributes
going away.

Some minor cleanups done whilst here.

Untested.
V2: IIO_CHAN macro use updated.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Add chan info support for 'peak_raw' attributes.
Jonathan Cameron [Wed, 18 May 2011 13:41:57 +0000 (14:41 +0100)]
staging:iio: Add chan info support for 'peak_raw' attributes.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel: lis3l02dq add writing for calibscale and calibbias.
Jonathan Cameron [Wed, 18 May 2011 13:41:56 +0000 (14:41 +0100)]
staging:iio:accel: lis3l02dq add writing for calibscale and calibbias.

This was missed out in original chan_spec conversion.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7298: Convert to new channel registration method
Michael Hennerich [Wed, 18 May 2011 13:41:55 +0000 (14:41 +0100)]
staging:iio:adc:ad7298: Convert to new channel registration method

Convert to new channel registration method Update
Add missing call to iio_trigger_notify_done()

Backported to a point that will allow the driver to build all the
way through the series.

V2: IIO_CHAN macro usage updated.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad799x removed unused headers.
Jonathan Cameron [Wed, 18 May 2011 13:41:54 +0000 (14:41 +0100)]
staging:iio:adc:ad799x removed unused headers.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad799x: Use private data space from iio_allocate_device
Michael Hennerich [Wed, 18 May 2011 13:41:53 +0000 (14:41 +0100)]
staging:iio:adc:ad799x: Use private data space from iio_allocate_device

Use private data space from iio_allocate_device

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad799x: Convert to new channel registration method.
Michael Hennerich [Wed, 18 May 2011 13:41:52 +0000 (14:41 +0100)]
staging:iio:adc:ad799x: Convert to new channel registration method.

Convert to new channel registration method
Update copyright header
Add missing call to iio_trigger_notify_done()

V2: IIO_CHAN macro updates

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7887: Use private data space from iio_allocate_device
Michael Hennerich [Wed, 18 May 2011 13:41:51 +0000 (14:41 +0100)]
staging:iio:adc:ad7887: Use private data space from iio_allocate_device

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7887: Convert to new channel registration method.
Michael Hennerich [Wed, 18 May 2011 13:41:50 +0000 (14:41 +0100)]
staging:iio:adc:ad7887: Convert to new channel registration method.

Convert to new channel registration method
Update / change license copyright header
Add missing call to iio_trigger_notify_done()

V2: use IIO_CHAN macro.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16209 move to chan_spec based setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:49 +0000 (14:41 +0100)]
staging:iio:accel:adis16209 move to chan_spec based setup.

For clean drivers its easier to convert to chan_spec based
registration than to work around the scan_el attributes
going away.

Some minor cleanups done whilst here.

Untested.

V2: IIO_CHAN macro used.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16204 move to chan_spec based setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:48 +0000 (14:41 +0100)]
staging:iio:accel:adis16204 move to chan_spec based setup.

For clean drivers its easier to convert to chan_spec based
registration than to work around the scan_el attributes
going away.

Some minor cleanups done whilst here.

Untested.

V2: used IIO_CHAN macro

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16203 move to chan_spec based setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:47 +0000 (14:41 +0100)]
staging:iio:accel:adis16203 move to chan_spec based setup.

Mainly motivated by wish to remove the remaing users of the
scan helpers.

Some minor cleanups done whilst here.

Untested.

V2: Use IIO_CHAN macro
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16201 move to chan_spec based setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:46 +0000 (14:41 +0100)]
staging:iio:accel:adis16201 move to chan_spec based setup.

Mainly motivated by wish to remove the remaing users of the
scan helpers.

Some minor cleanups done whilst here.

Untested.

V2: IIO_CHAN macro used.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:light:tsl2563: chan_spec based channel setup.
Jonathan Cameron [Wed, 18 May 2011 13:41:45 +0000 (14:41 +0100)]
staging:iio:light:tsl2563: chan_spec based channel setup.

Makes a small interface change by splitting event _en attr
in two.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: use the new central name attribute creation code
Jonathan Cameron [Wed, 18 May 2011 13:41:44 +0000 (14:41 +0100)]
staging:iio: use the new central name attribute creation code

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Add core attribute handling for name of device.
Jonathan Cameron [Wed, 18 May 2011 13:41:43 +0000 (14:41 +0100)]
staging:iio: Add core attribute handling for name of device.

Saves on a fair bit of code replication.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:trigger remove legacy pollfunc elements.
Jonathan Cameron [Wed, 18 May 2011 13:41:42 +0000 (14:41 +0100)]
staging:iio:trigger remove legacy pollfunc elements.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:gyro:adis16260 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:41 +0000 (14:41 +0100)]
staging:iio:gyro:adis16260 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad799x move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:40 +0000 (14:41 +0100)]
staging:iio:adc:ad799x move to irqchip based trigger handling.

Untested. Also cleared out last_timestamp as it isn't used anywhere.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7887 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:39 +0000 (14:41 +0100)]
staging:iio:adc:ad7887 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7606 conversion to irq_chip based polling.
Jonathan Cameron [Wed, 18 May 2011 13:41:38 +0000 (14:41 +0100)]
staging:iio:adc:ad7606 conversion to irq_chip based polling.

I'm far from sure what the best way to handle this particular
part is, so have (I think) done the absolute minimum to change
it to the new interface.

V2: Trivial constification of device name.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Acked-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7298 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:37 +0000 (14:41 +0100)]
staging:iio:adc:ad7298 move to irqchip based trigger handling.

Untested. This one is of a different form, so worth a closer look than
the previous incredibly similar patches (which were based on the
adis16400 that I have tested).

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16240 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:36 +0000 (14:41 +0100)]
staging:iio:accel:adis16240 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16209 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:35 +0000 (14:41 +0100)]
staging:iio:accel:adis16209 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16204 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:34 +0000 (14:41 +0100)]
staging:iio:accel:adis16204 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16203 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:33 +0000 (14:41 +0100)]
staging:iio:accel:adis16203 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:adis16201 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:32 +0000 (14:41 +0100)]
staging:iio:accel:adis16201 move to irqchip based trigger handling.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:imu remove adis16300 driver.
Jonathan Cameron [Wed, 18 May 2011 13:41:31 +0000 (14:41 +0100)]
staging:iio:imu remove adis16300 driver.

Support is now provided by the unified adis16400 driver.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:imu:adis16400 add support for adis16300
Jonathan Cameron [Wed, 18 May 2011 13:41:30 +0000 (14:41 +0100)]
staging:iio:imu:adis16400 add support for adis16300

Next patch will remove original driver.
Note this leaves holes in the scan indexing.

Untested - except via adis16350...

V3: rebase fixup.
V2: move to single IIO_CHAN macro.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:imu remove old adis16350. Support now in adis16400 driver.
Jonathan Cameron [Wed, 18 May 2011 13:41:29 +0000 (14:41 +0100)]
staging:iio:imu remove old adis16350. Support now in adis16400 driver.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:imu:adis16350 etc support into adis16400 driver.
Jonathan Cameron [Wed, 18 May 2011 13:41:28 +0000 (14:41 +0100)]
staging:iio:imu:adis16350 etc support into adis16400 driver.

Next patch will remove the current adis16350 driver.
These should have been merged a long time ago, but there we are.

V3: rebase fixup + add missing extend_name for supply on adis16350

V2: Move to single IIO_CHAN macro + use the new extend_name
to make the naming of the temperature sensors contain x, y, z
rather than messing with modifiers.  This a very weird case
and I don't want temperature to use axial modifiers.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:imu:adis16400 move to irq based triggers and channel spec channel registr...
Jonathan Cameron [Wed, 18 May 2011 13:41:27 +0000 (14:41 +0100)]
staging:iio:imu:adis16400 move to irq based triggers and channel spec channel registration.

V2: rebase fixup.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:meter:ade7758 move to irqchip based trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:26 +0000 (14:41 +0100)]
staging:iio:meter:ade7758 move to irqchip based trigger handling.

Untested

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7476 move to irqchip based triggering
Jonathan Cameron [Wed, 18 May 2011 13:41:25 +0000 (14:41 +0100)]
staging:iio:adc:ad7476 move to irqchip based triggering

Untested

V2: Fixed missing free of pollfunc->name pointed out by
Michael Hennerich.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7476 use channel_spec
Jonathan Cameron [Wed, 18 May 2011 13:41:24 +0000 (14:41 +0100)]
staging:iio:adc:ad7476 use channel_spec

V3: Trivial rebase fixup.
V2: Move to new single IIO_CHAN macro.

Done without hardware.

Fix from Michael Hennerich incorporated to use
iio_ring_buffer_register_ex instead of
iio_ring_buffer_register and thus actually make it work.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:max1363 move to irqchip based threaded irq triggering
Jonathan Cameron [Wed, 18 May 2011 13:41:23 +0000 (14:41 +0100)]
staging:iio:adc:max1363 move to irqchip based threaded irq triggering

V2: Fixed missing free of pollfunc->name as pointed out by
Michael Hennerich.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:lis3l02dq move to threaded trigger handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:22 +0000 (14:41 +0100)]
staging:iio:accel:lis3l02dq move to threaded trigger handling.

V2: Cleaned up handling of name string.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: add generic data ready poll function.
Jonathan Cameron [Wed, 18 May 2011 13:41:21 +0000 (14:41 +0100)]
staging:iio: add generic data ready poll function.

This case is extremely common, so let us only have the one
copy.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:ring_sw add function needed for threaded irq.
Jonathan Cameron [Wed, 18 May 2011 13:41:20 +0000 (14:41 +0100)]
staging:iio:ring_sw add function needed for threaded irq.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:Documentation generic_buffer.c update to new abi for buffers + misc fixes
Jonathan Cameron [Wed, 18 May 2011 13:41:19 +0000 (14:41 +0100)]
staging:iio:Documentation generic_buffer.c update to new abi for buffers + misc fixes

Trivial space before newline fix incorporated.

Additional fixes related to handling of sign extension and shifted
data.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
squash into buffer handling update.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Add infrastructure for irq_chip based triggers
Jonathan Cameron [Wed, 18 May 2011 13:41:18 +0000 (14:41 +0100)]
staging:iio: Add infrastructure for irq_chip based triggers

V3: Get rid of separate interrupt pool. This is well handled
    by irq_get_descs and irq_free_descs.  Two functions I simply
    wasn't aware of previously.  Thus the allocation for a given
    trigger is now handled by core code rather than us reinventing
    the wheel.

V2: Stop silly name duplication.
    Move pool handling to industrialio-trigger as that is the only user.
    Changed over to using irq_modify_status rather than the arm
    specific set_irq_flags as per Thomas Gleixner's suggestion.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:accel:lis3l02dq make threshold interrupt threaded.
Jonathan Cameron [Wed, 18 May 2011 13:41:17 +0000 (14:41 +0100)]
staging:iio:accel:lis3l02dq make threshold interrupt threaded.

We have moved the timestamp acquisition into the bottom half. It may
technically be less accurate but for this device I very much doubt
anyone cares!

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Remove legacy event handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:16 +0000 (14:41 +0100)]
staging:iio: Remove legacy event handling.

This requires all drivers using the channel registration code and
events to change in one go.

V3: remove unwanted irq enable from event handler.
V2: rebase related fixes to move to new IIO_CHAN macro. All trivial.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad799x move to new event handling
Jonathan Cameron [Wed, 18 May 2011 13:41:15 +0000 (14:41 +0100)]
staging:iio:adc:ad799x move to new event handling

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7314 remove unmatched unregister of event line.
Jonathan Cameron [Wed, 18 May 2011 13:41:14 +0000 (14:41 +0100)]
staging:iio:adc:ad7314 remove unmatched unregister of event line.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adt7310 move to current event handling
Jonathan Cameron [Wed, 18 May 2011 13:41:13 +0000 (14:41 +0100)]
staging:iio:adt7310 move to current event handling

Another driver that has two event lines, but pushes all events out
the same chrdev. Probably needs a rethink.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:adt7410 move to current event handling
Jonathan Cameron [Wed, 18 May 2011 13:41:12 +0000 (14:41 +0100)]
staging:iio:adc:adt7410 move to current event handling

This device actually has a pair of interrupts. The code basically ignores
that and feeds them both to the same handlers.  I'm not sure if that is
the right thing to do, but the updated code should do exactly the same.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:ad7291 move from old event system to current.
Jonathan Cameron [Wed, 18 May 2011 13:41:11 +0000 (14:41 +0100)]
staging:iio:ad7291 move from old event system to current.

This driver needed some tender loving care. It still does.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:adt75 old to new event handling conversion
Jonathan Cameron [Wed, 18 May 2011 13:41:10 +0000 (14:41 +0100)]
staging:iio:adc:adt75 old to new event handling conversion

Another one where the events are 'unusual'.  Still left sorting
that out for another day.

Untested changes

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7152 remove unregister of interrupt line.
Jonathan Cameron [Wed, 18 May 2011 13:41:09 +0000 (14:41 +0100)]
staging:iio:adc:ad7152 remove unregister of interrupt line.

a) This interface is going away
b) There is no matching register call so looks like a cut and paste
error

Trivial sparse warning fix.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7150 move from deprecated event handling plus remove irq as gpio...
Jonathan Cameron [Wed, 18 May 2011 13:41:08 +0000 (14:41 +0100)]
staging:iio:adc:ad7150 move from deprecated event handling plus remove irq as gpio requirement.

Another driver with some very 'non standard' magic event codes.
Again I've left it be for now and merely moved it to the new
api.

There is no reason why the irq in this driver ever had to be a gpio.
Scrap that test and clean out unecessary headers.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7816 move from old to current event handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:07 +0000 (14:41 +0100)]
staging:iio:adc:ad7816 move from old to current event handling.

I'm not sure what the event is and am very much against the dodgy
hack to give it a code. However for now, lets just stop it using
the deprecated core handling so we can move on.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adc:ad7745 move from old to current event handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:06 +0000 (14:41 +0100)]
staging:iio:adc:ad7745 move from old to current event handling.

Nice simple one.  Not sure we actually want devices outputting
datardy signals like that, but I'll leave it for now.
Cleaned up some unneeded functions whilst here.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:adt7316 get rid of legacy event handling code.
Jonathan Cameron [Wed, 18 May 2011 13:41:05 +0000 (14:41 +0100)]
staging:iio:adt7316 get rid of legacy event handling code.

Note this driver is still a long way from being abi compliant.
What I have done here cleans up a few corners, but primarily gets
it away from using the infrastructure that is going away.

Untested

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:dac:ad5504 move from old to new event handling.
Jonathan Cameron [Wed, 18 May 2011 13:41:04 +0000 (14:41 +0100)]
staging:iio:dac:ad5504 move from old to new event handling.

Untested, but fairly trivial change here.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:light:tsl2563 remove old style event registration.
Jonathan Cameron [Wed, 18 May 2011 13:41:03 +0000 (14:41 +0100)]
staging:iio:light:tsl2563 remove old style event registration.

Untested.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:buffering remove unused parameter dead_offset from read_last_n in all...
Jonathan Cameron [Wed, 18 May 2011 13:41:02 +0000 (14:41 +0100)]
staging:iio:buffering remove unused parameter dead_offset from read_last_n in all buffer implementations.

This element has been usused by the core for quite some time.  sca3000 set it none the less
until the rewrite in the previous patch (and hence didn't work).

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:sca3000 extract old event handling and move to poll for events from buffer
Jonathan Cameron [Wed, 18 May 2011 13:41:01 +0000 (14:41 +0100)]
staging:iio:sca3000 extract old event handling and move to poll for events from buffer

Fairly substantial rewrite as the code had bitrotted.
A rethink is needed for how to handle variable types in the new chan_spec world.

This patch restores sca3000 buffer usage to a working state.
V3: Rebase fixups.
V2: Move to new version of IIO_CHAN macro

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: lis3l02dq - separate entirely interrupt handling for thesholds from...
Jonathan Cameron [Wed, 18 May 2011 13:41:00 +0000 (14:41 +0100)]
staging:iio: lis3l02dq - separate entirely interrupt handling for thesholds from that for the datardy signal.

This removes the one and only real user of the rather complex event list management.
V3: More trivial rebase fixups.
V2: Trivial rebase fixup.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Push interrupt setup down into the drivers for event lines.
Jonathan Cameron [Wed, 18 May 2011 13:40:59 +0000 (14:40 +0100)]
staging:iio: Push interrupt setup down into the drivers for event lines.

It is much easier to do in driver, and the core does not add much.
Note all drivers will have to be updated with this patch.
None currently are.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:lis3l02dq: General cleanup
Jonathan Cameron [Wed, 18 May 2011 13:40:58 +0000 (14:40 +0100)]
staging:iio:lis3l02dq: General cleanup

As Arnd observed, things are clearner if we pass iio_dev into read and write fucntions.

Now uses st for lis3l02dq_state everywhere.

Other bits of trivial tidying.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Buffer device flattening.
Jonathan Cameron [Wed, 18 May 2011 13:40:57 +0000 (14:40 +0100)]
staging:iio: Buffer device flattening.

Given we now only have one device we don't need the extra layer any more.
Hence this patch removes it.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: remove legacy event chrdev for the buffers
Jonathan Cameron [Wed, 18 May 2011 13:40:56 +0000 (14:40 +0100)]
staging:iio: remove legacy event chrdev for the buffers

part of sca3000 driver temporarily disabled (buffer won't run
anyway).  This section is replaced later in this patch set.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: Add polling of events on the ring access chrdev.
Jonathan Cameron [Wed, 18 May 2011 13:40:55 +0000 (14:40 +0100)]
staging:iio: Add polling of events on the ring access chrdev.

Staging one of combining the ring chrdevs.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: remove ability to escalate events.
Jonathan Cameron [Wed, 18 May 2011 13:40:54 +0000 (14:40 +0100)]
staging:iio: remove ability to escalate events.

Whilst it is possible to output events to say buffers have passed
a particular level there are no obvious reasons to actually do so.

The upshot of this patch is that buffers will only ever have
one threshold turned on at a time.

For now sca3000 has it's ring buffer effectively disabled.
Fixed later in series.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:max1363 - move to channel_spec registration.
Jonathan Cameron [Wed, 18 May 2011 13:40:53 +0000 (14:40 +0100)]
staging:iio:max1363 - move to channel_spec registration.

V3: move to single chan registration macro. Also introduce some
local macros to greatly reduce code length when setting up the
chan_spec arrays for all the different devices.

V2: update read_raw for two value approach.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio:lis3l02dq - move to new channel_spec approach.
Jonathan Cameron [Wed, 18 May 2011 13:40:52 +0000 (14:40 +0100)]
staging:iio:lis3l02dq - move to new channel_spec approach.

V3: Move to single IIO_CHAN macro.
V2: Update to two part read_raw value.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging:iio: allow channels to be set up using a table of iio_channel_spec structures.
Jonathan Cameron [Wed, 18 May 2011 13:40:51 +0000 (14:40 +0100)]
staging:iio: allow channels to be set up using a table of iio_channel_spec structures.

V8: Add missing address in IIO_CHAN macro. Spotted by Michael Hennerich.
V7: Document additions to iio_dev structure.
V6: Fixup the docs for iio_chan_spec structure.
V5: Actually have the macro handle the _input type channels (oops)
V4: Add ability to do, _input and modified channel naming in a coherent fashion.
    Scrap all the messy IIO_CHAN_* macros and move to only one.

V3: Added more types - intensity and light.

V2: Various fixes - some thanks to Arnd.
    Bug fix for unregistering of event attr group
    Changed iio_read_channel_info to have two part value - use for
    raw value read as well.
    constify the channelspec structures
    raw write support for calibbias and similar
    Additional strings for buidling attribute names.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoStaging: initial version of the nvec driver
Marc Dietrich [Thu, 19 May 2011 14:34:42 +0000 (16:34 +0200)]
Staging: initial version of the nvec driver

This is an implementation of a NVidia compliant embedded controller
protocol driver. It is used on some ARM-Tegra boards for device
communication.

Signed-off-by: Marc Dietrich <marvin24@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoStaging: sm7xx: printk loglevels modified to match the scenario
anish kumar [Thu, 19 May 2011 15:29:02 +0000 (20:59 +0530)]
Staging: sm7xx: printk loglevels modified to match the scenario

KERN_ERR should be used in place of KERN_INFO in the case of
error scenarios.

Signed-off-by: anish kumar <anish198519851985@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoStaging: sm7xx: preferred form for passing a size to memory allocation routines
anish kumar [Thu, 19 May 2011 15:28:51 +0000 (20:58 +0530)]
Staging: sm7xx: preferred form for passing a size to memory allocation routines

The preferred form for passing a size of a struct is the following:
p = kmalloc(sizeof(*p), ...);
Please refer Documentation/Codingstyle chapter 14

Signed-off-by: anish kumar <anish198519851985@gmail.com>
Acked-by: Harry Wei <harryxiyou@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoStaging: sm7xx: removing extra white spaces,redundant code and using macros
anish kumar [Thu, 19 May 2011 15:28:42 +0000 (20:58 +0530)]
Staging: sm7xx: removing extra white spaces,redundant code and using macros

This patch is to remove extra spaces,redundant code and using
ARRAY_SIZE macros.

Signed-off-by: anish kumar <anish198519851985@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging: fix mei build when PM is not enabled
Randy Dunlap [Thu, 19 May 2011 15:52:34 +0000 (08:52 -0700)]
staging: fix mei build when PM is not enabled

Fix mei build when CONFIG_PM is not enabled (i.e., fix typo):

drivers/staging/mei/main.c:1159: error: 'MEI_PM_OPS' undeclared here (not in a function)

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging: usbip: userspace: bind-driver.c: mark remote_host as unused
matt mooney [Thu, 19 May 2011 04:46:13 +0000 (21:46 -0700)]
staging: usbip: userspace: bind-driver.c: mark remote_host as unused

Use __attribute__((unused)) to suppress error until it can be determined
that remote_host is not needed.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging: usbip: userspace: stub_driver.c: update kernel module name
matt mooney [Thu, 19 May 2011 08:37:31 +0000 (01:37 -0700)]
staging: usbip: userspace: stub_driver.c: update kernel module name

Change kernel module name to usbip-host.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agocomedi vmk80xx: support comedi auto-configuration
J. Ali Harlow [Wed, 18 May 2011 18:18:56 +0000 (19:18 +0100)]
comedi vmk80xx: support comedi auto-configuration

Add support for automatically associating a vmk8055 device with a
comedi device (previously the user had to use comedi_num_legacy_minors
to reserve device slots and then associate them with vmk8055 devices
using comedi_config).
Tested on multiple K8055s, but not on K8061s.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agocomedi vmk80xx: support bits instruction
J. Ali Harlow [Wed, 18 May 2011 18:18:55 +0000 (19:18 +0100)]
comedi vmk80xx: support bits instruction

Calling comedi_dio_bifield2() returns EBUSY permanently. Implementing
the insn_bits call fixes the problem and is good in its own right since
one can then read and write to all the digitial lines at the same time.
Tested on a K8055, but not on a K8061.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agocomedi vmk80xx: extend rudimentary_check to check both directions
J. Ali Harlow [Wed, 18 May 2011 18:18:54 +0000 (19:18 +0100)]
comedi vmk80xx: extend rudimentary_check to check both directions

rudimentary_check() can currently check whether the input or
output direction is currently available (no pending transaction),
but not both at the same time. We need this facility for do_bits().

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agocomedi vmk80xx: simplify rinsn output calculation
J. Ali Harlow [Wed, 18 May 2011 18:18:53 +0000 (19:18 +0100)]
comedi vmk80xx: simplify rinsn output calculation

vmk80xx_di_rinsn() and vmk80xx_do_rinsn() extract the required channel
data by inconsistent and overly-complex algorithms. Simplify them both.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agocomedi vmk80xx: Digitial I/O should have a maxdata of 1
J. Ali Harlow [Wed, 18 May 2011 18:18:52 +0000 (19:18 +0100)]
comedi vmk80xx: Digitial I/O should have a maxdata of 1

Digitial input and output sub-devices were reporting a maxdata of
0x1F and 0xFF respectively. They should both be 1.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agocomedi vmk80xx: make rudimentary_check a static function
J. Ali Harlow [Wed, 18 May 2011 18:18:51 +0000 (19:18 +0100)]
comedi vmk80xx: make rudimentary_check a static function

rudimentary_check is a macro with side-effects (it returns
on error) which is contary to CodingStyle. Replace it with
a static function.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agodrivers/staging/cptm1217/clearpad_tm1217.c: Correct call to input_free_device
Julia Lawall [Wed, 18 May 2011 19:20:43 +0000 (21:20 +0200)]
drivers/staging/cptm1217/clearpad_tm1217.c: Correct call to input_free_device

This code is in a loop that currently is only executed once.  Because of
this property, the first block of code is currently actually correct.
Nevertheless, the comments associated with the code suggest that the loop
is planned to take more than one iteration in the future, and thus this
patch is made with that case in mind.

In the first block of code, there is currently an immediate abort from the
function.  It is changed to jump to the error handling code at fail, to be
able to unregister and free the resources allocated on previous iterations.

In the second block of code, the input_dev for the current iteration has
been allocated, but has not been registered.  It has also not been stored
in ts->cp_input_info[i].input.  Thus on jumping to fail, it will not be
freed.  In this case, we want to free, but not unregister, so the free for
this most recently allocated resource is put before the jump.

A simplified version of the semantic match that finds this problem is:
(http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
local idexpression struct input_dev * x;
expression ra,rr;
position p1,p2;
@@

x = input_allocate_device@p1(...)
...  when != x = rr
     when != input_free_device(x,...)
     when != if (...) { ... input_free_device(x,...) ...}
if(...) { ... when != x = ra
     when forall
     when != input_free_device(x,...)
 \(return <+...x...+>; \| return@p2...; \) }

@script:python@
p1 << r.p1;
p2 << r.p2;
@@

cocci.print_main("input_allocate_device",p1)
cocci.print_secs("input_free_device",p2)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging/easycap: easycap_probe: drop more unused variables
Tomas Winkler [Wed, 18 May 2011 19:29:30 +0000 (22:29 +0300)]
staging/easycap: easycap_probe: drop more unused variables

wMaxPacketSize are  bEndpointAddress assigned but not used

Cc: Mike Thomas <rmthomas@sciolus.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging/easycap: probe: simplify the endpoints tests
Tomas Winkler [Wed, 18 May 2011 19:29:29 +0000 (22:29 +0300)]
staging/easycap: probe: simplify the endpoints tests

we are interested only in isochronous in endpoints
so we can simplify the flow

Cc: Mike Thomas <rmthomas@sciolus.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agostaging/easycap: easycap_probe: drop verbose printouts
Tomas Winkler [Wed, 18 May 2011 19:29:28 +0000 (22:29 +0300)]
staging/easycap: easycap_probe: drop verbose printouts

reduce printouts of not necessary information

Cc: Mike Thomas <rmthomas@sciolus.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>