firefly-linux-kernel-4.4.55.git
11 years agoregulator: palmas: Add TPS659038 support
J Keerthy [Thu, 20 Jun 2013 11:02:15 +0000 (16:32 +0530)]
regulator: palmas: Add TPS659038 support

Add TPS659038 support.

Signed-off-by: J Keerthy <j-keerthy@ti.com>
Acked-by: Mark Brown <broonie@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: Kontron PLD mfd driver
Kevin Strasser [Mon, 24 Jun 2013 04:00:03 +0000 (21:00 -0700)]
mfd: Kontron PLD mfd driver

Add core MFD driver for the on-board PLD found on some Kontron embedded
modules. The PLD device may provide functions like watchdog, GPIO, UART
and I2C bus.

The following modules are supported:
* COMe-bIP#
* COMe-bPC2 (ETXexpress-PC)
* COMe-bSC# (ETXexpress-SC T#)
* COMe-cCT6
* COMe-cDC2 (microETXexpress-DC)
* COMe-cPC2 (microETXexpress-PC)
* COMe-mCT10
* ETX-OH

Originally-From: Michael Brunner <michael.brunner@kontron.com>
Signed-off-by: Kevin Strasser <kevin.strasser@linux.intel.com>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: palmas: Add TPS659038 PMIC support
J Keerthy [Thu, 20 Jun 2013 11:05:16 +0000 (16:35 +0530)]
mfd: palmas: Add TPS659038 PMIC support

The Patch adds TPS659038 PMIC support in the palmas mfd driver.
The TPS659038 has almost the same registers as of the earlier
supported variants of PALMAS family such as the TWL6035.

The critical differences between TPS659038 and TWL6035 being:

1) TPS659038 has nothing related to battery charging and back up battery stuff.
2) TPS659038 does not have does not have SMPS10(Boost) step up convertor.
3) TPS659038 does not have Battery detection and anything related to battery.
4) SD card detection, Battery presence detection, Vibrator, USB OTG are missing
   when compared to TWL6035.

Signed-off-by: J Keerthy <j-keerthy@ti.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: palmas: Add SMPS10_BOOST feature
J Keerthy [Wed, 19 Jun 2013 05:57:48 +0000 (11:27 +0530)]
mfd: palmas: Add SMPS10_BOOST feature

The SMPS10 regulator is not presesnt in all the variants
of the PALMAS PMIC family. Hence adding a feature to distingush
between them.

Signed-off-by: J Keerthy <j-keerthy@ti.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: palmas: Check if irq is valid
J Keerthy [Wed, 19 Jun 2013 05:57:47 +0000 (11:27 +0530)]
mfd: palmas: Check if irq is valid

Check if irq value obtained is valid. If it is not valid
then skip the irq request step and go ahead with the probe.

Signed-off-by: J Keerthy <j-keerthy@ti.com>
Reviewed-by: Mark Brown <broonie@linaro.org>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: lpc_ich: iTCO_wdt patch for Intel Coleto Creek DeviceIDs
Seth Heasley [Thu, 20 Jun 2013 00:04:25 +0000 (17:04 -0700)]
mfd: lpc_ich: iTCO_wdt patch for Intel Coleto Creek DeviceIDs

This patch adds the LPC Controller DeviceIDs for iTCO Watchdog for
the Intel Coleto Creek PCH.

Signed-off-by: Seth Heasley <seth.heasley@intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl-core: Change TWL6025 references to TWL6032
Graeme Gregory [Wed, 19 Jun 2013 12:24:02 +0000 (15:24 +0300)]
mfd: twl-core: Change TWL6025 references to TWL6032

The TWL6025 was never released beyond sample form and was replaced by
the PhoenixLite range of chips - TWL6032. Change the references to
reference the TWL6032 class and name the registers to twl6032 in line with
an actual released chip name to avoid confusion.

Currently there are no users of TWL6025 in the code.

Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk>
Signed-off-by: Oleksandr Kozaruk <oleksandr.kozaruk@ti.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Reviwed-by: Mark Brown <broonie@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: davinci_voicecodec: Fix build breakage
Sachin Kamat [Tue, 18 Jun 2013 10:05:39 +0000 (15:35 +0530)]
mfd: davinci_voicecodec: Fix build breakage

Include the missing header file to fix the following build error:
drivers/mfd/davinci_voicecodec.c: In function ‘davinci_vc_probe’:
drivers/mfd/davinci_voicecodec.c:86:3: error: implicit declaration of function
‘io_v2p’ [-Werror=implicit-function-declaration]
   (dma_addr_t)(io_v2p(davinci_vc->base) + DAVINCI_VC_WFIFO);

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agoMerge branch 'for-mfd-next' of git://git.linaro.org/people/ljones/linux-3.0-ux500
Samuel Ortiz [Wed, 19 Jun 2013 09:57:38 +0000 (11:57 +0200)]
Merge branch 'for-mfd-next' of git://git.linaro.org/people/ljones/linux-3.0-ux500

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: vexpress: Make the driver optional for arm and arm64
Pawel Moll [Tue, 11 Jun 2013 10:56:02 +0000 (11:56 +0100)]
mfd: vexpress: Make the driver optional for arm and arm64

The driver can be used on either arm or arm64 platforms, but
the latter doesn't have any platform-specific configuration
options, so it must be possible to manually enable the driver.

As the gpiolib is optional for arm64 arch, the gpio/led code
must be compiled conditionally.

Signed-off-by: Pawel Moll <pawel.moll@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: htc-egpio: Use devm_ioremap_nocache() instead of ioremap_nocache()
Wei Yongjun [Wed, 19 Jun 2013 02:47:06 +0000 (10:47 +0800)]
mfd: htc-egpio: Use devm_ioremap_nocache() instead of ioremap_nocache()

Replace probe-time ioremap_nocache() call with devm_ioremap_nocache()
to avoid iounmap() missing and get rid of the corresponding iounmap()
call on remove.

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: davinci_voicecodec: Convert to use devm_* APIs
Sachin Kamat [Tue, 18 Jun 2013 10:05:40 +0000 (15:35 +0530)]
mfd: davinci_voicecodec: Convert to use devm_* APIs

devm_* APIs are device managed and make code simpler.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: twl4030-power: Fix relocking on error
Florian Vaussard [Tue, 18 Jun 2013 13:18:00 +0000 (15:18 +0200)]
mfd: twl4030-power: Fix relocking on error

If an error occurs when loading power scripts or resources, the
registers are not correctly relocked. Fix it.

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030-power: Simplify error path
Florian Vaussard [Tue, 18 Jun 2013 13:17:59 +0000 (15:17 +0200)]
mfd: twl4030-power: Simplify error path

Remove unnecessary goto statements, causing duplicated if
conditions.

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030-power: Start transition to DT
Florian Vaussard [Tue, 18 Jun 2013 13:17:58 +0000 (15:17 +0200)]
mfd: twl4030-power: Start transition to DT

Support for loading twl4030-power module via devicetree.
For now, when booting with a DT, only the poweroff callback
feature is supported through the ti,use_poweroff property.

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030-power: Simplify probing of power scripts and resources
Florian Vaussard [Tue, 18 Jun 2013 13:17:57 +0000 (15:17 +0200)]
mfd: twl4030-power: Simplify probing of power scripts and resources

Increase lisibility when probing power scripts and resources by
creating dedicated functions.

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030-power: Split from twl-core into a dedicated module
Florian Vaussard [Tue, 18 Jun 2013 13:17:56 +0000 (15:17 +0200)]
mfd: twl4030-power: Split from twl-core into a dedicated module

For now, the call to twl4030-power is hard-wired inside twl-core.
To ease the future transition to DT, make twl4030-power as a
separate module, like what is already done for twl4030-audio
and others.

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: ssbi: Use devm_* and simplify code
Stephen Boyd [Mon, 3 Jun 2013 19:39:44 +0000 (12:39 -0700)]
mfd: ssbi: Use devm_* and simplify code

Use devm_ioremap_resource and devm_kzalloc to simplify error
paths and reduce lines of code. Also use dev_err() to keep
consistency and drop the .remove function because the devm
functions take care of what it's doing besides the now obsolete
platform_set_drvdata() which we can just drop. Finally, use
module_platform_driver() to save some more lines.

Cc: David Brown <davidb@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: ssbi: Add MODULE_DEVICE_TABLE
Stephen Boyd [Mon, 3 Jun 2013 19:39:43 +0000 (12:39 -0700)]
mfd: ssbi: Add MODULE_DEVICE_TABLE

This allows the ssbi module to be autoloaded on boot.

Cc: David Brown <davidb@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030: Allow IRQ wake enable to succeed on subchip IRQs
Kevin Hilman [Fri, 31 May 2013 21:44:54 +0000 (14:44 -0700)]
mfd: twl4030: Allow IRQ wake enable to succeed on subchip IRQs

The genirq IRQ wake method will default to failure if the irq_chip
does not provide a set_wake method.  However, for TWL4030 sub-chip
IRQs, we want the wake enable to succeed even though we don't provide
a set_wake method.  This allows sub-chip IRQs to still be flagged as
wakeup capable, and allow them to wakeup from suspend (or abort
suspend if they fire during suspend.)

To fix, use the IRQCHIP_SKIP_SET_WAKE flag in the irq_chip.

Signed-off-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: lpc_ich: Convert to module_pci_driver
Libo Chen [Mon, 27 May 2013 02:28:56 +0000 (10:28 +0800)]
mfd: lpc_ich: Convert to module_pci_driver

use module_pci_driver instead of init/exit, make code cleaner.

Signed-off-by: Libo Chen <libo.chen@huawei.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: Add regulator sub device
Chao Xie [Fri, 14 Jun 2013 05:21:53 +0000 (01:21 -0400)]
mfd: 88pm800: Add regulator sub device

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: Enhance sub devices initialization
Chao Xie [Fri, 14 Jun 2013 05:21:52 +0000 (01:21 -0400)]
mfd: 88pm800: Enhance sub devices initialization

Separate the devices initialization into different functions.
It makes the probe function clearer.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm80x: Change chip id definition and detection
Chao Xie [Fri, 14 Jun 2013 05:21:51 +0000 (01:21 -0400)]
mfd: 88pm80x: Change chip id definition and detection

Change the chip id definition and detection and then:

1. We no longer need to add PM800_CHIP_XXX for the coming revision.
2. We no longer need to pass driver_data in i2c_device_id as we
   can distinguish the chips from the CHIP_ID register.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: Enhance error handling for sub pages probe/remove
Chao Xie [Fri, 14 Jun 2013 05:21:50 +0000 (01:21 -0400)]
mfd: 88pm800: Enhance error handling for sub pages probe/remove

pm800_pages_init and pm800_pages_exit are called by pm800_probe.
Change the code to enhance error handling and remove unused code at
pm800_pages_init/exit and pm800_probe.

Signed-off-by: Yi Zhang <yizhang@marvell.com>
Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: Remove the power and gpadc page addr from platform data
Chao Xie [Fri, 14 Jun 2013 05:21:49 +0000 (01:21 -0400)]
mfd: 88pm800: Remove the power and gpadc page addr from platform data

88pm800 has two addtional pages - power and gpadc.
The address of the pages depends on the address of 88pm800.
So do not need pass the address of the power and gpadc in
platform data.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: 88pm805: Remove "IRQF_TRIGGER_FALLING" flag
Yi Zhang [Fri, 14 Jun 2013 05:21:48 +0000 (01:21 -0400)]
mfd: 88pm800: 88pm805: Remove "IRQF_TRIGGER_FALLING" flag

88pm800/88pm805 interrupt is asserted low if the events happened.
So remove IRQF_TRIGGER_FALLING for irq request.
Also, the interrupt wiring is board dependent so do not set
IRQF_TRIGGER by default.

Signed-off-by: Yi Zhang <yizhang@marvell.com>
Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: Initialize mask_invert
Chao Xie [Fri, 14 Jun 2013 05:21:47 +0000 (01:21 -0400)]
mfd: 88pm800: Initialize mask_invert

mask_invert must be set otherwise interrupts cannot be cleared.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm80x: Fix driver name for 88pm800 and 88pm805
Chao Xie [Fri, 14 Jun 2013 05:21:46 +0000 (01:21 -0400)]
mfd: 88pm80x: Fix driver name for 88pm800 and 88pm805

88pm800 and 88pm805 shouldnot have the same driver name.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: 88pm800: Fix NULL pointer dereference
Yi Zhang [Fri, 14 Jun 2013 05:21:45 +0000 (01:21 -0400)]
mfd: 88pm800: Fix NULL pointer dereference

Move "device_800_init" to fix NULL pointer error when
calling "device_gpadc_init" as it needs "subchip->regmap_gpadc"
to set registers via regmap interface

Signed-off-by: Yi Zhang <yizhang@marvell.com>
Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: arizona: Integrate wm8997 into Arizona mfd
Charles Keepax [Thu, 13 Jun 2013 08:43:29 +0000 (09:43 +0100)]
mfd: arizona: Integrate wm8997 into Arizona mfd

The wm8997 is a compact, high-performance audio hub CODEC with SLIMbus
interfacing, for smartphones, tablets and other portable audio devices
based on the Arizona platform.

This patch integrates the wm8997 into the Arizona mfd.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: wm8994: Reset device during probe
Mark Brown [Fri, 17 May 2013 12:25:21 +0000 (13:25 +0100)]
mfd: wm8994: Reset device during probe

Ensure that the device is in a known good state. This should have little
practical impact as the runtime PM will reset the device shortly after
probe but it's neater.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: palmas: Remove code which is not necessary for a device tree boot
J Keerthy [Mon, 17 Jun 2013 11:47:58 +0000 (17:17 +0530)]
mfd: palmas: Remove code which is not necessary for a device tree boot

Remove code which is not necessary for a device tree boot.

Boot tested on OMAP5-UEVM board.

Signed-off-by: J Keerthy <j-keerthy@ti.com>
Acked-by: Laxman Dewangan <ldewangan@nvidia.com>
Acked-by: Graeme Gregory <gg@slimlogic.co.uk>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agoMerge tag 'am335x_tsc-adc' of git://breakpoint.cc/bigeasy/linux
Samuel Ortiz [Thu, 13 Jun 2013 10:14:59 +0000 (12:14 +0200)]
Merge tag 'am335x_tsc-adc' of git://breakpoint.cc/bigeasy/linux

A complete refurbished series inclunding:
- DT support for the MFD, TSC and ADC driver & platform device support,
  which has no users, has been killed.
- iio_map from last series is gone and replaced by proper nodes in the
  device tree.
- suspend fixes which means correct data structs are taken and no
  interrupt storm
- fifo split which should problem with TSC & ADC beeing used at the same
  time
- The ADC channels are now checked before blindly applied. That means the
  touch part reads X, Y and Z coordinates and does not mix them up. Same
  goes for the IIO ADC driver.
- The IIO ADC driver now creates files named in_voltageX_raw where X
  represents the ADC line instead of a number starting at 0. A read from
  this file can return -EBUSY in case touch is busy and the ADC didn't
  collect a value.

11 years agomfd: 88pm860x: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:03 +0000 (16:25 +0100)]
mfd: 88pm860x: Convert to managed resources for allocating memory

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: max8925: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:17 +0000 (16:25 +0100)]
mfd: max8925: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: max77686: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:16 +0000 (16:25 +0100)]
mfd: max77686: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: janz-cmodio: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:15 +0000 (16:25 +0100)]
mfd: janz-cmodio: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: htc-pasic3: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:14 +0000 (16:25 +0100)]
mfd: htc-pasic3: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: htc-i2cpld: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:13 +0000 (16:25 +0100)]
mfd: htc-i2cpld: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: htc-egpio: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:12 +0000 (16:25 +0100)]
mfd: htc-egpio: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: davinci_voicecodec: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:11 +0000 (16:25 +0100)]
mfd: davinci_voicecodec: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: cros_ec: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:10 +0000 (16:25 +0100)]
mfd: cros_ec: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: asic3: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:09 +0000 (16:25 +0100)]
mfd: asic3: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: adp5520: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:08 +0000 (16:25 +0100)]
mfd: adp5520: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: abx500-core: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:07 +0000 (16:25 +0100)]
mfd: abx500-core: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: ab8500-gpadc: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:06 +0000 (16:25 +0100)]
mfd: ab8500-gpadc: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: ab8500-debug: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:05 +0000 (16:25 +0100)]
mfd: ab8500-debug: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: ab3100-otp: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:04 +0000 (16:25 +0100)]
mfd: ab3100-otp: Convert to managed resources for allocating memory

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: tps65912: Convert to managed resources for allocating memory
Lee Jones [Thu, 23 May 2013 15:25:02 +0000 (16:25 +0100)]
mfd: tps65912: Convert to managed resources for allocating memory

Saves on code and simplifies the driver, as these resources are now
tracked and freed automatically when the driver is realised.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agoMerge branch 'for-mfd-next' of git://git.linaro.org/people/ljones/linux-3.0-ux500
Samuel Ortiz [Thu, 13 Jun 2013 10:06:15 +0000 (12:06 +0200)]
Merge branch 'for-mfd-next' of git://git.linaro.org/people/ljones/linux-3.0-ux500

11 years agomfd: 88pm860x: Use devm_regmap_init_i2c()
Sachin Kamat [Wed, 12 Jun 2013 08:25:43 +0000 (13:55 +0530)]
mfd: 88pm860x: Use devm_regmap_init_i2c()

devm_regmap_init_i2c() is device managed and makes cleanup simpler.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: ab8500-core: Add AB8500 external regulators as MFD devices
Lee Jones [Fri, 7 Jun 2013 15:07:47 +0000 (16:07 +0100)]
mfd: ab8500-core: Add AB8500 external regulators as MFD devices

The AB8500 external regulator driver is now a device in its own right,
so it requires registering and probing in the normal way. This patch
will ensure the driver is probed once registered for all devices which
support them.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: dbx500-prcmu: Use correct names for clock management registers
Lee Jones [Thu, 6 Jun 2013 11:21:13 +0000 (12:21 +0100)]
mfd: dbx500-prcmu: Use correct names for clock management registers

... as stipulated by the Hardware Specification document.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: Replace strict_strtoul() with kstrtoul() in ab* and att*
Jingoo Han [Tue, 4 Jun 2013 04:11:50 +0000 (13:11 +0900)]
mfd: Replace strict_strtoul() with kstrtoul() in ab* and att*

The usage of strict_strtoul() is not preferred, because
strict_strtoul() is obsolete. Thus, kstrtoul() should be
used.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: ab8500-core: Add of_compatible property for ab8500-codec
Fabio Baltieri [Thu, 30 May 2013 13:27:45 +0000 (15:27 +0200)]
mfd: ab8500-core: Add of_compatible property for ab8500-codec

Add of_compatible string to the ab8500-codec cell to allow the driver to
grab handlers such as regulators from device-tree when available.

Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: ab8500-core: Add device for new RTC version for AB8540 cut2
Alexandre Torgue [Fri, 24 May 2013 09:59:47 +0000 (11:59 +0200)]
mfd: ab8500-core: Add device for new RTC version for AB8540 cut2

AB8540 RTC have changed between AB8540_cut1 and AB8540_cut2.Different
ressources to define for those two version.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Julien Delacou <julien.delacou@stericsson.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agomfd: ab8500-core: Drop references to ab8500-leds
Lee Jones [Thu, 13 Jun 2013 09:48:11 +0000 (10:48 +0100)]
mfd: ab8500-core: Drop references to ab8500-leds

The ab8500-leds driver has never been upstreamed and was replaced by a
PWM framework based driver, so these references are not needed anymore.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
11 years agoMerge tag 'mfd-arizona-v3.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git...
Samuel Ortiz [Thu, 13 Jun 2013 09:19:45 +0000 (11:19 +0200)]
Merge tag 'mfd-arizona-v3.10-rc2' of git://git./linux/kernel/git/broonie/misc

mfd: arizona: Updates for v3.10

A bunch of enhancements and fixes for the arizona devices, adding a few
new features (the main one being device tree) and improving robustness.

11 years agoiio: ti_am335x_adc: check if we found the value
Sebastian Andrzej Siewior [Wed, 29 May 2013 16:49:55 +0000 (18:49 +0200)]
iio: ti_am335x_adc: check if we found the value

Usually we get all the values we wanted but it is possible, that te ADC
unit is busy performing the conversation for the HW events. In that case
-EBUSY is returned and the user may re-call the function.

Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoiio: ti_am335x_adc: Allow to specify input line
Sebastian Andrzej Siewior [Wed, 29 May 2013 15:39:02 +0000 (17:39 +0200)]
iio: ti_am335x_adc: Allow to specify input line

The TSC part allows to specify the input lines. The IIO part assumes
that it usues always the last few, that means if IIO has adc-channels
set to 2 it will use channel 6 and 7. However it might make sense to use
only 6.
This patch changes the device property (which was introduced recently
and was never in an official release) in a way that the user can specify
which of the AIN lines should be used. In Addition to this, the name is
now AINx where x is the channel number i.e. for AIN6 we would have 6.
Prior this, it always started counting at 0 which is confusing. In
addition to this, it also checks for correct step number during reading
and does not rely on proper FIFO depth.

Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am335x_tsc: return IRQ_NONE if there was no IRQ for us
Sebastian Andrzej Siewior [Wed, 5 Jun 2013 14:30:00 +0000 (16:30 +0200)]
input: ti_am335x_tsc: return IRQ_NONE if there was no IRQ for us

The previous patch ("input/ti_am335x_tsc: ACK the HW_PEN irq in ISR")
acked the interrupt so we don't freeze if we don't handle an enabled
interrupt source. The interrupt core has a mechanism for this and to get
it work one should only say that it handled an interrupt if it is
actually the case.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am335x_tsc: ACK the HW_PEN irq in ISR
Sebastian Andrzej Siewior [Wed, 5 Jun 2013 14:23:18 +0000 (16:23 +0200)]
input: ti_am335x_tsc: ACK the HW_PEN irq in ISR

The interrupt source IRQENB_HW_PEN is enabled in suspend and suposed to
be used as a wake up source. Once this interrupt source is unmaksed, the
devices ends up in ISR and never continues.
This change ACKs the interrupt and disables it so the system does not
freeze.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am335x_adc: use only FIFO0 and clean up a little
Sebastian Andrzej Siewior [Wed, 29 May 2013 12:46:21 +0000 (14:46 +0200)]
input: ti_am335x_adc: use only FIFO0 and clean up a little

The driver programs a threshold of "coordinate_readouts" say 5. The
REG_FIFO0THR registers says it should it be programmed to "threshold
minus one". The driver does not expect just 5 coordinates but 5 * 2 + 2.
Multiplied by two because 5 for X and 5 for Y and plus 2 because we have
two Z.
The whole thing kind of works because It reads the 5 coordinates for X
and Y from FIFO0 and FIFO1 and the last element in each FIFO is ignored
within the loop and read later.
Nothing guaranties that FIFO1 is ready by the time it is read. In fact I
could see that that FIFO1 reaturns for Y channels 8,9, 10, 12, 6 and for
Y channel 7 for Z. The problem is that channel 7 and channel 12 got
somehow mixed up.
The other Problem is that FIFO1 is also used by the IIO part leading to
wrong results if both (tsc & adc) are used.

The patch tries to clean up the whole thing a little:
- Remove the +1 and -1 in REG_STEPCONFIG, REG_STEPDELAY and its counter
  part in the for loop. This is just confusing.

- Use only FIFO0 in TSC. The fifo has space for 64 entries so should be
  fine.

- Read the whole FIFO in one function and check the channel.

- in case we dawdle around, make sure we only read a multiple of our
  coordinate set. On the second interrupt we will cleanup the remaining
  enties.

Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agomfd: iio: ti_am335x_adc: rename device from tiadc to TI-am335x-adc
Sebastian Andrzej Siewior [Mon, 27 May 2013 15:12:52 +0000 (17:12 +0200)]
mfd: iio: ti_am335x_adc: rename device from tiadc to TI-am335x-adc

TI-adc reads a little better compared to tiadc. And if we add am335x to
it then we have the same naming scheme as the tsc side.

Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agomfd: input: ti_am335x_tsc: rename device from tsc to TI-am335x-tsc
Sebastian Andrzej Siewior [Mon, 27 May 2013 15:08:28 +0000 (17:08 +0200)]
mfd: input: ti_am335x_tsc: rename device from tsc to TI-am335x-tsc

tsc is a very generic name. This patch adds a TI and HW prefix to it
less generic.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: mfd: ti_am335x_tsc remove remaining platform data pieces
Sebastian Andrzej Siewior [Tue, 21 May 2013 16:49:58 +0000 (18:49 +0200)]
input: mfd: ti_am335x_tsc remove remaining platform data pieces

The two header files removed here are unused and have no users as this
platform was never used with platform devices.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoarm: am33xx: add TSC/ADC mfd device support
Patil, Rachna [Thu, 24 Jan 2013 03:45:12 +0000 (03:45 +0000)]
arm: am33xx: add TSC/ADC mfd device support

Add support for core multifunctional device along
with its clients touchscreen and ADC.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
11 years agomfd: ti_tscadc: deal with partial activation
Pantelis Antoniou [Sat, 13 Oct 2012 13:37:24 +0000 (16:37 +0300)]
mfd: ti_tscadc: deal with partial activation

Fix the mfd device in the case where a subdevice might not be activated.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoiio: ti_tscadc: provide datasheet_name and scan_type
Pantelis Antoniou [Sat, 13 Oct 2012 13:37:24 +0000 (16:37 +0300)]
iio: ti_tscadc: provide datasheet_name and scan_type

This patch provides the members "datasheet_name" and scan_type. This is
the remaining part of the earlier patch where I (bigeasy) removed iio_map
because it is now supplied by the device tree. It also static names as
suggested by Jonathan.

Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agomfd: ti_am335x_tscadc: remove platform_data support
Sebastian Andrzej Siewior [Tue, 21 May 2013 15:56:49 +0000 (17:56 +0200)]
mfd: ti_am335x_tscadc: remove platform_data support

This patch removes access to platform data mfd_tscadc_board because the
platform is DT only.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agomfd: ti_am335x_tscadc: Add DT support
Patil, Rachna [Thu, 24 Jan 2013 03:45:09 +0000 (03:45 +0000)]
mfd: ti_am335x_tscadc: Add DT support

Add DT support in the MFD core driver. The node name is "am3359" because
it was tested on this platform.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoiio: ti_am335x_adc: remove platform_data support
Sebastian Andrzej Siewior [Tue, 21 May 2013 15:49:22 +0000 (17:49 +0200)]
iio: ti_am335x_adc: remove platform_data support

This patch removes access to platform data mfd_tscadc_board because the
platform is DT only.

Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoiio: ti_am335x_adc: Add DT support
Patil, Rachna [Thu, 24 Jan 2013 03:45:11 +0000 (03:45 +0000)]
iio: ti_am335x_adc: Add DT support

Add DT support for client ADC driver.

Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am33x_tsc: remove platform_data support
Sebastian Andrzej Siewior [Tue, 21 May 2013 15:39:13 +0000 (17:39 +0200)]
input: ti_am33x_tsc: remove platform_data support

This patch removes access to platform data mfd_tscadc_board because the
platform is DT only.

Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am33x_tsc: Add DT support
Patil, Rachna [Thu, 24 Jan 2013 03:45:10 +0000 (03:45 +0000)]
input: ti_am33x_tsc: Add DT support

This patch adds DT support to touch driver. It also provides a binding
document which is used by the MFD and IIO part of the device.
This patch also renames steps_to_configure to coordinate_readouts
because the original name misleads the purpose of the variable.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am33x_tsc: remove unwanted fifo flush
Patil, Rachna [Thu, 24 Jan 2013 03:45:07 +0000 (03:45 +0000)]
input: ti_am33x_tsc: remove unwanted fifo flush

When touchscreen and ADC are used together, this
unwanted fifo flush leads to loss of ADC data.

Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am33x_tsc: Order of TSC wires, made configurable
Patil, Rachna [Thu, 24 Jan 2013 03:45:06 +0000 (03:45 +0000)]
input: ti_am33x_tsc: Order of TSC wires, made configurable

The current driver expected touchscreen input
wires(XP,XN,YP,YN) to be connected in a particular order.
Making changes to accept this as platform data.

Sebastian reworked the original patch and removed a lot of the not
required pieces.

Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoinput: ti_am33x_tsc: Step enable bits made configurable
Patil, Rachna [Thu, 24 Jan 2013 03:45:05 +0000 (03:45 +0000)]
input: ti_am33x_tsc: Step enable bits made configurable

Current code has hard coded value written to
step enable bits. Now the bits are updated based
on how many steps are needed to be configured got
from platform data.

The user needs to take care not to exceed
the count more than 16. While using ADC and TSC
one should take care to set this parameter correctly.

Sebastian added the common lock and moved the code, that manipulates the
steps, from into the mfd module.

Signed-off-by: Patil, Rachna <rachna@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agomfd: input: iio: ti_am335x_adc: use one structure for ti_tscadc_dev
Sebastian Andrzej Siewior [Wed, 5 Jun 2013 14:13:47 +0000 (16:13 +0200)]
mfd: input: iio: ti_am335x_adc: use one structure for ti_tscadc_dev

The mfd driver creates platform data for the child devices and it is the
ti_tscadc_dev struct. This struct is copied for the two devices.
The copy of the structure makes a common lock in this structure a little
less usefull. Therefore the platform data is not a pointer to the
structure and the same structure is used.
While doing the change I noticed that the suspend/resume code assumes
the wrong pointer for ti_tscadc_dev and this has been fixed as well.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
11 years agoMAINTAINERS: Add Lee Jones as the MFD co-maintainer
Samuel Ortiz [Thu, 16 May 2013 22:53:42 +0000 (00:53 +0200)]
MAINTAINERS: Add Lee Jones as the MFD co-maintainer

Lee Jones from Linaro offered to help me with maitaining the MFD drivers.
Also, fix the MFD tree URLs.

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: jz4740-adc: Use clk_prepare_enable/clk_disable_unprepare
Lars-Peter Clausen [Sun, 12 May 2013 18:05:48 +0000 (20:05 +0200)]
mfd: jz4740-adc: Use clk_prepare_enable/clk_disable_unprepare

In preparation to switching the jz4740 clk driver to the common clk framework
update the clk enable/disable calls to clk_prepare_enable/clk_disable_unprepare.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: max77687: Add registration of max77686-clk
Olof Johansson [Fri, 10 May 2013 17:11:59 +0000 (10:11 -0700)]
mfd: max77687: Add registration of max77686-clk

The MAX77686 clock driver has been in-tree for over 6 months, but never
actually enabled through the MFD registration before.

Add it to the table so the device will probe and configure properly.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: wm8994: Emulate level triggered interrupts if required
Mark Brown [Mon, 6 May 2013 15:12:56 +0000 (16:12 +0100)]
mfd: wm8994: Emulate level triggered interrupts if required

The interrupt controller on the wm8994 series of devices requires a level
triggered parent. If one is not available but a GPIO is available for the
interrupt then emulate.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: cros_ec: Fix Kconfig typo - s/ned/need/
Geert Uytterhoeven [Mon, 6 May 2013 07:46:29 +0000 (09:46 +0200)]
mfd: cros_ec: Fix Kconfig typo - s/ned/need/

Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: tc6393xb: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:14:14 +0000 (13:14 +0900)]
mfd: tc6393xb: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: tc6387xb: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:13:05 +0000 (13:13 +0900)]
mfd: tc6387xb: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: t7l66xb: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:12:24 +0000 (13:12 +0900)]
mfd: t7l66xb: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: mcp-sa11x0: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:09:57 +0000 (13:09 +0900)]
mfd: mcp-sa11x0: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030-madc: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:08:08 +0000 (13:08 +0900)]
mfd: twl4030-madc: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl4030-audio: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:06:31 +0000 (13:06 +0900)]
mfd: twl4030-audio: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: jz4740-adc: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:05:43 +0000 (13:05 +0900)]
mfd: jz4740-adc: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: intel_msic: Remove unnecessary platform_set_drvdata()
Jingoo Han [Mon, 6 May 2013 04:04:25 +0000 (13:04 +0900)]
mfd: intel_msic: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: lpc_ich: Add support for Intel Avoton SoC
James Ralston [Thu, 9 May 2013 19:38:53 +0000 (12:38 -0700)]
mfd: lpc_ich: Add support for Intel Avoton SoC

This patch adds the LPC Controller Device IDs for Watchdog and GPIO for
Intel Avoton SoC, to the lpc_ich driver.

Signed-off-by: James Ralston <james.d.ralston@intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: twl-core: Convert to module_i2c_driver()
Grygorii Strashko [Tue, 23 Apr 2013 13:19:10 +0000 (16:19 +0300)]
mfd: twl-core: Convert to module_i2c_driver()

Shift TWL initialization to module/device init layer, because I2C now is
not initialized on subsys init layer and shifted to module/device init
layer instead.

The I2C <--> TWL dependency should be resolved in drivers/Makefile now.

Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: rtsx: Add support for RTL8411B
Roger Tseng [Fri, 19 Apr 2013 13:52:42 +0000 (21:52 +0800)]
mfd: rtsx: Add support for RTL8411B

Adding support of model RTL8411B. Since the model is similar to RTL8411,
differences are implemented in rtl8411.c.

Signed-off-by: Roger Tseng <rogerable@realtek.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: sec-core: Remove explicit call to mfd_remove_devices
Leon Romanovsky [Wed, 15 May 2013 15:00:48 +0000 (18:00 +0300)]
mfd: sec-core: Remove explicit call to mfd_remove_devices

In case mfd_add_devices will fail, it will call to mfd_remove_devices
by itself and return non-zero value.

Signed-off-by: Leon Romanovsky <leon@leon.nu>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agomfd: Move ssbi driver into drivers/mfd
Arnd Bergmann [Mon, 29 Apr 2013 22:00:19 +0000 (00:00 +0200)]
mfd: Move ssbi driver into drivers/mfd

There is no reason for ssbi to have its own top-level driver directory
when the only users of this interface are all MFD drivers. The only
mainline driver using it at the moment (PM8921) is marked broken and in
fact does not compile. I have verified that fixing the trivial build
breakage in pm8921 links in the new ssbi code just fine, but that
can be a separate patch.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: David Brown <davidb@codeaurora.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
11 years agoLinux 3.10-rc5
Linus Torvalds [Sun, 9 Jun 2013 00:41:04 +0000 (17:41 -0700)]
Linux 3.10-rc5

11 years agohpfs: fix warnings when the filesystem fills up
Mikulas Patocka [Sat, 8 Jun 2013 23:25:57 +0000 (01:25 +0200)]
hpfs: fix warnings when the filesystem fills up

This patch fixes warnings due to missing lock on write error path.

  WARNING: at fs/hpfs/hpfs_fn.h:353 hpfs_truncate+0x75/0x80 [hpfs]()
  Hardware name: empty
  Pid: 26563, comm: dd Tainted: P           O 3.9.4 #12
  Call Trace:
    hpfs_truncate+0x75/0x80 [hpfs]
    hpfs_write_begin+0x84/0x90 [hpfs]
    _hpfs_bmap+0x10/0x10 [hpfs]
    generic_file_buffered_write+0x121/0x2c0
    __generic_file_aio_write+0x1c7/0x3f0
    generic_file_aio_write+0x7c/0x100
    do_sync_write+0x98/0xd0
    hpfs_file_write+0xd/0x50 [hpfs]
    vfs_write+0xa2/0x160
    sys_write+0x51/0xa0
    page_fault+0x22/0x30
    system_call_fastpath+0x1a/0x1f

Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Cc: stable@kernel.org # 2.6.39+
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>