summaryrefslogtreecommitdiffstats
path: root/drivers/mfd/lpc_sch.c
Commit message (Collapse)AuthorAgeFilesLines
* mfd: lpc_sch: Accomodate partial population of the MFD devicesDarren Hart2013-02-141-76/+71
| | | | | | | | | | | | | | | | | | | | | The current probe aborts if any of the 3 base address registers are disabled. On a TunnelCreek system I am working on, this resulted in the SMBIOS and GPIO devices being removed when it couldn't read the base address for the watchdog timer. This patch accommodates partial population of the lpc_sch_cells array and only aborts if all the base address registers are disabled. A max size array is allocated and the individual device cells are added to it after their base addresses are successfully determined. This simplifies the code a bit by removing the need for the separate tunnelcreek cells array and combining some of the add/remove logic. Cc: Grant Likely <grant.likely@secretlab.ca>, Cc: Denis Turischev <denis@compulab.co.il>, Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: remove use of __devexitBill Pemberton2012-11-281-1/+1
| | | | | | | | | | | | | | | CONFIG_HOTPLUG is going away as an option so __devexit is no longer needed. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org> Acked-by: David Brown <davidb@codeaurora.org> Acked-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* mfd: remove use of __devinitBill Pemberton2012-11-281-1/+1
| | | | | | | | | | | | | | CONFIG_HOTPLUG is going away as an option so __devinit is no longer needed. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org> Acked-by: David Brown <davidb@codeaurora.org> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* mfd: remove use of __devexit_pBill Pemberton2012-11-281-1/+1
| | | | | | | | | | | | | | | CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer needed. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org> Acked-by: David Brown <davidb@codeaurora.org> Acked-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* mfd: core: Push irqdomain mapping out into devicesMark Brown2012-09-151-2/+4
| | | | | | | | | | | | | | | | | | | | | Currently the MFD core supports remapping MFD cell interrupts using an irqdomain but only if the MFD is being instantiated using device tree and only if the device tree bindings use the pattern of registering IPs in the device tree with compatible properties. This will be actively harmful for drivers which support non-DT platforms and use this pattern for their DT bindings as it will mean that the core will silently change remapping behaviour and it is also limiting for drivers which don't do DT with this particular pattern. There is also a potential fragility if there are interrupts not associated with MFD cells and all the cells are omitted from the device tree for some reason. Instead change the code to take an IRQ domain as an optional argument, allowing drivers to take the decision about the parent domain for their interrupts. The one current user of this feature is ab8500-core, it has the domain lookup pushed out into the driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Change tunnelcreek watchdog name on the lpc_sch subdevices arrayWim Van Sebroeck2012-05-201-1/+1
| | | | | | | | The name of the tunnelcreek watchdog device is not tunnelcreek_wdt but ie6xx_wdt. Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* lpc_sch: Add Intel Centerton Multifunction Device supportSeth Heasley2012-05-091-2/+9
| | | | | | | | | This patch adds the Intel Centerton processor DeviceID for the Integrated Legacy Block (ILB). The ILB provides GPIO, SMBus, and Watchdog functionality. Signed-off-by: Seth Heasley <seth.heasley@intel.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Use module_pci_driverAxel Lin2012-05-011-12/+1
| | | | | | | | | | | | | This patch converts the drivers in drivers/mfd/* to use module_pci_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Cc: Andres Salomon <dilinger@queued.net> Cc: Ira W. Snyder <iws@ovro.caltech.edu> Cc: Florian Fainelli <florian@openwrt.org> Cc: Denis Turischev <denis@compulab.co.il> Cc: Harald Welte <HaraldWelte@viatech.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Convert to DEFINE_PCI_DEVICE_TABLEAxel Lin2012-01-091-1/+1
| | | | | | | | | | | | | | Convert static struct pci_device_id *[] to static DEFINE_PCI_DEVICE_TABLE tables. Cc: Andres Salomon <dilinger@queued.net> Cc: Denis Turischev <denis@compulab.co.il> Cc: Ben Dooks <ben@simtec.co.uk> Cc: Vincent Sanders <vince@simtec.co.uk> Cc: Mocean Laboratories <info@mocean-labs.com> Cc: Harald Welte <HaraldWelte@viatech.com> Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Add tunnelcreek watchdog to lpc_sch devicesAlexander Stein2011-07-311-1/+48
| | | | | | | Tunnel Creek has an additional watchdog core. Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Add Tunnel Creek support to lpc_schDenis Turischev2011-03-231-1/+6
| | | | | | | | | | Intel Poulsbo SCH and Tunnel Creek provide almost the same LPC interface. Use the same driver for both devices while storing PCI ID to distinguish between platforms to apply plarform related quirks. Signed-off-by: Denis Turischev <denis@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Introduce lpc_sch for Intel SCH LPC bridgeDenis Turischev2010-03-071-0/+133
Intel Poulsbo (SCH) chipset LPC bridge controller contains several functions. Creating and MFD driver for the LPC bridge controller allows simultaneous use of SMBus and GPIO interfaces on the SCH. Signed-off-by: Denis Turischev <denis@compulab.co.il> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>