• Milo Kim's avatar
    mfd: Add lp8788 mfd driver · eea6b7cc
    Milo Kim authored
    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: default avatarMilo(Woogyom) Kim <milo.kim@ti.com>
    Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
    eea6b7cc
Kconfig 30.8 KB