summaryrefslogtreecommitdiff
path: root/drivers/mfd
AgeCommit message (Collapse)AuthorFilesLines
2010-12-22mfd: Support additional parent IDs for wm831xMark Brown1-1/+5
Some newer device revisions add a second parent ID. Support this in the device validity checks done at startup. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-12-22mfd: Fix ab8500-core interrupt ffs bit bugMattias Wallin1-1/+1
We want to find the first set bit on value, not status. Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-12-22mfd: Supply IRQ base for WM832x devicesMark Brown1-1/+1
Without this the IRQ base will not be correctly configured for the subdevices. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix a memory leak when unload mc13xxx-core moduleAxel Lin1-0/+2
Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix resource reclaim for max8998Axel Lin1-0/+4
Properly free irq and unregister max8998->rtc device in max8998_i2c_probe() error path and max8998_i2c_remove(). Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Remove unneeded ret value checking for max8998 register updatesAxel Lin1-2/+0
i2c_smbus_write_byte_data() returns zero or negative value, therefore no need to check if ret is greater than zero or not. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add free max8998->ono irq in max8998_irq_exit()Axel Lin1-0/+3
Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix resource reclaim in pcf50633_remove()Axel Lin1-0/+2
Calling sysfs_remove_group() to remove sysfs entries and unregister bl_pdev in pcf50633_remove(). Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Harald Welte <laforge@gnumonks.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix ezx_pcap_probe error pathAxel Lin1-0/+1
return -ENOMEM if create_singlethread_workqueue failed. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix off-by-one value range checking for tps6507xAxel Lin1-1/+1
If bytes == (TPS6507X_MAX_REGISTER + 1), we have a buffer overflow when doing memcpy(&msg[1], src, bytes). Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Remove __devinitdata from tc6393xb_mmc_resourcesMarek Vasut1-1/+1
This static struct resource tc6393xb_mmc_resources[] is used in resume function, therefore the data can not be wiped after init. Also, this causes a section mismatch. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Acked-by: Ian Molton <ian@mnementh.co.uk> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add WM831x SPI supportMark Brown3-0/+244
Implement support for controlling WM831x and WM832x devices using SPI. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Factor out WM831x I2C I/O from the core driverMark Brown4-139/+158
In preparation for the addition of SPI support for the WM831x move the I2C specific code into a separate file with a separate Kconfig option so the I2C support can be excluded from the build. Also update the 1133-EV1 PMIC module support for SMDK6410 to use the new symbol. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Remove DEBUG defines from mc13xxx-coreSamuel Ortiz1-2/+0
DEBUG and VERBOSE_DEBUG are not used. Reported-by: David Jander <david@protonic.nl> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix jz4740_adc_set_enabledAxel Lin1-1/+1
When enabled is false, clear BIT(engine) of JZ_REG_ADC_ENABLE register. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add TPS658621C device IDAndrew Chew1-1/+3
The interface for this device should be identical to that of the TPS658521A. Signed-off-by: Andrew Chew <achew@nvidia.com> Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix twl-irq function declaration warningsG, Manjunath Kondaiah3-0/+13
Fixes following sparse warnings for twl4030 and twl6030 irq files. drivers/mfd/twl4030-irq.c:783:5: warning: symbol 'twl4030_init_irq' was not declared. Should it be static? drivers/mfd/twl4030-irq.c:863:5: warning: symbol 'twl4030_exit_irq' was not declared. Should it be static? drivers/mfd/twl4030-irq.c:873:5: warning: symbol 'twl4030_init_chip_irq' was not declared. Should it be static? drivers/mfd/twl6030-irq.c:226:5: warning: symbol 'twl6030_init_irq' was not declared. Should it be static? drivers/mfd/twl6030-irq.c:290:5: warning: symbol 'twl6030_exit_irq' was not declared. Should it be static? Signed-off-by: G, Manjunath Kondaiah <manjugk@ti.com> Cc: linux-arm-kernel@lists.infradead.org Cc: Tony Lindgren <tony@atomide.com> Cc: Nishanth Menon <nm@ti.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Support for ICs compliant with max8998Lukasz Majewski1-2/+3
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix TWL4030 COR bit polarity for BCI SIH blockGrazvydas Ignotas1-1/+2
The chip TRM documentation contradicts itself about this bit, page 174 of swcu050e says bit should be 0 for clear-on-read behavior, while page 487 says it should be 1. Testing shows it should be 1, so set the .set_cor flag accordingly. This is needed for upcoming BCI charging driver to function. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add devices platform data when the cell data size is not 0Brian Harring1-4/+6
When the cell data_size is 0, the resulting platform_data pointer will be set to ZERO_SIZE_PTR. That could be misleading for device drivers running a NULL check on thei platform_data pointer before dereferencing it. Signed-off-by: Brian Harring <ferringb@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add twl4030_bci platform_data backGrazvydas Ignotas1-0/+17
Now that we have twl4030 charger driver, add back it's platform_data (which was removed by f7ea2dc59ed46dcd0f1cfaccda02211f4507207b as unused). Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Adding twl6030 mmc card detect support for MMC1kishore kadiyala1-0/+73
Adding card detect callback function and card detect configuration function for MMC1 Controller on OMAP4. Card detect configuration function does initial configuration of the MMC Control & PullUp-PullDown registers of Phoenix. For MMC1 Controller, card detect interrupt source is twl6030 which is non-gpio. The card detect call back function provides card present/absent status by reading MMC Control register present on twl6030. Since OMAP4 doesn't use any GPIO line as used in OMAP3 for card detect, the suspend/resume initialization which was done in omap_hsmmc_gpio_init previously is moved to the probe thus making it generic for both OMAP3 & OMAP4. Cc: Tony Lindgren <tony@atomide.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Madhusudhan Chikkature <madhu.cr@ti.com> Cc: Adrian Hunter <adrian.hunter@nokia.com> Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add mc13892 support to mc13xxxUwe Kleine-König4-746/+848
mc13892 is the companion PMIC for Freescale's i.MX51. It's similar enough to mc13782 to support it in a single driver. This patch introduces enough compatibility cruft to keep all users of the superseded mc13783 driver unchanged. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Remove obsolete mc13783 private dataUwe Kleine-König1-18/+9
The regulator driver was converted to get the needed data directly from platform_data by a10099b (regulator/mc13783: various cleanups) so regulators and num_regulators can go away. Then apart from the flag indicating that the adc does a conversion, flags is only a copy of the flags member of platform_data. This flag isn't needed to be returned by mc13783_get_flags, so mc13783_get_flags now gets the flags from platform_data, too and the driver private member is renamed for clearity. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add VIA VX855 multi-function device supportDaniel Drake3-0/+157
This device has GPIO, SPI and I2C capabilities. The hardware can be found in the OLPC XO-1.5 laptop. Based on earlier work by Harald Welte. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Allow for bypass of cell resource conflict checkDaniel Drake1-3/+5
The upcoming VIA VX855 MFD driver needs to communicate resources to subdevices where the resources may be claimed by ACPI. Add a flag to mfd_cell to request that resources are not policed. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29input: Monitor both onkey up and down eventHaojian Zhuang1-3/+8
Remove original 3-second ONKEY event. Detect ONKEY changing event directly. So both UP and DOWN event of ONKEY in max8925 are monitered. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add WM8325 supportMark Brown1-0/+14
The WM8325 is a PMIC for low power, high performance applications. From a software point of view the device is identical to the WM8320, all the differences are at the hardware level. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix twl-core sparse warningG, Manjunath Kondaiah1-1/+1
Fixes below sparse warning. drivers/mfd/twl-core.c:258:20: warning: symbol 'twl_map' was not declared. Should it be static? Signed-off-by: G, Manjunath Kondaiah <manjugk@ti.com> Cc: linux-arm-kernel@lists.infradead.org Cc: Tony Lindgren <tony@atomide.com> Cc: Nishanth Menon <nm@ti.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Use DMA for timberdale's ks8842Richard Röjfors1-0/+14
This patch defines platform data for the ks8842 int the timberdale MFD. The platform data contains DMA channels to be used by the driver. Signed-off-by: Richard Röjfors <richard.rojfors@pelagicore.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add PM support to STMPE devicesSundar Iyer1-0/+32
Add PM helpers to STMPE and add support to enable wakeup from low power states Acked-by: Rabin VINCENT <rabin.vincent@stericsson.com> Acked-by: Linus WALLEIJ <linus.walleij@stericsson.com> Signed-off-by: Sundar Iyer <sundar.iyer@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: msp430 expects I2C to be built-inSamuel Ortiz1-1/+1
msp430 being a bool, it will only work with I2C=y Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Update kconfig for ab8500 core driverArun Murthy1-1/+1
This patch add a dependancy for ab8500-core driver so as to depend on u8500 platform. This patch also fixes the build issues(powerpc_allyesconfig) for the patch 03f582a93ecca6e9584b622570022abf08ed03ec (misc: Add ab8500 pwm driver) Signed-off-by: Arun Murthy <arun.murthy@stericsson.com> Acked-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add basic tps6586x interrupt supportGary King2-2/+202
Add support for enabling and disabling tps6586x subdevice interrupts Signed-off-by: Gary King <gking@nvidia.com> Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: AB8500 register access via PRCMU I2CMattias Wallin4-4/+121
This patch adds the choice of accessing the AB8500 registers via prcmu I2C. Access either via SPI or I2C is supported. Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Acked-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: AB8500 debugfsMattias Wallin4-0/+666
This patch adds the possibility to read and write registers via the debug_fs. It also adds ranges of registers sorted by bank which makes it possible to read all defined registers in a bank. Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Acked-by: Linus Walleij <linus.walleij@stericsson.com> Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Update chip id of 88pm8607Haojian Zhuang1-2/+5
Chipid of 88pm8607 is 0x40 or 0x50. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29misc: Add ab8500 pwm driverArun Murthy1-1/+12
This patch adds a Pulse Width Modulation driver for Analog Baseband Chip AB8500. Signed-off-by: Arun Murthy <arun.murthy@stericsson.com> Acked-by: Linus Walleij <linus.walleij@stericsson.com> Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Align ab8500 with the abx500 interfaceMattias Wallin2-117/+168
This patch makes the ab8500 mixed signal chip expose the same interface for register access as the ab3100, ab3550 and ab5500 chip. The ab8500_read() and ab8500_write() is removed and replaced with abx500_get_register_interruptible() and abx500_set_register_interruptible(). Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Acked-by: Linus Walleij <linus.walleij@stericsson.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mmc: Allow 2 byte requests in 4-bit mode for tmio_mmcYusuke Goda1-0/+6
Adjust the tmio_mmc block size check to accept 2-byte requests in 4-bit mode if the hardware supports it. Tested with the SDHI hardware block included in sh7724. Signed-off-by: Yusuke Goda <yusuke.goda.sx@renesas.com> Signed-off-by: Matt Fleming <matt@console-pimps.org> Acked-by: Magnus Damm <damm@opensource.se> Tested-by: Arnd Hannemann <arnd@arndnet.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Allow the platform to specify the sh_mobile_sdhi get_cd handlerArnd Hannemann1-0/+13
On some platforms (e.g. AP4EVB) the card detect pin of a slot is not directly connected to the sdhi hardware, so that polling needs to be used with tmio_mmc and card detection is handled in the platform code. This patch allows to set tmio_mmc capabilities (to pass the MMC_CAP_NEEDS_POLL flag) and exposes a get_cd hook for that purpose. Signed-off-by: Arnd Hannemann <arnd@arndnet.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29rtc: Add MAX8998 rtc driverJoonyoung Shim1-1/+23
This adds support for the RTC provided by the Maxim 8998 chip. This driver was tested on a GONI board by using the rtc-test application from the Documentation/rtc.txt. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add MAX8998 interrupts supportJoonyoung Shim4-3/+281
Use genirq and provide seperated file for interrupts support. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Use i2c_client as an argument on MAX8998 i2c routinesJoonyoung Shim1-15/+14
The MAX8998 chip have regulator and rtc features. The i2c slave address of regulator and rtc is different, so needs each i2c client on i2c operation functions. Also, this patch exports i2c operation functions instead of callback to make easy to read. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Remove redundant code to get htc_pasic3 irqAxel Lin1-7/+0
There is no reason to get irq twice. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix tps6586x_add_subdevs error pathAxel Lin1-1/+7
1. return -ENOMEM if platform_device_alloc() fail. 2. call platform_device_put() if platform_device_add() fail. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix pcap_add_subdev error pathAxel Lin1-1/+9
1. return -ENOMEM if platform_device_alloc() fail. 2. call platform_device_put() if platform_device_add() fail. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Fix da903x_add_subdevs error pathAxel Lin1-1/+7
This patch fixes da903x_add_subdevs error path: 1. return -ENOMEM if platform_device_alloc() fail. 2. call platform_device_put() if platform_device_add() fail. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Eric Miao <eric.y.miao@gmail.com> Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Add codec resource into 88pm860x driverHaojian Zhuang1-0/+44
Add codec IRQ resources that are used in 88pm860x codec driver. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-10-29mfd: Free tps6586x allocated resources when unload the moduleAxel Lin1-0/+13
For the resources allocated in tps6586x_i2c_probe(), we need to free it in tps6586x_i2c_remove(). Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>