1. 20 2月, 2019 1 次提交
  2. 14 2月, 2019 1 次提交
    • C
      mfd/sm501: depend on HAS_DMA · d0377392
      Christoph Hellwig 提交于
      Currently the sm501 mfd driver can be compiled without any dependencies,
      but through the use of dma_declare_coherent it really depends on
      having DMA and iomem support.  Normally we don't explicitly require DMA
      support as we have stubs for it if on UML, but in this case the driver
      selects support for dma_declare_coherent and thus also requires
      memmap support.  Guard this by an explicit dependency.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      d0377392
  3. 03 1月, 2019 1 次提交
  4. 23 10月, 2018 2 次提交
  5. 10 9月, 2018 1 次提交
  6. 16 8月, 2018 1 次提交
  7. 04 7月, 2018 1 次提交
  8. 05 6月, 2018 4 次提交
  9. 08 1月, 2018 2 次提交
  10. 15 12月, 2017 1 次提交
  11. 29 11月, 2017 1 次提交
  12. 01 11月, 2017 1 次提交
  13. 13 10月, 2017 4 次提交
  14. 20 9月, 2017 1 次提交
  15. 05 9月, 2017 5 次提交
  16. 04 9月, 2017 1 次提交
  17. 21 8月, 2017 1 次提交
  18. 06 7月, 2017 4 次提交
    • K
      mfd: Add LP87565 PMIC support · 1e349600
      Keerthy 提交于
      The LP87565 chip is a power management IC for Portable Navigation Systems
      and Tablet Computing devices. It contains the following components:
      
              - Configurable Bucks(Single and multi-phase).
              - Configurable General Purpose Output Signals (GPO).
      
      The LP87565-Q1 variant device uses two 2-phase outputs configuration,
      Buck0 is master for Buck0/1 output and Buck2 is master for Buck2/3
      output.
      Signed-off-by: NKeerthy <j-keerthy@ti.com>
      Acked-by: NRob Herring <robh@kernel.org>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      1e349600
    • H
      mfd: axp20x-i2c: Document that this must be builtin on x86 · aaac4a2e
      Hans de Goede 提交于
      On x86 the AXP288 PMIC provides an ACPI OpRegion handler, which must be
      available before other drivers using it are loaded, which can only be
      ensured if the MFD, OpRegion and i2c-bus drivers are built-in.
      
      Since the AXP20x MFD code is used on non x86 too we cannot simply change
      this into a bool, I've tried some Kconfig magic with if x86 but I could
      not get this working correctly, so this commit just documents that this
      should be built-in on x86, which fixes errors like these during boot:
      
      mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA
      ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion]
      ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-2
      ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93
      ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b
      acpi 80860F14:02: Failed to change power state to D0
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Acked-by: NChen-Yu Tsai <wens@csie.org>
      Tested-by: Nrussianneuromancer <russianneuromancer@ya.ru>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      aaac4a2e
    • H
      mfd: Add Cherry Trail Whiskey Cove PMIC driver · de85d79f
      Hans de Goede 提交于
      Add mfd driver for Intel CHT Whiskey Cove PMIC, based on various non
      upstreamed CHT Whiskey Cove PMIC patches.
      
      This is a somewhat minimal version which adds irqchip support and cells
      for: ACPI PMIC opregion support, the i2c-controller driving the external
      charger irc and the pwrsrc/extcon block.
      
      Further cells can be added in the future if/when drivers are upstreamed
      for them.
      
      [The above patch caused a build error on some archetectures]
      
      From: Arnd Bergmann <arnd@arndb.de>
      
      I ran into a build error on ARM with a platform that has a non-standard
      clk implementation:
      
      drivers/clk/clk.o: In function `clk_disable':
      clk.c:(.text.clk_disable+0x0): multiple definition of `clk_disable'
      arch/arm/mach-omap1/clock.o:clock.c:(.text.clk_disable+0x0): first defined here
      drivers/clk/clk.o: In function `clk_enable':
      clk.c:(.text.clk_enable+0x0): multiple definition of `clk_enable'
      arch/arm/mach-omap1/clock.o:clock.c:(.text.clk_enable+0x0): first defined here
      
      The problem is a device driver that uses 'select COMMON_CLK', which is
      generally a bad idea: selecting a subsystem should only be done from
      a platform, otherwise we run into circular dependencies. The same driver
      also selects 'GPIOLIB' and 'I2C', which has a similar effect.
      
      This turns all three into 'depends on', as it should be.
      
      Finally, we can limit the build to x86, unless we are compile testing.
      
      First patch:
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Reviewed-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      
      Fix for first patch (squashed):
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      de85d79f
    • H
      mfd: intel_soc_pmic: Select designware i2c-bus driver · acebcff9
      Hans de Goede 提交于
      The Crystal Cove PMIC provides an ACPI OPRegion handler, which must be
      available before other drivers using it are loaded, which is why
      INTEL_SOC_PMIC is a bool.
      
      Just having the driver is not enough, the driver for the i2c-bus must
      also be built in, to ensure this, this patch adds a select for it.
      
      This fixes errors like these during boot:
      
      mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA
      ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion] (20170119/evregion-166)
      ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-299)
      ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93543b0cde10), AE_NOT_EXIST (20170119/psparse-543)
      ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b0b5cd0), AE_NOT_EXIST (20170119/psparse-543)
      acpi 80860F14:02: Failed to change power state to D0
      
      While at it this patch also changes the human readable name of the Kconfig
      option to make clear the INTEL_SOC_PMIC option selects support for the
      Intel Crystal Cove PMIC and documents why this is a bool.
      
      [The above patch caused a build error on some archetectures]
      
      From: Arnd Bergmann <arnd@arndb.de>
      
      I ran into a build error on ARM with a platform that has a non-standard
      clk implementation:
      
      drivers/clk/clk.o: In function `clk_disable':
      clk.c:(.text.clk_disable+0x0): multiple definition of `clk_disable'
      arch/arm/mach-omap1/clock.o:clock.c:(.text.clk_disable+0x0): first defined here
      drivers/clk/clk.o: In function `clk_enable':
      clk.c:(.text.clk_enable+0x0): multiple definition of `clk_enable'
      arch/arm/mach-omap1/clock.o:clock.c:(.text.clk_enable+0x0): first defined here
      
      The problem is a device driver that uses 'select COMMON_CLK', which is
      generally a bad idea: selecting a subsystem should only be done from
      a platform, otherwise we run into circular dependencies. The same driver
      also selects 'GPIOLIB' and 'I2C', which has a similar effect.
      
      This turns all three into 'depends on', as it should be.
      
      Finally, we can limit the build to x86, unless we are compile testing.
      
      First patch:
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Reviewed-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      
      Fix for first patch (squashed):
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      acebcff9
  19. 27 4月, 2017 4 次提交
    • A
      mfd: intel_soc_pmic: Fix a mess with compilation units · b5238b41
      Andy Shevchenko 提交于
      Crystal Cove and Whiskey Cove are two different PMICs which are
      installed on Intel Atom SoC based platforms.
      
      Moreover there are two independent drivers that by some reason were
      supposed (*) to get into one kernel module.
      
      Fix the mess by clarifying Kconfig option for Crystal Cove and split
      Whiskey Cove out of it.
      
      (*) It looks like the configuration was never tested with
          INTEL_SOC_PMIC=n. The line in Makefile is actually wrong.
      
      Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> (supporter:ACPI)
      Acked-by: NLinus Walleij <linus.walleij@linaro.org>
      Acked-by: NZhang Rui <rui.zhang@intel.com>
      Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      b5238b41
    • S
      mfd: Add support for DA9061 · 656211b1
      Steve Twiss 提交于
      MFD support for DA9061 is provided as part of the DA9062 device driver.
      
      The registers header file adds two new chip variant IDs defined in DA9061
      and DA9062 hardware. The core header file adds new software enumerations
      for listing the valid DA9061 IRQs and a da9062_compatible_types enumeration
      for distinguishing between DA9061/62 devices in software.
      
      The core source code adds a new .compatible of_device_id entry. This is
      extended from DA9062 to support both "dlg,da9061" and "dlg,da9062". The
      .data entry now holds a reference to the enumerated device type.
      
      A new regmap_irq_chip model is added for DA9061 and this supports the new
      list of regmap_irq entries. A new mfd_cell da9061_devs[] array lists the
      new sub system components for DA9061. Support is added for a new DA9061
      regmap_config which lists the correct readable, writable and volatile
      ranges for this chip.
      
      The probe function uses the device tree compatible string to switch on the
      da9062_compatible_types and configure the correct mfd cells, irq chip and
      regmap config.
      
      Kconfig is updated to reflect support for DA9061 and DA9062 PMICs.
      Signed-off-by: NSteve Twiss <stwiss.opensource@diasemi.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      656211b1
    • B
      mfd: syscon: atmel-smc: Add new helpers to ease SMC regs manipulation · fe9d7cb2
      Boris Brezillon 提交于
      These new helpers + macro definitions are meant to replace the old ones
      which are unpractical to use.
      
      Note that the macros and function prefixes have been intentionally
      changed to ATMEL_[H]SMC_XX and atmel_[h]smc_ to reflect the fact that
      this IP is also embedded in avr32 SoCs (and not only in at91 ones).
      Signed-off-by: NBoris Brezillon <boris.brezillon@free-electrons.com>
      Acked-by: NNicolas Ferre <nicolas.ferre@microchip.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      fe9d7cb2
    • M
      mfd: Add TI LMU driver · d5aa11bf
      Milo Kim 提交于
      TI LMU (Lighting Management Unit) driver supports lighting devices below.
      
        LM3532, LM3631, LM3632, LM3633, LM3695 and LM3697.
      
      LMU devices have common features.
        - I2C interface for accessing device registers
        - Hardware enable pin control
        - Backlight brightness control
        - Notifier for hardware fault monitoring
        - Regulators for LCD display bias
      
      It contains fault monitor, backlight, LED and regulator driver.
      
      LMU fault monitor
      -----------------
        LM3633 and LM3697 provide hardware monitoring feature.
        It enables open or short circuit detection.
        After monitoring is done, each device should be re-initialized.
        Notifier is used for this case.
        Separate patch for 'ti-lmu-fault-monitor' will be sent later.
      
      Backlight
      ---------
        It's handled by TI LMU backlight consolidated driver and
        chip dependent data. Separate patchset will be sent later.
      
      LED indicator
      -------------
        LM3633 has 6 indicator LEDs. Programmable dimming pattern is also
        supported. Separate patch for 'leds-lm3633' will be sent later.
      
      Regulator
      ---------
        LM3631 has 5 regulators for the display bias.
        LM3632 supports 3 regulators. One consolidated driver enables it.
        The lm363x regulator driver is already upstreamed.
      Signed-off-by: NMilo Kim <milo.kim@ti.com>
      Tested-by: NTony Lindgren <tony@atomide.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      d5aa11bf
  20. 23 3月, 2017 1 次提交
  21. 13 2月, 2017 2 次提交