1. 26 3月, 2013 1 次提交
  2. 14 2月, 2013 1 次提交
  3. 22 1月, 2013 1 次提交
    • A
      mfd: tps65910: Select REGMAP_IRQ in Kconfig to fix build error · ee487114
      AnilKumar Ch 提交于
      TPS65910 mfd driver uses functions that are only avaiable when
      REGMAP_IRQ is enabled. So "select REGMAP_IRQ" is added to mfd
      Kconfig to fix below build error:
      
      drivers/built-in.o: In function `tps65910_irq_exit':
      /media/anil/kernel/drivers/mfd/tps65910.c:265: undefined reference to `regmap_del_irq_chip'
      drivers/built-in.o: In function `tps65910_irq_init':
      /media/anil/kernel/drivers/mfd/tps65910.c:254: undefined reference to `regmap_add_irq_chip'
      drivers/built-in.o: In function `tps65910_i2c_probe':
      /media/anil/kernel/drivers/mfd/tps65910.c:509: undefined reference to `regmap_irq_get_domain'
      make: *** [vmlinux] Error 1
      Signed-off-by: NAnilKumar Ch <anilkumar@ti.com>
      Tested-by: NMatt Porter <mporter@ti.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      ee487114
  4. 17 1月, 2013 1 次提交
  5. 09 12月, 2012 1 次提交
    • A
      mfd: tps80031: MFD_TPS80031 needs to select REGMAP_IRQ · c2ace4fd
      Axel Lin 提交于
      This driver uses regmap_irq APIs, thus need to select REGMAP_IRQ.
      IRQ_DOMAIN will be selected if select REGMAP_IRQ, thus remove it here.
      
      This fixes below build errors:
      
      drivers/built-in.o: In function `tps80031_remove':
      drivers/mfd/tps80031.c:534: undefined reference to `regmap_del_irq_chip'
      drivers/built-in.o: In function `tps80031_irq_init':
      drivers/mfd/tps80031.c:305: undefined reference to `regmap_add_irq_chip'
      drivers/built-in.o: In function `tps80031_probe':
      drivers/mfd/tps80031.c:496: undefined reference to `regmap_irq_get_domain'
      drivers/mfd/tps80031.c:512: undefined reference to `regmap_del_irq_chip'
      make: *** [vmlinux] Error 1
      Signed-off-by: NAxel Lin <axel.lin@ingics.com>
      Acked-by: NLaxman Dewangan <ldewangan@nvidia.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      c2ace4fd
  6. 27 11月, 2012 1 次提交
    • A
      mfd: tps65090: MFD_TPS65090 needs to select REGMAP_IRQ · 64cdfe25
      Axel Lin 提交于
      This fixes below build error:
      
      drivers/built-in.o: In function `tps65090_i2c_probe':
      drivers/mfd/tps65090.c:180: undefined reference to `regmap_add_irq_chip'
      drivers/mfd/tps65090.c:190: undefined reference to `regmap_irq_chip_get_base'
      drivers/mfd/tps65090.c:203: undefined reference to `regmap_del_irq_chip'
      drivers/built-in.o: In function `tps65090_i2c_remove':
      drivers/mfd/tps65090.c:213: undefined reference to `regmap_del_irq_chip'
      make: *** [vmlinux] Error 1
      Signed-off-by: NAxel Lin <axel.lin@ingics.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      64cdfe25
  7. 23 11月, 2012 1 次提交
  8. 21 11月, 2012 2 次提交
  9. 20 11月, 2012 2 次提交
  10. 16 11月, 2012 2 次提交
  11. 15 11月, 2012 1 次提交
    • L
      mfd: tps6586x: move regulator dt parsing to regulator driver · 64e48160
      Laxman Dewangan 提交于
      Moving regulator node parsing to regulator driver in place
      of parsing it on mfd driver.
      The motivation for this change are:
      - MFD core driver should not depends on regulator and able
        to instantiate device without regulator.
      - The API for matching regulators are in regulator core and
        it is good that regulator driver only calls this API.
      - Regulator specific support should be in regulator driver only
        to ease any enhancement/modification for regulators.
      - The regulator driver is now registered as mfd sub device and
        all regulator registration is done from single probe call.
      Signed-off-by: NLaxman Dewangan <ldewangan@nvidia.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      64e48160
  12. 14 11月, 2012 1 次提交
  13. 08 11月, 2012 2 次提交
  14. 06 11月, 2012 2 次提交
    • P
      mfd: ti_tscadc: Add support for TI's TSC/ADC MFDevice · 01636eb9
      Patil, Rachna 提交于
      Add the mfd core driver which supports touchscreen
      and ADC.
      With this patch we are only adding infrastructure to
      support the MFD clients.
      Signed-off-by: NPatil, Rachna <rachna@ti.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      01636eb9
    • P
      mfd: Versatile Express config infrastructure · 3ecbf05b
      Pawel Moll 提交于
      Versatile Express platform has an elaborated configuration system,
      consisting of microcontrollers residing on the mother- and
      daughterboards known as Motherboard/Daughterboard Configuration
      Controller (MCC and DCC). The controllers are responsible for
      the platform initialization (reset generation, flash programming,
      FPGA bitfiles loading etc.) but also control clock generators,
      voltage regulators, gather environmental data like temperature,
      power consumption etc. Even the video output switch (FPGA) is
      controlled that way.
      
      Those devices are _not_ visible in the main address space and
      the usual communication channel uses some kind of a bridge in
      the peripheral block sending commands (requests) to the
      controllers and receiving responses. It can take up to
      500 microseconds for a transaction to be completed, therefore
      it is important to provide a non-blocking interface to it.
      
      This patch adds an abstraction of this infrastructure. Bridge
      drivers can register themselves with the framework. Then,
      a driver of a device can request an abstract "function" - the
      request will be redirected to a bridge referred by thedd
      "arm,vexpress,config-bridge" property of the device tree node.
      Signed-off-by: NPawel Moll <pawel.moll@arm.com>
      3ecbf05b
  15. 01 10月, 2012 1 次提交
  16. 29 9月, 2012 1 次提交
  17. 24 9月, 2012 1 次提交
    • M
      mfd: Add lp8788 mfd driver · eea6b7cc
      Milo Kim 提交于
      TI LP8788 PMU provides regulators, battery charger, ADC,
      RTC, backlight driver and current sinks.
      
      This MFD patch supports the I2C communication using the regmap,
      the interrupt handling using the linear IRQ domain and
      configurable platform data structures for each driver module.
      
       (Driver Architecture)
      
                                               < mfd devices >
        LP8788 HW  ..........  mfd  .......... regulator drivers
                      I2C                      power supply driver
                      IRQs                     iio adc driver
                                               rtc driver
                                               backlight driver
                                               current sink drivers
      
        o regulators    : LDOs and BUCKs
        o power supply  : Battery charger
        o iio adc       : Battery voltage/temperature
        o rtc           : RTC and alarm
        o backlight
        o current sink  : LED and vibrator
      
      All MFD device modules are registered by LP8788 MFD core driver.
      For sharing information such like the virtual IRQ number,
      MFD core driver uses the resource structure.
      Then each module can retrieve the specific IRQ number and detect it
      in the IRQ thread.
      
      Configurable platform data is handled in each driver module.
      Signed-off-by: NMilo(Woogyom) Kim <milo.kim@ti.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      eea6b7cc
  18. 22 9月, 2012 1 次提交
  19. 19 9月, 2012 1 次提交
  20. 17 9月, 2012 3 次提交
  21. 21 8月, 2012 1 次提交
    • G
      gpu/mfd/usb: Fix USB randconfig problems · 8f057d7b
      Guenter Roeck 提交于
      Fix config warning:
      
      warning: ( ... && DRM_USB) selects USB which has unmet direct dependencies
      (USB_SUPPORT && USB_ARCH_HAS_HCD)
      
      and build error:
      ERROR: "usb_speed_string" [drivers/usb/core/usbcore.ko] undefined!
      
      by adding the missing dependency on USB_ARCH_HAS_HCD to DRM_UDL and DRM_USB.
      
      This exposes:
      drivers/video/Kconfig:36:error: recursive dependency detected!
      drivers/video/Kconfig:36:       symbol FB is selected by DRM_KMS_HELPER
      drivers/gpu/drm/Kconfig:28:     symbol DRM_KMS_HELPER is selected by DRM_UDL
      drivers/gpu/drm/udl/Kconfig:1:  symbol DRM_UDL depends on USB_ARCH_HAS_HCD
      drivers/usb/Kconfig:78: symbol USB_ARCH_HAS_HCD depends on USB_ARCH_HAS_OHCI
      drivers/usb/Kconfig:16: symbol USB_ARCH_HAS_OHCI depends on I2C
      drivers/i2c/Kconfig:5:  symbol I2C is selected by FB_DDC
      drivers/video/Kconfig:86:       symbol FB_DDC is selected by FB_CYBER2000_DDC
      drivers/video/Kconfig:385:      symbol FB_CYBER2000_DDC depends on FB_CYBER2000
      drivers/video/Kconfig:373:      symbol FB_CYBER2000 depends on FB
      
      which is due to drivers/usb/Kconfig:
      config USB_ARCH_HAS_OHCI
      	...
      	default y if ARCH_PNX4008 && I2C
      
      Fix by dropping I2C from the above dependency; logic is that this is not a
      platform dependency but a configuration dependency: the _architecture_ still
      supports USB even is I2C is not selected.
      
      This exposes:
      drivers/video/Kconfig:36:error: recursive dependency detected!
      drivers/video/Kconfig:36:       symbol FB is selected by DRM_KMS_HELPER
      drivers/gpu/drm/Kconfig:28:     symbol DRM_KMS_HELPER is selected by DRM_UDL
      drivers/gpu/drm/udl/Kconfig:1:  symbol DRM_UDL depends on USB_ARCH_HAS_HCD
      drivers/usb/Kconfig:78: symbol USB_ARCH_HAS_HCD depends on USB_ARCH_HAS_OHCI
      drivers/usb/Kconfig:17: symbol USB_ARCH_HAS_OHCI depends on MFD_TC6393XB
      drivers/mfd/Kconfig:396:        symbol MFD_TC6393XB depends on GPIOLIB
      drivers/gpio/Kconfig:35:        symbol GPIOLIB is selected by FB_VIA
      drivers/video/Kconfig:1560:     symbol FB_VIA depends on FB
      
      which can be fixed by having MFD_TC6393XB select GPIOLIB instead of depending on
      it.
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      8f057d7b
  22. 27 7月, 2012 1 次提交
    • S
      mfd: Arizone core should select MFD_CORE · c481c048
      Samuel Ortiz 提交于
      Otherwise, with:
      
      CONFIG_MFD_ARIZONA=y
      CONFIG_MFD_ARIZONA_I2C=m
      CONFIG_MFD_CORE=m
      
      We get:
      
      drivers/built-in.o: In function `arizona_dev_init':
      (.devinit.text+0x3ab0): undefined reference to `mfd_add_devices'
      drivers/built-in.o: In function `arizona_dev_init':
      (.devinit.text+0x3fdc): undefined reference to `mfd_add_devices'
      drivers/built-in.o: In function `arizona_dev_init':
      (.devinit.text+0x3fff): undefined reference to `mfd_add_devices'
      drivers/built-in.o: In function `arizona_dev_init':
      (.devinit.text+0x4059): undefined reference to `mfd_remove_devices'
      drivers/built-in.o: In function `arizona_dev_exit':
      (.devexit.text+0x9): undefined reference to `mfd_remove_devices'
      Reported-by: NRandy Dunlap <rdunlap@xenotime.net>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      c481c048
  23. 25 7月, 2012 3 次提交
  24. 23 7月, 2012 1 次提交
    • T
      pwm: Conflict with legacy PWM API · eac7a92f
      Thierry Reding 提交于
      In order to avoid duplicate symbols with legacy PWM API implementations,
      the new PWM framework needs to conflict with any of the existing legacy
      implementations. This is done in two ways: for implementations provided
      by drivers, a conflict is added to the driver to ensure it will have to
      be ported to the PWM subsystem before it can coexist with other PWM
      providers. For architecture-specific code, the conflict is added to the
      PWM symbol to avoid confusion when a previously picked platform or
      machine can no longer be selected because of the PWM subsystem being
      included.
      Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
      eac7a92f
  25. 16 7月, 2012 3 次提交
  26. 09 7月, 2012 4 次提交
    • Q
      mfd: Support 88pm80x in 80x driver · 70c6cce0
      Qiao Zhou 提交于
      88PM800 and 88PM805 are two discrete chips used for power management.
      Hardware designer can use them together or only one of them according
      to requirement.
      
      88pm80x.c provides common i2c driver handling for both 800 and
      805, such as i2c_driver init, regmap init, read/write api etc.
      
      88pm800.c handles specifically for 800, such as chip init, irq
      init/handle, mfd device register, including rtc, onkey, regulator(
      to be add later) etc. besides that, 800 has three i2c device, one
      regular i2c client, two other i2c dummy for gpadc and power purpose.
      
      88pm805.c handles specifically for 805, such as chip init, irq
      init/handle, mfd device register, including codec, headset/mic detect
      etc.
      
      the i2c operation of both 800 and 805 are via regmap, and 88pm80x-i2c
      exported a group of r/w bulk r/w and bits set API for facility.
      Signed-off-by: NQiao Zhou <zhouqiao@marvell.com>
      Reviewed-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      70c6cce0
    • S
      mfd: Fix Arizona Kconfig entry · 49003a68
      Samuel Ortiz 提交于
      The core and irq Arizona parts should be boolean as they depend on non
      exported symbols.
      
      This fixes the following build errors:
      
      ERROR: "wm5102_aod" [drivers/mfd/arizona-irq.ko] undefined!
      ERROR: "wm5102_irq" [drivers/mfd/arizona-irq.ko] undefined!
      ERROR: "irq_set_chip_and_handler_name" [drivers/mfd/arizona-irq.ko]  undefined!
      ERROR: "wm5102_patch" [drivers/mfd/arizona-core.ko] undefined!
      ERROR: "arizona_irq_init" [drivers/mfd/arizona-core.ko] undefined!
      ERROR: "arizona_irq_exit" [drivers/mfd/arizona-core.ko] undefined!
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      49003a68
    • M
      mfd: Force on REGMAP for the arizona core · 14b5bd5c
      Mark Brown 提交于
      While the core isn't useful by itself it does depend on regmap so try to
      force that on.
      Reported-by: NMyungJoo Ham <myungjoo.ham@samsung.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      14b5bd5c
    • P
      mfd: Update twl6040 Kconfig to avoid build breakage · 487bae3c
      Peter Ujfalusi 提交于
      twl6040 needs CONFIG_IRQ_DOMAIN to compile, without this we have:
      drivers/mfd/twl6040-irq.c: In function 'twl6040_irq_init':
      drivers/mfd/twl6040-irq.c:164:2: error: implicit declaration of function 'irq_domain_add_legacy'
      drivers/mfd/twl6040-irq.c:165:11: error: 'irq_domain_simple_ops' undeclared (first use in this function)
      drivers/mfd/twl6040-irq.c:165:11: note: each undeclared identifier is reported only once for each function it appears in
      Reported-by: NRandy Dunlap <rdunlap@xenotime.net>
      Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      487bae3c