openwrt/staging/blogic.git
10 years agoiio:bma180: Introduce part-specific _config() and disable() code
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Introduce part-specific _config() and disable() code

move part of bma180_init() to bma180_config() (split initialization and
configuration code); configuration is heavily chip-specific

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Introduce part_info to differentiate further chip variants
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Introduce part_info to differentiate further chip variants

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Drop _update_scan_mode()
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Drop _update_scan_mode()

statically allocate maximum size

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Expose temperature channel
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Expose temperature channel

8-bit signed; 0 LSB @ 24 °C, 0.5 °C per LSB

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Use bool instead of int for state
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Use bool instead of int for state

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Rename BMA_180 to BMA180_
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Rename BMA_180 to BMA180_

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Prefix remaining tables and functions with bma18_
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Prefix remaining tables and functions with bma18_

and minor cleanups

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:bma180: Enable use of device without IRQ
Peter Meerwald [Tue, 19 Aug 2014 22:43:00 +0000 (23:43 +0100)]
iio:bma180: Enable use of device without IRQ

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Oleksandr Kravchenko <o.v.kravchenko@globallogic.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: gyro: bmi055 gyro sensor driver
Irina Tirdea [Sun, 9 Feb 2014 11:59:00 +0000 (11:59 +0000)]
iio: gyro: bmi055 gyro sensor driver

Add support for the BMI055 gyroscope sensor. BMI055 is a package
consisting of an acceleration sensor and a gyroscope. This patch
adds support for the gyroscope only.

Spec downloaded from:
http://ae-bst.resource.bosch.com/media/products/dokumente/bmi055/BST-BMI055-DS000-06.pdf

The BMI055 gyroscope uses the same register definition as BMG160,
but does not specify a temp register. However, the temp register
seems to be working in the same way as for BMG160, so this patch
does not remove the temp channel for BMI055.

Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: kxcjk-1013: Fix defined but unused warning
Daniel Baluta [Sun, 9 Mar 2014 16:13:00 +0000 (16:13 +0000)]
iio: accel: kxcjk-1013: Fix defined but unused warning

Noticed when compiling with CONFIG_PM_RUNTIME not set:
kxcjk-1013.c: warning: ‘kxcjk1013_get_startup_times’ defined but not used [-Wunused-function]

Introduced by commit 124e1b1d (iio: accel: kxcjk-1013: support runtime pm).

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: magn: ak8975: fix unnecessary casting between char* and const char*
Irina Tirdea [Sat, 9 Aug 2014 14:18:00 +0000 (15:18 +0100)]
iio: magn: ak8975: fix unnecessary casting between char* and const char*

Use const char* instead of casting const char* to char*.

Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: gyro: bmg160: only set power state if PM_RUNTIME is defined
Irina Tirdea [Sat, 9 Aug 2014 14:05:00 +0000 (15:05 +0100)]
iio: gyro: bmg160: only set power state if PM_RUNTIME is defined

When CONFIG_PM_RUNTIME is not defined and bmg160 tries to power
off the device, bmg160_set_power_state will call pm_runtime_put_autosuspend,
which is not implemented (wil return -ENOSYS).

Only call bmg160_set_power_state when CONFIG_PM_RUNTIME is defined.

Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: kxcjk-1013: add support for kxtj2-1009
Daniel Baluta [Sun, 9 Mar 2014 08:33:00 +0000 (08:33 +0000)]
iio: accel: kxcjk-1013: add support for kxtj2-1009

This patch adds support for KXTJ2-1009 3-axis acceleromenter sensor.
KXTJ2-1009 uses the same register definitions as KXCJK-1013.

The specification for KXTJ2-1009 can be downloaded from:
http://www.kionix.com/sites/default/files/KXTJ2-1009%20Specifications%20Rev%204.pdf

Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: BMC150: add support for other Bosch chips
Laurentiu Palcu [Sun, 9 Feb 2014 10:30:00 +0000 (10:30 +0000)]
iio: accel: BMC150: add support for other Bosch chips

The following chips are either similar or have only the resolution
different. Hence, change this driver to support these chips too:

BMI055  - combo chip (accelerometer part is identical to BMC150's)
BMA255  - identical to BMC150's accelerometer
BMA222E - 8 bit resolution
BMA250E - 10 bit resolution
BMA280  - 14 bit resolution

Additionally:
 * add bmc150_accel_match_acpi_device() function to check that the device
   has been enumerated through ACPI;
 * rename bmc150_accel_acpi_gpio_probe() to bmc150_accel_gpio_probe()
   since the ACPI matching has been moved to the new function.  Also, this
   will allow for the GPIO matching to be done against a device tree too, not only
   ACPI tree;
 * rename bmc150_scale_info struct member 'range' to 'reg_range' to be
   consistent with the naming convention used elsewhere in the driver
   and declare it u8, instead of int;
 * change CONFIG description to list all supported chips;

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging: iio: light: isl29018: add ACPI support
Laurentiu Palcu [Thu, 9 Jan 2014 10:20:00 +0000 (10:20 +0000)]
staging: iio: light: isl29018: add ACPI support

Add support for enumerating the device through ACPI.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: Add Dyna-Image AL3320A ambient light sensor driver
Daniel Baluta [Thu, 9 Oct 2014 06:57:00 +0000 (07:57 +0100)]
iio: Add Dyna-Image AL3320A ambient light sensor driver

Minimal implementation. This driver provides raw illuminance readings.

This is based on drivers/hwmon/al3320.c (*) driver from msm tree written
by Tsechih Lin <Tsechih_Lin@asus.com>

* https://android.googlesource.com/kernel/msm.git

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging: ad7606_core: Fix checkpatch warning
Sören Brinkmann [Sun, 31 Aug 2014 06:57:00 +0000 (07:57 +0100)]
staging: ad7606_core: Fix checkpatch warning

Fix the checkpatch complaint regarding unnecessary line continuation.
  WARNING: Avoid unnecessary line continuations
  #143: FILE: ad7606_core.c:143:

Signed-off-by: Sören Brinkmann <soeren.brinkmann@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: kxcjk-1013: add support for kxcj9-1008
Daniel Baluta [Tue, 19 Aug 2014 15:25:00 +0000 (16:25 +0100)]
iio: accel: kxcjk-1013: add support for kxcj9-1008

This patch adds support for KXCJ9-1008 3-axis acceleromenter sensor.
KXCJ9-1008 uses the same register definitions as KXCJK-1013.

The specification for KXCJ9-1008 can be downloaded from:
http://www.kionix.com/sites/default/files/KXCJ9-1008%20Specifications%20Rev%205.pdf

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agodt-bindings: document Rockchip saradc
Heiko Stübner [Wed, 23 Jul 2014 21:24:00 +0000 (22:24 +0100)]
dt-bindings: document Rockchip saradc

This add the necessary binding documentation for the saradc found in all recent
processors from Rockchip.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: BMC150: fix issues when CONFIG_PM_RUNTIME is not set
Laurentiu Palcu [Fri, 29 Aug 2014 08:38:00 +0000 (09:38 +0100)]
iio: accel: BMC150: fix issues when CONFIG_PM_RUNTIME is not set

When CONFIG_PM_RUNTIME is not set, the following issues are seen:
 * warning message at compilation time:
    warning: 'bmc150_accel_get_startup_times' defined but not used [-Wunused-function]
 * bmc150_accel_set_power_state() will always fail and reading the
   accelerometer data is impossible;
   This occurs because of the call to pm_runtime_put_autosuspend calls
   __pm_runtime_suspend which returns -ENOSYS.

This commit fixes these.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: BMC150: fix scale value for 16G
Laurentiu Palcu [Fri, 29 Aug 2014 08:38:00 +0000 (09:38 +0100)]
iio: accel: BMC150: fix scale value for 16G

According to documentation ([1] - page 27), the range for 16G is
7.81mg/LSB. Converted to SI, this is:
    7.81 * 10^-3 * 9.80665 m/s^2 / LSB = 0.0765899365 m/s^2 / LSB

[1] http://ae-bst.resource.bosch.com/media/products/dokumente/bmc150/BST-BMC150-DS000-04.pdf

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging: iio: light: isl29018: add support for isl29023 and isl29035
Laurentiu Palcu [Fri, 29 Aug 2014 14:26:00 +0000 (15:26 +0100)]
staging: iio: light: isl29018: add support for isl29023 and isl29035

Intersil chips ISL29018, ISL29023 and ISL29035 are very similar. They're
all ambience light sensors. The ISL29018, however, is also a proximity
sensor. The registers are similar too:

-------------+----------+----------
AVAILABLE IN | ADDR REG | NAME
   290xx     |          |
-------------+----------+----------
     18/23/35|       00h| COMMANDI
     18/23/35|       01h| COMMANDII (B4-7 are used only in 29018 for proximity)
     18/23/35|       02h| DATALSB
     18/23/35|       03h| DATAMSB
     18/23/35|       04h| INT_LT_LSB
     18/23/35|       05h| INT_LT_MSB
     18/23/35|       06h| INT_HT_LSB
     18/23/35|       07h| INT_HT_MSB
        18/23|       08h| TEST
           35|       0Fh| ID
-------------+----------+-----------

So, this patch will add support for ISL29023 and ISL29035 to the
existing isl29018 driver. Since these 2 chips don't have proximity
detection, the proximity sysfs attribute is not needed.

Also, for ISL29035, since it has an ID register, make use of it in order
to properly detect the chip and clear the brownout bit.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging: iio: light: isl29018: fix typo
Laurentiu Palcu [Fri, 29 Aug 2014 14:26:00 +0000 (15:26 +0100)]
staging: iio: light: isl29018: fix typo

isl29108 was used, instead of isl29018.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: sensors-core: st: Check st_sensors_set_drdy_int_pin()'s return value
Lee Jones [Thu, 28 Aug 2014 13:14:00 +0000 (14:14 +0100)]
iio: sensors-core: st: Check st_sensors_set_drdy_int_pin()'s return value

Value from st_sensors_set_drdy_int_pin() is assigned to err here,
but that stored value is not used before it is overwritten.  To fix
this we're enforcing a check on st_sensors_set_drdy_int_pin()'s
return value and if it's an error, we're returning right away.

Cc: jic23@kernel.org
Cc: linux-iio@vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: adc: at91: make the function handle_adc_eoc_trigger() static
Josh Wu [Wed, 27 Aug 2014 08:31:00 +0000 (09:31 +0100)]
iio: adc: at91: make the function handle_adc_eoc_trigger() static

The handle_adc_eoc_trigger() in only used in at91_adc.c. So make it
static.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: adc: rockchip_saradc: remove unused variable in probe
Heiko Stübner [Tue, 26 Aug 2014 22:40:00 +0000 (23:40 +0100)]
iio: adc: rockchip_saradc: remove unused variable in probe

The rate variable in the probe function of the saradc is a remnant
of a previous patch iteration. It is unused and thus produces a
compile time warning. Therefore remove it.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: imu: inv_mpu6050: Remove casting the return value which is a void pointer
Jingoo Han [Fri, 29 Aug 2014 03:56:00 +0000 (04:56 +0100)]
iio: imu: inv_mpu6050: Remove casting the return value which is a void pointer

Casting the return value which is a void pointer is redundant.
The conversion from void pointer to any other pointer type is
guaranteed by the C programming language.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: remove .owner field for driver using module_platform_driver
Sanjeev Sharma [Wed, 20 Aug 2014 09:32:00 +0000 (10:32 +0100)]
iio: remove .owner field for driver using module_platform_driver

This patch removes the .owner field for drivers which use the
platform_driver_register api because this is overriden in
_platform_driver_register.

Signed-off-by: Sanjeev Sharma <Sanjeev_Sharma@mentor.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio: accel: kxcjk-1013: Support thresholds
Srinivas Pandruvada [Fri, 22 Aug 2014 19:01:00 +0000 (20:01 +0100)]
iio: accel: kxcjk-1013: Support thresholds

This chip has a motion detect capability. Using IIO events to
specify thresholds and pushing events.
In addition a new trigger of type any-motion is added, which
pushes data to buffer only when there is any movement.

Change list:
Comments addressed for
Re: [PATCH 5/6] iio: accel: kxcjk-1013: Support thresholds
Date: 07/20/2014

- Both motion detect and data ready can be enabled together
- Sending RISING/FALLING events based on int status
- Separate interrupt configuration for data ready and motion detect

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoio: accel: kxcjk1013: Remove redundant assignment
Daniel Baluta [Fri, 22 Aug 2014 07:35:00 +0000 (08:35 +0100)]
io: accel: kxcjk1013: Remove redundant assignment

data->range is already set by kxcjk1013_set_range.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:gyro:bmg160 documentation
Srinivas Pandruvada [Thu, 8 May 2014 21:57:00 +0000 (22:57 +0100)]
iio:gyro:bmg160 documentation

Added any-motion trigger documentation.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoiio:gyro:bmg160 Gyro Sensor driver
Srinivas Pandruvada [Thu, 8 May 2014 21:57:00 +0000 (22:57 +0100)]
iio:gyro:bmg160 Gyro Sensor driver

This change implements support for BMG160 Gyro sensor. Although chip
has several advanced features, this change implements minimum set
required for using gyro sensor.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging: unisys: fix indentation of uisutil_copy_fragsinfo_from_skb()
Benjamin Romer [Mon, 18 Aug 2014 13:29:47 +0000 (09:29 -0400)]
staging: unisys: fix indentation of uisutil_copy_fragsinfo_from_skb()

The function uisutil_copy_fragsinfo_from_skb() in uisutils.c is messy and
over-indented. This patch fixes the function's indentation so it is cleaner.

Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: unisys: fix spacing in uisthread.c
Benjamin Romer [Mon, 18 Aug 2014 13:29:46 +0000 (09:29 -0400)]
staging: unisys: fix spacing in uisthread.c

Fix the missing blank line between code and declarations in uisthread.c.

Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: unisys: remove void return from uislib_mod_exit()
Benjamin Romer [Mon, 18 Aug 2014 13:29:45 +0000 (09:29 -0400)]
staging: unisys: remove void return from uislib_mod_exit()

Remove the extraneous return from the uislib module exit function.

Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: unisys: simplify destroy_bus() in uislib.c
Benjamin Romer [Mon, 18 Aug 2014 13:29:44 +0000 (09:29 -0400)]
staging: unisys: simplify destroy_bus() in uislib.c

The destroy_bus() function is heavily indented and many lines extend past the
right margin. This patch simplifies the function without changing its effects.

Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: unisys: fix spacing in uislib.c
Benjamin Romer [Mon, 18 Aug 2014 13:29:43 +0000 (09:29 -0400)]
staging: unisys: fix spacing in uislib.c

Fix the line spacing between code and local variables in uislib.c.

Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agoMerge tag 'iio-for-3.18a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23...
Greg Kroah-Hartman [Mon, 25 Aug 2014 18:09:35 +0000 (11:09 -0700)]
Merge tag 'iio-for-3.18a' of git://git./linux/kernel/git/jic23/iio into work-next

Jonathan writes:

1st round of new IIO drivers, functionality and cleanups for the 3.18 cycle.

Maintainer Updates

* Add 3 designated reviewers for IIO.  Lars, Peter and Hartmut have been
  actively reviewing a lot of patches for a while now so this reflects
  the status quo.  These three are probably the only reason I keep
  my head above the water!

New drivers and device support

* max5821 DAC
* Rockchip SARADC
* TI ADC128S052 ADC
* BMC150 Accelerometer
* exynos ADC driver gains support for s3c24xx and s3c64xx parts.
* kxcjk-1013 gainst range control and runtime PM support to drive
  down it's power usage.

Driver removals

* Drop ad5930, ad99850, ad9852, ad9910 and ad9951 drivers on the simple
  basis that they drivers just provided a register write function with
  no compliant user space ABI whatsoever.  Much better to drop them and
  start again for these in the fullness of time.

Core Enhancements

* Join together neighbouring elements in the demux units that feeds
  the binary interfaces.  This cuts down on the number of individual
  copies needed  when splitting out individual channels from the incoming
  channel scans.
* Other demux related cleanups such as using roundup instead of a local
  implementation.

Cleanups

* Drop an unnecessary double setting of the owner field in xilinx adc.
* Some more patches to use managed (devm) interfaces to cut down on
  complexity of removal code.
* adis16060 coding style fixlets.
* Fix some incorrect error returns in the Xilinx ADC driver.
* Coding style fixlets for various accelerometer drivers.
* Some sparse warning fixes to do with endianness and sign of variables.
* Fix an incorrect and entirely pointless use of sizeof on a dynamic pointer
  in hid-sensor-magn-3d by dropping the relevant code.

10 years agoiio: adc: xilinx: Remove .owner field for driver
Michal Simek [Wed, 13 Aug 2014 12:00:00 +0000 (13:00 +0100)]
iio: adc: xilinx: Remove .owner field for driver

There is no need to init .owner field.

Based on the patch from Peter Griffin <peter.griffin@linaro.org>
"mmc: remove .owner field for drivers using module_platform_driver"

This patch removes the superflous .owner field for drivers which
use the module_platform_driver API, as this is overriden in
platform_driver_register anyway."

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging:iio: Remove ad5930/ad9850/ad9852/ad9910/ad9951 dummy drivers
Lars-Peter Clausen [Mon, 18 Aug 2014 07:57:00 +0000 (08:57 +0100)]
staging:iio: Remove ad5930/ad9850/ad9852/ad9910/ad9951 dummy drivers

All what these 'drivers' do is expose a single (non standard ABI) sysfs
attribute that when written to does a direct pass-through to spi_write(). This
is rather ugly and does not justify the existence of a driver as the same can
easily done by using the spidev interface.

The drivers will eventually be rewritten as proper IIO ABI compliant drivers
which do have the proper abstraction layers between userspace and the device.
But in the meantime these driver do not add any extra value and just clutter up
the staging area. So just remove them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoMAINTAINERS: Add entry for Analog Devices IIO drivers
Lars-Peter Clausen [Mon, 18 Aug 2014 08:08:00 +0000 (09:08 +0100)]
MAINTAINERS: Add entry for Analog Devices IIO drivers

Add Michael and myself as the maintainer for the Analog Devices IIO drivers.
The entry matches on all files in drivers/staging/iio and drivers/iio/ starting
with the 'ad' prefix, except for 'adjd' as that one is used by Avago
Technologies.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agoMAINTAINERS: Add designated reviewers for IIO subsystem
Lars-Peter Clausen [Mon, 18 Aug 2014 08:29:00 +0000 (09:29 +0100)]
MAINTAINERS: Add designated reviewers for IIO subsystem

Add those persons who generally tend to review new IIO patches to the list of
designated reviewers to make sure that they are Cc'ed on new patches.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Peter Meerwald <pmeerw@pmeerw.net>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
10 years agostaging: dgnc: Remove unnecessary dgnc_Major_Control_Registered variable
Konrad Zapalowicz [Sat, 16 Aug 2014 14:58:08 +0000 (16:58 +0200)]
staging: dgnc: Remove unnecessary dgnc_Major_Control_Registered variable

The dgnc_Major_Control_Registered variable purpose was to act as a flag
to indicate if the character device has been successfully registered
into the kernel. This flag was later checked in the module cleanup
function to know if the character device needs to be deregistered.

However the {device,class}_destroy and unregister_chrdev functions may
be called with 'invalid' data perfectly fine. This means that this
variable is not needed and can safely be removed which is what this
commit does.

Signed-off-by: Konrad Zapalowicz <bergo.torino@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: Remove not needed dgnc_driver_start variable
Konrad Zapalowicz [Sat, 16 Aug 2014 14:58:07 +0000 (16:58 +0200)]
staging: dgnc: Remove not needed dgnc_driver_start variable

The dgnc_driver_start variable purpose was to indicate if the driver
'start' routine has been called. Now, because the 'start' routine can
only be called once this variable is not needed thus this commit
removes it.

Signed-off-by: Konrad Zapalowicz <bergo.torino@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: Remove driver-wide polling counter variable
Konrad Zapalowicz [Sat, 16 Aug 2014 14:58:06 +0000 (16:58 +0200)]
staging: dgnc: Remove driver-wide polling counter variable

The polling counter variable is only exposed via sysfs and has no other
purpose.

Now, since the polling shall be implemented as a board specific feature
rather than being global in the driver this counter is obsolete.

Signed-off-by: Konrad Zapalowicz <bergo.torino@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: Remove driver-wide state variable
Konrad Zapalowicz [Sat, 16 Aug 2014 14:58:05 +0000 (16:58 +0200)]
staging: dgnc: Remove driver-wide state variable

This commit removes the driver's global state variable. This is ok
because the state was changed only once at the end of init phase thus
the future usage of this variable is pointless.

Signed-off-by: Konrad Zapalowicz <bergo.torino@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: android: fix attribute as suggested by checkpatch
Purnendu Kapadia [Fri, 15 Aug 2014 17:20:30 +0000 (18:20 +0100)]
staging: android: fix attribute as suggested by checkpatch

we should use __packed attribute

Signed-off-by: Purnendu Kapadia <pro8linux@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: wlan-ng: prism2mgmt.c Fix break not useful
Jeshwanth Kumar N K [Thu, 14 Aug 2014 20:11:04 +0000 (01:41 +0530)]
staging: wlan-ng: prism2mgmt.c Fix break not useful

Fixed up warnings, break is not useful after return statement.
And the exit Label is deleted, now returning inline.

Signed-off-by: Jeshwanth Kumar N K <jeshkumar555@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: lustre: lustre: libcfs: pr_warn instead printk
Hema Prathaban [Sat, 16 Aug 2014 18:37:32 +0000 (00:07 +0530)]
staging: lustre: lustre: libcfs: pr_warn instead printk

This patch fixes the following warning using checkpatch.pl
WARNING: Prefer [subsystem eg: netdev]_warn([subsystem]dev, ... then
dev_warn(dev, ... then pr_warn(...  to printk(KERN_WARNING ...

Signed-off-by: Hema Prathaban <hemaklnce@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: lustre: lustre: libcfs: do not use assignment in if condition
Hema Prathaban [Sat, 16 Aug 2014 18:57:48 +0000 (00:27 +0530)]
staging: lustre: lustre: libcfs: do not use assignment in if condition

This patch fixes the following error using checkpatch.pl
Error: do not use assignment in if condition

Signed-off-by: Hema Prathaban <hemaklnce@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre: get rid of obd_* typedefs
Oleg Drokin [Fri, 15 Aug 2014 16:55:56 +0000 (12:55 -0400)]
staging/lustre: get rid of obd_* typedefs

We have a bunch of typedefs for common things that made no sense
and hid the actual type from plain view.
Replace them with proper uXX or sXX types.
Exception is in lustre_idl.h where
they are replaced with __uXX and __sXX to be able to be included
in userspace

Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre: get rid of seqno_t and mdsno_t typedefs
Oleg Drokin [Fri, 15 Aug 2014 16:55:55 +0000 (12:55 -0400)]
staging/lustre: get rid of seqno_t and mdsno_t typedefs

seqno_t is u64 and mdsno_t is u32 so just use them as such.

Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6655: Convert DBG_PRT to pr_<level>
Joe Perches [Sun, 17 Aug 2014 16:17:04 +0000 (09:17 -0700)]
staging: vt6655: Convert DBG_PRT to pr_<level>

DBG_PRT uses are unnecessarily complex.

Convert DBG_PRT msglevel to pr_<level>.
This changes the KERN_<level> type of several uses.
It also enables dynamic_debug for the pr_debug conversions.

This patch can be a prelude to converting these pr_<level>
uses to dev_<level> as appropriate.

Other changes:

Realign arguments of these conversions.
Remove now unused static int msglevel declarations.
Remove now unused DBG_PRT #define.

Compile tested only.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/llite: Fix integer overflow in ll_fid2path
Oleg Drokin [Fri, 15 Aug 2014 16:48:13 +0000 (12:48 -0400)]
staging/lustre/llite: Fix integer overflow in ll_fid2path

Reported by Dan Carpenter <dan.carpenter@oracle.com>

outsize = sizeof(*gfout) + gfin->gf_pathlen;

Where outsize is int and gf_pathlen is u32 from userspace
can lead to integer overflowwhere outsize is some small number
less than sizeof(*gfout)

Add a check for pathlen to be of sensical size.

Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/11412
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5476
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/llite: optimize ll_fid2path()
Frank Zago [Fri, 15 Aug 2014 16:48:12 +0000 (12:48 -0400)]
staging/lustre/llite: optimize ll_fid2path()

The only parameter from userspace that matters is the length of the
buffer. We don't need to allocate then import the whole structure. By
importing only that length, we can save a memory allocation.

Add sparse annotations to that function.

Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11167
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5389
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/llite: hold inode mutex around ll_setattr_raw()
John L. Hammond [Fri, 15 Aug 2014 16:48:11 +0000 (12:48 -0400)]
staging/lustre/llite: hold inode mutex around ll_setattr_raw()

ll_setattr_raw() expects to be called with the inode mutex held so do
when calling it from ll_hsm_import().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Reviewed-on: http://review.whamcloud.com/11349
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5456
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/clio: reorder initialization in cl_req_alloc()
John L. Hammond [Fri, 15 Aug 2014 16:48:10 +0000 (12:48 -0400)]
staging/lustre/clio: reorder initialization in cl_req_alloc()

In cl_req_alloc() ensure that the list heads crq_pages and crq_layers
have been initialized before passing the request to
cl_req_completion(). This fixes an oops in the error path.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Reviewed-on: http://review.whamcloud.com/11009
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5290
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/ldlm: drop redundant ibits lock interoperability check
Fan Yong [Fri, 15 Aug 2014 16:48:09 +0000 (12:48 -0400)]
staging/lustre/ldlm: drop redundant ibits lock interoperability check

In very old release (older than Lustre-1.8), if the client talks with
the server that does not support ibits lock, then the client needs to
convert it as plain lock. Such interoperability check and convertion
is out of date for a long time. Drop it.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Reviewed-on: http://review.whamcloud.com/11004
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-4971
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/llite: Make sure ft_flags is valid
Paul Cassella [Fri, 15 Aug 2014 16:48:08 +0000 (12:48 -0400)]
staging/lustre/llite: Make sure ft_flags is valid

In ll_fault0, the 'fault' struct is mostly cleared before the call to
cl_io_loop, but ft_flags is not reset. It is ordinarily set by
the call to filemap_fault in vvp_io_kernel_fault, but if Lustre
returns before calling filemap_fault, it still has the old value of
ft_flags.

ll_fault0 will then consume the ft_flags field. If it has the
VM_FAULT_RETRY bit set, it will be used as ll_fault0() and
ll_fault()'s return value.

This is a problem when VM_FAULT_RETRY is in ft_flags:
When fault/filemap_fault return with that flag set, they have already
released the mmap semaphore, and do_page_fault does not need to
release it.
Incorrectly returning this flag from ll_fault means mmap_sem
is not upped in the kernel's do_page_fault().

In addition to clearing ft_flags, this patch does not use it unless
it is valid.  It's potentially misleading to return ft_flags in
"fault_ret" if ft_flags has not been set by filemap_fault.

This adds clarity, but does not change the current behavior:
When not valid, ft_flags is replaced by fault_ret, which is zero,
as is ft_flags when not set by filemap_fault.

Signed-off-by: Patrick Farrell <paf@cray.com>
Reviewed-on: http://review.whamcloud.com/10956
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5291
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/mdc: cleanup intent if mdc_finish_enqueue() fails
John L. Hammond [Fri, 15 Aug 2014 16:48:07 +0000 (12:48 -0400)]
staging/lustre/mdc: cleanup intent if mdc_finish_enqueue() fails

In mdc_enqueue() clear the lock handle, lock mode, and request stored
in the lookup intent if mdc_finish_enqueue() fails.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Reviewed-on: http://review.whamcloud.com/10963
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5289
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/lustre/llite: check for integer overflow in hsm user request
Nathaniel Clark [Fri, 15 Aug 2014 16:48:06 +0000 (12:48 -0400)]
staging/lustre/llite: check for integer overflow in hsm user request

Check to make sure total size of request does not overflow when
calculated.  Return -1 from hur_len() if it does overflow.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-on: http://review.whamcloud.com/10615
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-4984
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agoStaging: wlan-ng: Merge string literals on adjacent lines in prism2fw.c
Artemiy Volkov [Thu, 14 Aug 2014 06:20:09 +0000 (16:20 +1000)]
Staging: wlan-ng: Merge string literals on adjacent lines in prism2fw.c

This patch fixes the 'quoted string split across lines' checkpatch.pl
warning in prism2fw.c.

Signed-off-by: Artemiy Volkov <artemiyv@acm.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging/mt29f_spinand: coding style fixes
vibi sreenivasan [Tue, 12 Aug 2014 14:39:27 +0000 (14:39 +0000)]
staging/mt29f_spinand: coding style fixes

This patch fixes the coding style error :
"WARNING: else is not generally useful after a break or return"
reported by checkpatch.pl

Signed-off-by: Vibi Sreenivasan <vibisreenivasan@linuxmail.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: 8255: provide common defines for registers
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:29 +0000 (11:41 -0700)]
staging: comedi: 8255: provide common defines for registers

There are a couple comedi drivers that duplicate some of the register
defines used by the 8255 module. Move these defines into the header
so the duplication can be removed.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: 8255: handle memory mapped io
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:28 +0000 (11:41 -0700)]
staging: comedi: 8255: handle memory mapped io

The drivers that use this module with memory mapped io all have the
ioremap'ed base address stored in the comedi_device 'mmio' member.

Introduce a default (*io) function that does 8-bit memory mapped io.

Modify subdev_8255_init() so that it takes a flag parameter indicating
if the io is port or memory mapped. Make the function static and rename
it to __subdev_8255_init().

Introduce two exported wrappers for __subdev_8255_init():

  subdev_8255_init() - for drivers that do 8-bit port io
  subdev_8255_mm_init() - for drivers that do 8-bit memory mapped io

Use subdev_8255_mm_init() in the drivers that do 8-bit memory mapped io
and remove the private (*io) functions.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: 8255: remove incomplete async command support
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:27 +0000 (11:41 -0700)]
staging: comedi: 8255: remove incomplete async command support

The async command support in this module is incomplete and nothing
has ever used it. Just remove it.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: 8255: refactor how the (*io) function works
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:26 +0000 (11:41 -0700)]
staging: comedi: 8255: refactor how the (*io) function works

Currently, all users of is module that use the default (*io) function
pass an 'iobase' to subdev_8255_init() of the form:

  dev->iobase + OFFSET_TO_8255_BASE_REG

Now that the (*io) callback includes the comedi_device 'dev' pointer
the 'dev->iobase' does not need to be included.

Modify the default (*io) function, subdev_8255_io(), to automatically
add the dev->iobase to the address when reading/writing the port.

For aesthetics, rename the subdevice private data member to 'regbase'.
Also, rename the local variables in this module that are used to
access this member.

Add a comment in dev_8255_attach() about the 'iobase' that is passed
to subdev_8255_init(). For manually attached 8255 devices the io
region is requested with __comedi_request_region() which does not
set dev->iobase. For these devices the 'regbase' is actually the
'iobase'.

Remove the, now unnecessary, dev->iobase from all the callers of
subdev_8255_init(). There are a couple drivers that only passed the
dev->iobase. For those drivers pass a 'regbase' of 0x00.

Note that the das16m1 driver is a bit goofy. The devpriv->extra_iobase
is requested using __comedi_request_region() which does not set the
dev->iobase. But the starting address passed is dev->iobase + DAS16M1_82C55
so a 'regbase' of DAS16M1_82C55 is passed to subdev_8255_init().

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: 8255_pci: tidy up pci_8255_mmio()
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:25 +0000 (11:41 -0700)]
staging: comedi: 8255_pci: tidy up pci_8255_mmio()

The 8255 driver (*io) callback now includes the comedi_device pointer.
Using this we can get the ioremap'ed base address.

Instead of passing the (cast) mmio address to subdev_8255_init(), pass
the 'iobase' of the 8255 registers (i * 4).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: cb_pcidas64: tidy up dio_callback_4020()
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:24 +0000 (11:41 -0700)]
staging: comedi: cb_pcidas64: tidy up dio_callback_4020()

The 8255 driver (*io) callback now includes the comedi_device pointer.
Using this we can get the ioremap'ed base address.

Instead of passing the (cast) mmio address to subdev_8255_init(), pass
the 'iobase' of the 8255 registers (I8255_4020_REG).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: cb_pcidas64: tidy up dio_callback()
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:23 +0000 (11:41 -0700)]
staging: comedi: cb_pcidas64: tidy up dio_callback()

The 8255 driver (*io) callback now includes the comedi_device pointer.
Using this we can get the ioremap'ed base address.

Instead of passing the (cast) mmio address to subdev_8255_init(), pass
the 'iobase' of the 8255 registers (DIO_8255_OFFSET).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: daqboard2000: tidy up daqboard2000_8255_cb()
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:22 +0000 (11:41 -0700)]
staging: comedi: daqboard2000: tidy up daqboard2000_8255_cb()

The 8255 driver (*io) callback now includes the comedi_device pointer.
Using this we can get the ioremap'ed base address.

Instead of passing the (cast) mmio address to subdev_8255_init(), pass
the 'iobase' of the 8255 registers (dioP2ExpansionIO8Bit).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: ni_labpc: tidy up labpc_8255_mmio()
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:21 +0000 (11:41 -0700)]
staging: comedi: ni_labpc: tidy up labpc_8255_mmio()

The 8255 driver (*io) callback now includes the comedi_device pointer.

Instead of passing the (cast) pointer to subdev_8255_init(), pass the
'iobase' of the 8255 registers (DIO_BASE_REG).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: ni_mio_common: tidy up ni_8255_callback()
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:20 +0000 (11:41 -0700)]
staging: comedi: ni_mio_common: tidy up ni_8255_callback()

The 8255 driver (*io) callback now includes the comedi_device pointer.

Instead of passing the (cast) pointer to subdev_8255_init(), pass the
'iobase' of the 8255 registers (Port_A).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: 8255: add a comedi_device param to the (*io) callback
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:19 +0000 (11:41 -0700)]
staging: comedi: 8255: add a comedi_device param to the (*io) callback

The 8255 driver uses an (*io) callback to read/write the registers
of the 8255 device. The default callback provided by the driver uses
inb()/outb() calls to access to registers based on an 'iobase' that
was initialized during the subdev_8255_init() and a 'port' value.

The users of this module can optionally provide a custom (*io) callback
to handle the read/write in another manner.

Make the (*io) callback a bit more flexible by also passing the
comedi_device pointer as a parameter.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_pci230: refactor iobase addresses
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:18 +0000 (11:41 -0700)]
staging: comedi: amplc_pci230: refactor iobase addresses

This driver uses two iobase addresses, found in PCI bars 2 and 3.
Currently, the address in PCI bar 2 is saved in the private data as
'iobase1' and the address in PCI bar 3 is saved in the comedi_device
as the 'iobase'. The 'iobase' is the base address of the daq
registers (ai/ao) of the board. The 'iobase1' address is the base
address of the 8255, 8254, configuration, and interrupt registers.

Flip the saving of these base addresses. Save the address from PCI
bar 2 in the comedi_device 'iobase' and the address from PCI bar 3
in the private data as 'daqio'.

This will help with some cleanup of the 8255 module.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: cb_pcidda: refactor iobase addresses
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:17 +0000 (11:41 -0700)]
staging: comedi: cb_pcidda: refactor iobase addresses

This driver uses two iobase addresses, found in PCI bars 2 and 3.
Currently, the address in PCI bar 3 is saved in the comedi_device as
the 'iobase' and the one in PCI bar 2 is just passed to subdev_8255_init()
as the 'iobase' parameter.

Save the PCI bar 3 address in the private data as 'daqio' and the
address from PCI bar 2 in the comedi_device as the 'iobase'.

This will help with some cleanup of the 8255 module.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: cb_pcimdas: refactor iobase addresses
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:16 +0000 (11:41 -0700)]
staging: comedi: cb_pcimdas: refactor iobase addresses

This driver uses three iobase addresses, found in PCI bars 2, 3, and 4.
Currently, the address in PCI bar 2 is saved in the comedi_device as
the 'iobase', the PCI bar 3 address is saved in the private data as
'BADR3' and the one in PCI bar 4 is just passed to subdev_8255_init()
as the 'iobase' parameter.

Flip the saving of the PCI bar 2 and 4 base addresses. Save the address
from PCI bar 2 in the private data as the 'daqio' and the address from
PCI bar 4 in the comedi_device as the 'iobase'.

This will help with some cleanup of the 8255 module.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: cb_pcidas: use dev->iobase for PCI bar 3
H Hartley Sweeten [Tue, 12 Aug 2014 18:41:15 +0000 (11:41 -0700)]
staging: comedi: cb_pcidas: use dev->iobase for PCI bar 3

Currently the base address of the 8254 and 8255 devices, found in
PCI bar 3, is saved in the private data as 'pacer_counter_dio'.
The 'iobase' in the comedi_device is currently unused.

Save the address from PCI bar 3 in the comedi_device and remove
the unnecessary member from the private data.

This will help with some cleanup of the 8255 module.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200: remove dio200_common_detach()
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:23 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200: remove dio200_common_detach()

This exported function just does a free_irq() to release the interrupt
handler for the legacy and PCI dio200 drivers.

The legacy driver also calls comedi_legacy_detach() which would also
do the free_irq(). For that driver the just use comedi_legacy_detach()
directly for the (*detach).

For the PCI driver, add the free_irq() to the private (*datach) function.

Remove the, then unused, dio200_common_detach() function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200: absorb dio200_subdev_timer_init()
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:22 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200: absorb dio200_subdev_timer_init()

This function is only called by amplc_dio200_common_attach() and it
can never fail. For aesthetics, absorb it into that function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200.h: remove boardinfo 'mainshift'
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:21 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200.h: remove boardinfo 'mainshift'

This member of the boardinfo is only set for the PCIE boards. Use the
'is_pcie' flag to determine if the offset needs to be shifted when
reading/writing the registers.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200.h: rename 'has_enhancements' in boardinfo
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:20 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200.h: rename 'has_enhancements' in boardinfo

This member of the boardinfor is only set for the PCIE boards. For
aeshetics, rename it to 'is_pcie'.

For clarity, use this flag in the (*auto_attach) to determine if the
dio200_pcie_board_setup() function needs to be called instead of using
the switch (context_model).

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200.h: remove unnecessary function comment descriptions
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:19 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200.h: remove unnecessary function comment descriptions

The function names provide enough description. The extra comments are not
necessary. Remove them.

Also, tidy up some of the function declarations.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200.h: remove struct dio200_layout definition
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:18 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200.h: remove struct dio200_layout definition

This struct is used to provide part of the boardinfo data. Using the extra
indirection does not provide any additional clarity to the driver.

Absorb the members from dio200_layout into dio200_board and remove the
extra 'layout' indirection.

For aesthetics, rename all the local variables used for the boardinfo
pointer to 'board'.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200: tidy up {comedi, pci}_driver declarations
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:17 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200: tidy up {comedi, pci}_driver declarations

For aesthetics, add some whitespace to these declarations.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: amplc_dio200: tidy up comedi_driver declaration
H Hartley Sweeten [Tue, 12 Aug 2014 18:17:16 +0000 (11:17 -0700)]
staging: comedi: amplc_dio200: tidy up comedi_driver declaration

For aesthetics, add some whitespace to the declaration.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: addi_apci_1564: tidy register map defines
Chase Southwood [Tue, 12 Aug 2014 02:03:48 +0000 (21:03 -0500)]
staging: comedi: addi_apci_1564: tidy register map defines

This commit performs a final tidying of the register map defines, bringing
them to a state that is ready for merging into addi_apci_1564.c when the
time comes.  Actions performed include:

*Removes the APCI1564_ADDRESS_RANGE macro, which is no longer needed/used.
*Renames the APCI1564_DIGITAL_OP_{VCC,CC}_INTERRUPT_{ENABLE,DISABLE}
macros to shorter names which are more consistent with the digital input
interrupt macros.
*Fixes a typo in a comment (dev>iobase changed to dev->iobase).
*Renames the APCI1564_TCW_* macros to APCI1564_COUNTER_* names to more
accurately reflect that they are only offsets to counter registers (since
only the counters are offset from dev->iobase).

Signed-off-by: Chase Southwood <chase.southwood@gmail.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Cc: H Hartley Sweeten <hsweeten@visionengraver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: addi_apci_1564: Remove in-driver watchdog support code
Chase Southwood [Tue, 12 Aug 2014 02:03:19 +0000 (21:03 -0500)]
staging: comedi: addi_apci_1564: Remove in-driver watchdog support code

Starting with commit 1496e5961113 ("staging: comedi: addi_apci_1564: use
addi_watchdog module to init watchdog subdevice"), this driver uses the
addi_watchdog module to provide support for the watchdog subdevice.  Any
remaining watchdog code in-driver can and should be removed.

This will also make future work on the timer and counter subdevices easier.

Signed-off-by: Chase Southwood <chase.southwood@gmail.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Cc: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: addi_apci_1564: remove apci1564_do_config
Chase Southwood [Tue, 12 Aug 2014 02:02:58 +0000 (21:02 -0500)]
staging: comedi: addi_apci_1564: remove apci1564_do_config

The DO config function served the purpose of configuring the diagnostic
interrupts for the board.  As the driver currently does not support
diagnostic interrupts, the digital output subdevice does not need an
insn_config operation and this function can be safely removed.

Signed-off-by: Chase Southwood <chase.southwood@gmail.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Cc: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agoStaging: bmc: fix coding style warning
Ramesh Basukala [Thu, 14 Aug 2014 14:11:44 +0000 (10:11 -0400)]
Staging: bmc: fix coding style warning

This is a patch to the vendorspecificextn.c that fixes coding style
warning message line over 80 characters found by checkpatch.pl script.
I am submitting this patch as required by Eudyptula Challenge.

Signed-off-by: Ramesh Basukala <basukalaramesh@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: android: ion: Remove redundant return of void function
Phong Tran [Wed, 13 Aug 2014 13:37:06 +0000 (20:37 +0700)]
staging: android: ion: Remove redundant return of void function

This patch fix checkpatch.pl warning
Tested by compilation only.

Signed-off-by: Phong Tran <tranmanphong@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: android: ion: ion.c Add a new blank line after decleration
Phong Tran [Wed, 13 Aug 2014 13:37:05 +0000 (20:37 +0700)]
staging: android: ion: ion.c Add a new blank line after decleration

This patch fix checkpatch.pl warning
Tested by compilation only.

Signed-off-by: Phong Tran <tranmanphong@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: android: ion: ion_dummy_driver.c Replace kzalloc() by kcalloc()
Phong Tran [Wed, 13 Aug 2014 13:37:04 +0000 (20:37 +0700)]
staging: android: ion: ion_dummy_driver.c Replace kzalloc() by kcalloc()

This patch fix checkpatch.pl warning
Tested by compilation only.

Signed-off-by: Phong Tran <tranmanphong@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agoStaging: rtl8188eu: Removed unneeded code.
Adrian Remonda [Sun, 10 Aug 2014 18:39:57 +0000 (20:39 +0200)]
Staging: rtl8188eu: Removed unneeded code.

This patch removes some unneeded code.
1) kzalloc() allocates 4 extra bytes so that we can align the return
   value.  But actually the return value is already aligned so we can
   remove the + 4 and the call to N_BYTE_ALIGMENT().
2) The memset() isn't needed because kzalloc() zeroes the allocation.

Suggested-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Adrian Remonda <adrianremonda@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agoStaging: rtl8188eu: Lines over 80 characters fixed.
Adrian Remonda [Sun, 10 Aug 2014 18:39:56 +0000 (20:39 +0200)]
Staging: rtl8188eu: Lines over 80 characters fixed.

This is a patch to the hal/rtl8188eu_recv.c file that fixes up a "line
over 80 characters" warning found by the checkpatch.pl tool.

Signed-off-by: Adrian Remonda <adrianremonda@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8188eu: Declare Efuse_GetCurrentSize() as a static function
navin patidar [Sun, 10 Aug 2014 14:44:35 +0000 (20:14 +0530)]
staging: rtl8188eu: Declare Efuse_GetCurrentSize() as a static function

Signed-off-by: navin patidar <navin.patidar@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8188eu: rtw_iol.h: Remove unused struct, enum and macro
navin patidar [Sun, 10 Aug 2014 14:44:34 +0000 (20:14 +0530)]
staging: rtl8188eu: rtw_iol.h: Remove unused struct, enum and macro

Signed-off-by: navin patidar <navin.patidar@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8188eu: rtw_iol.c: Remove unused functions
navin patidar [Sun, 10 Aug 2014 14:44:33 +0000 (20:14 +0530)]
staging: rtl8188eu: rtw_iol.c: Remove unused functions

Signed-off-by: navin patidar <navin.patidar@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8188eu: Remove unused function iol_ioconfig()
navin patidar [Sun, 10 Aug 2014 14:44:32 +0000 (20:14 +0530)]
staging: rtl8188eu: Remove unused function iol_ioconfig()

Signed-off-by: navin patidar <navin.patidar@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8188eu: Remove rtl8188e_IOL_exec_cmds_sync() and its wrapper function
navin patidar [Sun, 10 Aug 2014 14:44:31 +0000 (20:14 +0530)]
staging: rtl8188eu: Remove rtl8188e_IOL_exec_cmds_sync() and its wrapper function

rtl8188e_IOL_exec_cmds_sync() is a unused function.

Signed-off-by: navin patidar <navin.patidar@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>