aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-04-26mfd: vexpress: Handle pending config transactionsPawel Moll1-14/+21
The config transactions "scheduler" was hopelessly broken, repeating completed transaction instead of picking up next pending one. Fixed now. Also improved debug messages. Signed-off-by: Pawel Moll <[email protected]> Reviewed-by: Jon Medhurst <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-26mfd: ab8500: Export ab8500_gpadc_sw_hw_convert properlyArnd Bergmann1-1/+1
Apparently the ab8500_gpadc_sw_hw_convert function got renamed from ab8500_gpadc_convert to ab8500_gpadc_sw_hw_convert in commit 734823462 "mfd: ab8500-gpadc: Add gpadc hw conversion", but the export for this function did not get changed at the same time, causing this allyesconfig error: ERROR: "ab8500_gpadc_sw_hw_convert" [drivers/hwmon/ab8500.ko] undefined! This patch fixes the export. Signed-off-by: Arnd Bergmann <[email protected]> Cc: M'boumba Cedric Madianga <[email protected]> Cc: Lee Jones <[email protected]> Cc: Mattias WALLIN <[email protected]> Cc: Michel JAOUEN <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: si476x: Fix i2c warningHans Verkuil1-1/+1
drivers/mfd/si476x-i2c.c: In function ‘si476x_core_drain_rds_fifo’: drivers/mfd/si476x-i2c.c:391:4: warning: field width specifier ‘*’ expects +argument of type ‘int’, but argument 4 has type ‘long unsigned int’ [-Wformat] Acked-by: Andrey Smirnov <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: si476x: Add header files and Kbuild plumbingAndrey Smirnov5-0/+980
This patch adds all necessary header files and Kbuild plumbing for the core driver for Silicon Laboratories Si476x series of AM/FM tuner chips. The driver as a whole is implemented as an MFD device and this patch adds a core portion of it that provides all the necessary functionality to the two other drivers that represent radio and audio codec subsystems of the chip. Acked-by: Hans Verkuil <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Andrey Smirnov <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: si476x: Add chip properties handling codeAndrey Smirnov1-0/+241
This patch adds code related to manipulation of the properties of SI476X chips. Acked-by: Hans Verkuil <[email protected]> Signed-off-by: Andrey Smirnov <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: si476x: Add the bulk of the core driverAndrey Smirnov1-0/+886
This patch adds main part(out of three) of the I2C driver for the "core" of MFD device. Acked-by: Hans Verkuil <[email protected]> Signed-off-by: Andrey Smirnov <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: si476x: Add commands abstraction layerAndrey Smirnov1-0/+1553
This patch adds all the functions used for exchanging commands with the chip. Acked-by: Hans Verkuil <[email protected]> Signed-off-by: Andrey Smirnov <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: rtsx: Support RTS5249Wei WANG5-1/+284
RTS5249 supports SD UHS-II interface. In order to support SD UHS-II,the definitions of some internal registers of RTS5249 have to be modified and are different from its predecessors. So we need this patch to ensure RTS5249 can work, even SD/MMC stack doesn't support UHS-II interface. Signed-off-by: Wei WANG <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: retu: Add Tahvo supportAaro Koskinen3-14/+85
Tahvo is a multi-function device on Nokia 770, implementing USB transceiver and charge/battery control. It's so close to Retu that a single driver can support both. Signed-off-by: Aaro Koskinen <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: ucb1400: Pass ucb1400-gpio data through ac97 busMarek Vasut3-25/+17
Cc: Jean Delvare <[email protected]> Cc: Guenter Roeck <[email protected]> Cc: Grant Likely <[email protected]> Acked-by: Linus Walleij <[email protected]> Reviewed-by: Mark Brown <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: wm8994: Add some OF propertiesMark Brown2-3/+128
Add properties for some of the more important bits of platform data and fill out the binding document. Not all of the current platform data is suitable for the sort of fixed configuration that is done using DT, some of it should have runtime mechanisms added instead and some is unlikely to ever be used in practical systems. Signed-off-by: Mark Brown <[email protected]> Reviewed-by: Sylwester Nawrocki <[email protected]> Tested-by: Sylwester Nawrocki <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19mfd: wm8994: Add device ID data to WM8994 OF device IDsMark Brown1-3/+3
We can actually read this back from the device but we use this when registered using standard I2C board data registration so make sure it's there for OF too. Signed-off-by: Mark Brown <[email protected]> Tested-by: Sylwester Nawrocki <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-19input: Export matrix_keypad_parse_of_params()Michal Marek1-0/+1
Couple of input drivers depend on this symbol: ERROR: "matrix_keypad_parse_of_params" [drivers/input/keyboard/tca8418_keypad.ko] undefined! ERROR: "matrix_keypad_parse_of_params" [drivers/input/keyboard/cros_ec_keyb.ko] undefined! Reported-by: Randy Dunlap <[email protected]> Acked-by: Dmitry Torokhov <[email protected]> Acked-by: Randy Dunlap <[email protected]> Acked-by: Simon Glass <[email protected]> Signed-off-by: Michal Marek <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-11mfd: tps65090: Add compatible string for charger subnodeRhyland Klein1-0/+1
This patch adds the of_compatible value for the tps65090 charger subnode used when loading the driver to find its properties and of_node. Signed-off-by: Rhyland Klein <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: db8500-prcmu: Support platform dependant device selectionLee Jones1-8/+24
The main aim for this cycle is to have the u8540 booting to a console. However, the u8540 doesn't support all of the u8500 platform devices yet. After this stage is complete we can then fill in the inadequacies, such as specific clock support at a later date. To achieve this we're placing devices supported by all platforms into a common device structure and the remaining ones into a platform specific one. Cc: Samuel Ortiz <[email protected]> Signed-off-by: Lee Jones <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: syscon: Fix warnings when printing resource_size_tAlexander Shiyan1-1/+1
Gets rid of these warnings when compile module for 64 bit targets: CC drivers/mfd/syscon.o drivers/mfd/syscon.c: In function 'syscon_probe': drivers/mfd/syscon.c:155:2: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'resource_size_t' [-Wformat] drivers/mfd/syscon.c:155:2: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'resource_size_t' [-Wformat] Signed-off-by: Alexander Shiyan <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09of: Add stub of_get_parent for non-OF buildsAlexander Shiyan1-0/+5
Fixes build error on x86_64 allmodconfig, introduced by commit 5ab3a89a741f ("mfd: syscon: Add non-DT support"). drivers/regulator/anatop-regulator.c: In function 'anatop_regulator_probe': drivers/regulator/anatop-regulator.c:134:2: error: implicit declaration of function 'of_get_parent' [-Werror=implicit-function-declaration] Signed-off-by: Alexander Shiyan <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-tll: Convert to devm_ioremap_resource()Sachin Kamat1-6/+3
Use the newly introduced devm_ioremap_resource() instead of devm_request_and_ioremap() which provides more consistent error handling. devm_ioremap_resource() provides its own error messages; so all explicit error messages can be removed from the failure code paths. Signed-off-by: Sachin Kamat <[email protected]> Acked-by: Roger Quadros <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-host: Convert to devm_ioremap_resource()Sachin Kamat1-5/+4
Use the newly introduced devm_ioremap_resource() instead of devm_request_and_ioremap() which provides more consistent error handling. devm_ioremap_resource() provides its own error messages; so all explicit error messages can be removed from the failure code paths. Signed-off-by: Sachin Kamat <[email protected]> Acked-by: Roger Quadros <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: Kconfig alphabetical re-orderingSamuel Ortiz1-677/+680
Ordering so many Kconfig alphabetically makes it a lot easier to read e.g. from menuconfig. Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: support stmpe1801 18 bits enhanced port expanderJean-Nicolas Graux5-1/+150
Provides support for 1801 variant of stmpe gpio port expanders. This chip has 18 gpios configurable as GPI, GPO, keypad matrix, special key or dedicated key function. Note that special/dedicated key function is not supported yet. Signed-off-by: Jean-Nicolas Graux <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: stmpe: Use spi_get_drvdata()Jingoo Han1-1/+1
Use the wrapper functions for getting and setting the driver data using spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we can directly pass a struct spi_device. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: arizona: Use spi_get_drvdata()Jingoo Han1-1/+1
Use the wrapper functions for getting and setting the driver data using spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we can directly pass a struct spi_device. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: mc13xxx: Use spi_get_drvdata() and spi_set_drvdata()Jingoo Han1-3/+3
Use the wrapper functions for getting and setting the driver data using spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we can directly pass a struct spi_device. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: ezx-pcap: Use spi_get_drvdata() and spi_set_drvdata()Jingoo Han1-2/+2
Use the wrapper functions for getting and setting the driver data using spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we can directly pass a struct spi_device. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: da9052: Use spi_get_drvdata() and spi_set_drvdata()Jingoo Han1-2/+2
Use the wrapper functions for getting and setting the driver data using spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we can directly pass a struct spi_device. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: wm831x: Use spi_get_drvdata() and spi_set_drvdata()Jingoo Han1-3/+3
Use the wrapper functions for getting and setting the driver data using spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we can directly pass a struct spi_device. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: vexpress: Give the "leds-gpio" device a real parentPawel Moll1-2/+2
The registration of the "leds-gpio" device was using "vexpress_sysreg_dev" as a parent before it was actually set to something different than NULL. Trivial fix by reordering the code. Reported-by: Lorenzo Pieralisi <[email protected]> Signed-off-by: Pawel Moll <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: ab8500: sysctrl: Initialize driver at arch_initcallUlf Hansson1-1/+1
The abx500-clk driver is initiated at arch_initcall level. Moreover it is relying on the ab8500-sysctrl API to be available. Therefore move ab8500-sysctrl to arch_initcall level as well. The device is already added before the abx500 clk device, thus it will be probed before as well, which is exactly what we want. Signed-off-by: Ulf Hansson <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: db8500-prcmu: Return early if the TCPM cannot be locatedLee Jones1-19/+21
Currently we check to see if we obtained the Tightly Coupled Program Memory (TCPM) base and only execute the code within the check if we have it. It's more traditional to return early if we don't have it. This way we can flatten most of the function's code down to a single tab spacing. Signed-off-by: Lee Jones <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: syscon: Add missing struct device_node declarationSylwester Nawrocki1-0/+2
syscon.h header uses struct device_node in functions' declarations without declaring it. This causes compilation warnings like: include/linux/mfd/syscon.h:20: warning: ‘struct device_node’ declared inside parameter list include/linux/mfd/syscon.h:20: warning: its scope is only this definition or declaration, which is probably not what you want Fix it by adding a forward declaration of struct device_node. Signed-off-by: Sylwester Nawrocki <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Acked-by: Dong Aisheng <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: ab8500-core: Add of_compatilbe property for ab8500-usbFabio Baltieri1-0/+1
Add of_comptabile string to the ab8500-usb cell to allow the driver to grab properties from device-tree when available. Signed-off-by: Fabio Baltieri <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-host: Add device tree support and binding informationRoger Quadros2-6/+235
Allows the OMAP HS USB host controller to be specified via device tree. Signed-off-by: Roger Quadros <[email protected]> Reviewed-by: Mark Rutland <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-host: Remove PHY reset handling codeRoger Quadros1-28/+0
PHY reset GPIO handling will be done in the PHY driver Signed-off-by: Roger Quadros <[email protected]> Acked-by: Felipe Balbi <[email protected]> Acked-by: Samuel Ortiz <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: wm8994: Don't use system PM operationsMark Brown1-3/+4
For realistic systems the power management is controlled entirely via runtime PM - if the device is not runtime suspended then the suspend will abort without doing anything as functionality such as accessory detection or audio bypass will require the device to be enabled while if the device is runtime suspended it is already in the lowest power state. This means that system suspend is redundant and can be removed which avoids issues with attempting to double disable the regulators. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: ab8500-core: Ignore masked out interruptsFabio Baltieri1-13/+14
AB8500 asserts LATCH bits for masked out interrupts. This patch explicitly masks those out using the cached mask value to prevent handle_nested_irq() being called for masked IRQ on the same register as unmasked ones. Acked-by: Linus Walleij <[email protected]> Signed-off-by: Fabio Baltieri <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: Remove twelve unused Kconfig symbolsPaul Bolle3-53/+0
Twelve Kconfig symbols, all related to WM8350, WM8351, and WM8352, are unused. Commit 19d57ed5a308472a02e773f33c03ad4cb2ec6a9 ("mfd: Remove custom wm8350 cache implementation") removed all their (actual) users. Remove these symbols too. Signed-off-by: Paul Bolle <[email protected]> Acked-by: Mark Brown <[email protected]> Acked-by: Kukjin Kim <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: da9055: Change irq state to defaultAshish Jangam1-1/+1
This patch changes the irq state from high to the now default low. Because the default PMIC irq state of DA9055 got changed from high to low. This change should not affect any of the existing users since all of them use active low state. This patch has been tested on smdkv6410. Signed-off-by: Ashish <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-tll: Add device tree support and binding informationRoger Quadros2-0/+27
Allows the OMAP USB TLL module to be specified via device tree. Signed-off-by: Roger Quadros <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-tll: Move configuration code to omap_tll_init()Roger Quadros3-109/+107
This is because we want to get rid of platform_data usage from probe(). The only information we need is PORT_MODE, and this can be supplied to us by the user (i.e. omap-usb-host.c). We also move channel clock management from runtime PM handlers into omap_tll_enable/disable(). Signed-off-by: Roger Quadros <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-09mfd: omap-usb-host: Update nports in platform_dataRoger Quadros1-0/+1
EHCI driver would need to know the number of ports available on the platform. We set the nports parameter of platform_data based on IP version if it was not already provided. Signed-off-by: Roger Quadros <[email protected]> Acked-by: Felipe Balbi <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: da9055: Drop "select PMIC_DA9055"Paul Bolle1-1/+0
The Kconfig entry for DA9055 PMIC Support selects PMIC_DA9055. That was probably inspired by the similar select statement in the entry for DA9052/53 PMIC with I2C. But the DA9055 PMIC only comes in an I2C variant and its driver doesn't need a separate Kconfig symbol for shared code. In any case, this select can be dropped as PMIC_DA9055 doesn't exist. Signed-off-by: Paul Bolle <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: wm5102: Map in additional FLL control registersMark Brown1-0/+8
Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: arizona: Define additional FLL control registersMark Brown1-0/+40
Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: palmas: Initialise client->of_node for dummy created clientLaxman Dewangan1-0/+1
Palmas device have three different i2c addresses. The device creates the two new dummy i2c clients for accessing the register by using primary client adapter. This new dummy i2c client have their of_node as NULL. The dummy i2c client is used for registering interrupt and on this, it creates irq domain handle. This created irq domain handle has their of_node as NULL. Now when any child of this device is registered through the DT as follows: palmas: tps65913@58 { :::::::::::::::::: #interrupt-cells = <2>; interrupt-controller; palmas_rtc { compatible = "ti,palmas-rtc"; interrupt-parent = <&palmas>; interrupts = <8 0>; }; ::::::::::;;; }; And child driver (palam-rtc in this case) get their irq number as irq = platform_get_irq(pdev, 0); The returned irq number is error in this case. The reason is that the created irq_domain handle for the palmas interrupt does not have valid node and so matching of node fails with palmas node. Hence initialising the newly dummy created client->of_node with the primary clients of_node so that irq_domain handle have proper of_node for matching. Signed-off-by: Laxman Dewangan <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: tps65090: Add resources for chargerRhyland Klein1-0/+10
Add irq resources to pass to the charger mfd sub dev so the charger can listen for interrupts. Signed-off-by: Rhyland Klein <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: tps65090: Fix enum in header fileRhyland Klein1-0/+1
The enum is missing the definition for the first bit, which makes all the rest off by one. Add definition for the TPS65090_IRQ_INTERRUPT bit which at 0. Signed-off-by: Rhyland Klein <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: palmas: is_palmas_charger needed by multiple driversIan Lartey1-1/+11
is_palmas_charger checks for the presence of charging functionality in the device Signed-off-by: Graeme Gregory <[email protected]> Signed-off-by: Ian Lartey <[email protected]> Acked-by: Laxman Dewangani <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: sta2x11: Build warning fixAlessandro Rubini1-11/+0
This driver cannot be a module, so "remove" is never called. The mishap is mine, and back then there was no warning due to __devexit(). Signed-off-by: Alessandro Rubini <[email protected]> Acked-by: Giancarlo Asnaghi <[email protected]> Acked-by: Davide Ciminaghi <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-04-08mfd: tc3589x: Use devm_*() functionsJingoo Han1-15/+6
Use devm_*() functions to make cleanup paths more simple. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>