Commit Graph

311962 Commits

Author SHA1 Message Date
Peter Meerwald
bbdb822c4c iio: add adjd_s311 I2C digital color sensor driver
sensor has 4 channels (10-bit each, R/G/B and clear), sensitivity
and gain is controlled in the driver by ext_info integration_time
and CHAN_INFO_HARDWAREGAIN

driver supports triggered buffer and IIO_CHAN_INFO_RAW to get the
sensor data

v5: address comments by Jonathan Cameron
* use macro for channel declaration
* get timestamp right before measurement
* cleanups

v4: address comments by Lars-Peter Clausen
* make sure trigger handler is exited with iio_trigger_notify_done()
  and IRQ_HANDLED
* kfree()/kalloc() -> krealloc()

v3:
* fix warnings

v2: address comments by Lars-Peter Clausen
* buffer allocation now in update_scan_mode instead of in trigger
  handler
* simplify trigger code (assume active_scan_mask is not empty, use
  for_each_set_bit, use iio_push_to_buffer)
* reorder entry in Makefile and Kconfig
* fix remove

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-12 17:45:34 +01:00
Jonathan Cameron
d05b2fe037 iio: Trivial documentation fix to correct kernel version info in
21cd1fab05

Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Reported-by: Peter Meerwald <pmeerw@pmeerw.net>
2012-07-10 20:30:55 +01:00
Jon Brenner
21cd1fab05 IIO channel type and modifiers for CCT and RGBC data
Add iio channel type and modifiers for Correlated Color Temperature (CCT)
and RGBC (red/green/blue/clear) data.
Add CCT and RGBC descriptions to documentation.

Changes:
Revised/condensed RGBC descriptions.

Merge and trivial fix done by Jonathan Cameron.

Signed-off-by: Jon Brenner <jbrenner@taosinc.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-10 18:49:26 +01:00
Lars-Peter Clausen
ee0312a05d staging:iio:ade7758: Use iio_validate_scan_mask_onehot
Only one of the channels of the ade7758 may be sampled at a time. Use the new
validate_scan_mask callback and the iio_validate_scan_mask_onehot function to
implement this restriction. Previously this was implemented using
available_scan_masks, but this requires a individual scan mask for each channel.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-09 18:18:16 +01:00
Lars-Peter Clausen
8c2c6ba6aa staging:iio:ad7793: Use iio_validate_scan_mask_onehot
Only one of the channels of the ad7793 may be sampled at a time. Use the new
validate_scan_mask callback and the iio_validate_scan_mask_onehot function to
implement this restriction. Previously this was implemented using
available_scan_masks, but this requires a individual scan mask for each channel.

Also the previous code was adding the scan index of the timestamp channel to
each available scan mask, this is not required though since the timestamp
channel is not restricted by the available scan masks and can be enabled or
disabled independently. So the new code does not have to take care of this.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-09 18:18:15 +01:00
Lars-Peter Clausen
f6aea55430 staging:iio:ad7192: Use iio_validate_scan_mask_onehot
Only one of the channels of the ad7192 may be sampled at a time. Use the new
validate_scan_mask callback and the iio_validate_scan_mask_onehot function to
implement this restriction. Previously this was implemented using
available_scan_masks, but this requires a individual scan mask for each channel.

Also the previous code was adding the scan index of the timestamp channel to
each available scan mask, this is not required though since the timestamp
channel is not restricted by the available scan masks and can be enabled or
disabled independently. So the new code does not have to take care of this.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-09 18:18:15 +01:00
Lars-Peter Clausen
8163663205 iio: Introduce iio_validate_scan_mask_onehot
Add a helper function for validating a scan mask for devices where exactly one
channel must be selected during sampling. This is a common case among devices
which have scan mask restrictions so it makes sense to provide this function in
the core.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-09 18:18:15 +01:00
Lars-Peter Clausen
939546d1a9 iio: Add callback to check whether a scan mask is valid
This is useful for cases where the number of valid scan masks grows
exponentially, but it is rather easy to check whether a mask is valid or not
programmatically.

An example of such a case is a device with multiple ADCs where each ADC has a
upstream MUX, which allows to select from a number of physical channels.

  +-------+   +-------+
  |       |   |       | --- Channel 1
  | ADC 1 |---| MUX 1 | ---   ...
  |       |   |       | --- Channel M
  +-------+   +-------+

     .            .            .
     .            .            .
     .            .            .

  +-------+   +-------+
  |       |   |       | --- Channel M * N + 1
  | ADC N |---| MUX N | ---       ...
  |       |   |       | --- Channel M * N + M
  +-------+   +-------+

The number of necessary scan masks for this case is (M+1)**N - 1, on the other
hand it is easy to check whether subsets for each ADC of the scanmask have only
one bit set.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-09 18:18:15 +01:00
Sascha Hauer
c732a24c5a staging:iio:adt7410: use local platformdata if none is specified
The adt7410 expects information about an irq in platform_data.
The driver can work without an irq, so make platform_data optional
by specifying a dummy platform_data if the device has none.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-08 10:39:59 +01:00
Sascha Hauer
d297b9bdad staging iio adt7410: make 16bit mode default
In 13bit mode the lower three bits of the adc value contain
flags. The driver does not use these flags at all, so make 16bit
mode the default.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-08 10:39:59 +01:00
Lars-Peter Clausen
6d459aa011 iio:trigger: Register sysfs file statically
The name sysfs attribute is the same for all triggers, so there is no need to
register them dynamically at runtime. Create a attribute group for it and set it
up for the bus attribute group. This also avoids a possible race condition
where the uevent for the device is sent before the name sysfs attribute has been
added.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-08 10:39:58 +01:00
Peter Meerwald
cf09fe9c87 iio: kernel version typo in sysfs-bus-iio
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-08 10:39:58 +01:00
Peter Meerwald
da4db94080 iio staging: add recently added modifiers to iio_event_monitor
maybe iio_modifier_names and iio_chan_type_name_spec should be
exported from industrialio-core instead?

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-08 10:39:57 +01:00
Peter Meerwald
034bd7b5d9 iio: fix spelling of detach in static func
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-07 16:52:22 +01:00
Peter Meerwald
3bdff93782 iio: cleanup buffer.h comments
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-07 16:52:19 +01:00
Peter Meerwald
c866ffc725 iio staging: missing newline in printf
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2012-07-07 16:52:02 +01:00
Andy Shevchenko
0932966b1c staging: ccg: print MAC addresses via %pM
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:24:00 -07:00
Andy Shevchenko
e7ecb0fb40 staging: gdm72xx: use %pM for MAC
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Ben Chan <benchan@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:24:00 -07:00
Andy Shevchenko
075fb4b724 staging: vt6655: use %pM for BSSID
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Forest Bond <forest@alittletooquiet.net>
Cc: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:24:00 -07:00
Andy Shevchenko
d3cc13a24b staging: vt6656: use %pM for the BSSID
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:24:00 -07:00
Andy Shevchenko
a6737c738c staging: csr: print MAC addresses via %pM
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Lauri Hintsala <lauri.hintsala@bluegiga.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:23:59 -07:00
Andy Shevchenko
2c27d008c8 staging: bcm: use %pM to print MAC addresses
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Kevin McKinney <klmckinney1@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:23:59 -07:00
Dan Carpenter
a7f3943cd0 Staging: vme: silence a Sparse warning
Sparse complains that "arg" is not a __user pointer.  The "argp" and
"arg" variables are equivalent but argp is declared as a __user pointer.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-By: Martyn Welch <martyn.welch@ge.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:23:59 -07:00
David Murray
e97e6c4f9a Drivers: Staging: ccg: Made checkpatch.pl clean
Fixed a tiny checkpatch.pl warning.

Signed-off-by: David Murray <therealcykey@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:21:55 -07:00
Samuel Iglesias Gonsálvez
7183f337fe Staging: ipack/devices/ipoctal: save IRQ vector in MEM space
The IRQ vector should be saved in MEM space base address according to the
datasheet.

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:21:54 -07:00
Marcos Paulo de Souza
24b46f9e4b staging: vt6656: main_usb.c: Remove useless macros
All these macros are not used. So, remove this all.

Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:21:54 -07:00
Justin P. Mattock
599e6b2e90 staging "telephony" Fix typos.
Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:21:54 -07:00
Devendra Naga
aab0489239 staging/ft1000: fix minor coding style problem
this following warn is fixed up

drivers/staging/ft1000/ft1000-usb/ft1000_hw.c:1754:
ERROR: open brace '{' following function declarations go on the next line

Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:21:54 -07:00
Omar Ramirez Luna
ec4c667523 staging: tidspbridge: dynamically allocate my_sym_buf in dload_symbols
Dynamically allocate my_sym_buf to silence the following warning:

drivers/staging/tidspbridge/dynload/cload.c:
    In function 'dload_symbols':
drivers/staging/tidspbridge/dynload/cload.c:890:
    warning: the frame size of 1040 bytes is larger than 1024 bytes

Signed-off-by: Omar Ramirez Luna <omar.ramirez@copitl.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:17:01 -07:00
Omar Ramirez Luna
a2fa68fd76 staging: tidspbridge: dynamically allocate ibuf in dload_data
Dynamically allocate ibuf to silence the following warning:

drivers/staging/tidspbridge/dynload/cload.c:
    In function 'dload_data':
drivers/staging/tidspbridge/dynload/cload.c:1337:
    warning: the frame size of 1216 bytes is larger than 1024 bytes

Signed-off-by: Omar Ramirez Luna <omar.ramirez@copitl.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:17:01 -07:00
Omar Ramirez Luna
e8cfe4116d staging: tidspbridge: split bridge_io_on_loaded
Due to its size, this function declares too many variables,
to split it a new structure has been declared to hold values
as they are read from the baseimage.

While at it, indentation was reduced by renaming variables
and reducing blocks of code with the following structure:

if (success) {
    ...
    if (success)
        ...
}

This fixes the following warning:
drivers/staging/tidspbridge/core/io_sm.c:
	In function 'bridge_io_on_loaded':
drivers/staging/tidspbridge/core/io_sm.c:777:
	warning: the frame size of 1032 bytes is larger
	than 1024 bytes

Signed-off-by: Omar Ramirez Luna <omar.ramirez@copitl.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:17:01 -07:00
Omar Ramirez Luna
a454ad15e0 staging: tidspbridge: add pud code
And fix the following warning for passing an incorrect
variable type.

../tiomap3430.c: In function 'user_va2_pa':
../tiomap3430.c:1555:
    warning: passing argument 1 of 'pmd_offset' from
    incompatible pointer type
arch/arm/include/asm/pgtable-2level.h:156:
    note: expected 'struct pud_t *' but argument is of
    type 'pmdval_t (*)[2]'

While at it, eliminate 'if' nesting to increase readability.

Signed-off-by: Omar Ramirez Luna <omar.ramirez@copitl.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:17:01 -07:00
Marcos Paulo de Souza
0e7e10fe49 staging: sep: sep_crypto.c: Remove useless functions sep_dump and sep_dump_sg
These two functions only has commented code, so remove it.

Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:14:21 -07:00
Marcos Paulo de Souza
68cacda10d staging: sep: sep_crypto.c: Remove useless function crypto_sep_dump_message
The function crypto_sep_dump_message don't have any use in this driver. So remove it.

Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:14:20 -07:00
Johannes Thumshirn
06501787d8 staging: line6: Changed strict_strtoul() to kstrtou8() in pod_set_midi_postprocess()
Changed a call to strict_strtoul() into kstrtou8() in
pod_set_midi_postprocess().

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:46 -07:00
Johannes Thumshirn
a4fb7d5386 staging: line6: Changed strict_strtoul() to kstrtou8() in pod_set_channel()
Changed strict_strtoul() to kstrtou() in pod_set_channel() to take changes in
pod_send_channel() into account.

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:46 -07:00
Johannes Thumshirn
1d0e834d62 staging: line6: Exchanged strict_strtoul with kstrtou8() in pod.c:pod_resolve()
Exchanged call to strict_strtoul() with kstrtou8() in pod_resolve().

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:46 -07:00
Johannes Thumshirn
336cab9afa staging: line6: control.c eliminate strict_strtoul() in pod_set_param_int()
Exchange strict_strtoul() with kstrtou8() and make "value" a u8 instead of a
unsigned long. This is also needed for the changed
line6_pod_transmit_parameter().

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:45 -07:00
Johannes Thumshirn
8d6b7f7c9b staging: line6: changed interface of pod_send_channel()
Adjusted interface of pod_send_channel() in order to take changes of
line6_send_program() into account.

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:45 -07:00
Johannes Thumshirn
317e188b2d staging: line6: adjusted interface of line6_send_program()
Adjusted interface of line6_send_program() to clarify internal working

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:45 -07:00
Johannes Thumshirn
5b9bd2ad51 staging: line6: changed interface of line6_pod_transmit_parameter()
Adjusted interface of line6_pod_transmit_parameter() to take changes of
line6_transmit_parameter() into account

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:45 -07:00
Johannes Thumshirn
1383ec4dad staging: line6: Changed some strict_strtouls to kstrtou8
Adjusted strict_strtoul calls to kstrtou8 in order to take the changes of
line6_transmit_parameter() into account.

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:44 -07:00
Johannes Thumshirn
2471c09339 staging: line6: changed interface of line6_transmit_parameter()
Interface of line6_transmit_parameter() adjusted to clarify internal workings

Signed-off-by: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:12:44 -07:00
Rob Clark
5083677060 staging: drm/omap: update TODO
Update TODO file, which had been neglected.

Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:11:44 -07:00
Jesper Juhl
ce3eaedfc0 staging: vt6656: int.c: correct indentation to use tabs rather than spaces
Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:10:55 -07:00
Jesper Juhl
7b4cabb658 staging: vt6656: int.c: We don't use spaces between a cast and the variable being converted
Remove spaces between casts and variables from
drivers/staging/vt6656/int.c .

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:10:54 -07:00
Jesper Juhl
0d12698671 staging: vt6656: int.c: Use one space between variable type and name
The style of most kernel code is that there is 1 *space* between the
type of a variable and its name. This patch enforces that in
drivers/staging/vt6656/int.c .

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:10:54 -07:00
Jesper Juhl
92fa8971f3 staging: vt6656: int.c: Remove unneeded cast
When assigning a void* to a variable <of some other type>, the value
is cast implicitly - there's no need for explicit cast.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:10:54 -07:00
Jesper Juhl
ea15b7b219 staging: vt6656: int.c: Put comment about DEBUG print define on same line as code
A small comment at the end of the line, mentioning the debug level, is
enough - no need to repeat the entire line of code just for that.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:10:54 -07:00
Jesper Juhl
c6058cb3c7 staging: vt6656: int.h: Fix indentation and spacing
We use tabs for indentation and once space between variable types and
variable name.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-06 16:10:53 -07:00