Commit Graph

12 Commits

Author SHA1 Message Date
Qing Xu
4e405ae256 mfd: max8925: Add irqdomain for dt
Add irqdomains for max8925's main irq, wrap irq register operations
into irqdomain's map func. it is necessary for dt support.

Also, add dt support for max8925 driver.

Signed-off-by: Qing Xu <qingx@marvell.com>
Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-02-14 00:23:00 +01:00
Haojian Zhuang
51acdb6118 mfd: max8925: Remove array in regulator platform data
Remove array in parent's platform data. Use struct regulator_init_data
as regulator device's platform data directly. So a lot of pdata are
added into parent's platform data. And voltage out register offset
is used as IORESOURCE_REG to distinguish different regualtor devices.

Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-09-19 12:39:13 +02:00
Linus Torvalds
21ebd6c68b Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6
* 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (59 commits)
  rtc: max8925: Add function to work as wakeup source
  mfd: Add pm ops to max8925
  mfd: Convert aat2870 to dev_pm_ops
  mfd: Still check other interrupts if we get a wm831x touchscreen IRQ
  mfd: Introduce missing kfree in 88pm860x probe routine
  mfd: Add S5M series configuration
  mfd: Add s5m series irq driver
  mfd: Add S5M core driver
  mfd: Improve mc13xxx dt binding document
  mfd: Fix stmpe section mismatch
  mfd: Fix stmpe build warning
  mfd: Fix STMPE I2c build failure
  mfd: Constify aat2870-core i2c_device_id table
  gpio: Add support for stmpe variant 801
  mfd: Add support for stmpe variant 801
  mfd: Add support for stmpe variant 610
  mfd: Add support for STMPE SPI interface
  mfd: Separate out STMPE controller and interface specific code
  misc: Remove max8997-muic sysfs attributes
  mfd: Remove unused wm831x_irq_data_to_mask_reg()
  ...

Fix up trivial conflict in drivers/leds/Kconfig due to addition of
LEDS_MAX8997 and LEDS_TCA6507 next to each other.
2012-01-13 20:43:32 -08:00
Kevin Liu
ba74e80eba mfd: Add pm ops to max8925
Signed-off-by: Kevin Liu <kliu5@marvell.com>
Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-01-09 01:03:34 +01:00
Philip Rakity
e7a5f6d559 max8925_power: Enable power change notifications
The power core infrastructure allow external power change
events to be passed to drivers what are listed in the
supplied_to call back field.  Enable this feature by
allowing the supplied_to field to be passed to the driver.

This feature will enable drivers named in the supplied_to
field that have a external_power_changed callback to be
notified when power was been turned on or off.

Signed-off-by: Philip Rakity <prakity@marvell.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
2011-11-25 23:30:58 +04:00
Philip Rakity
72af5a4b9c max8925_power: Remove support for irq bits that do not exist
The max8925 cannot return usb status.  The bits

       [MAX8925_IRQ_VCHG_USB_OVP] = {
               .reg            = MAX8925_CHG_IRQ1,
               .mask_reg       = MAX8925_CHG_IRQ1_MASK,
               .offs           = 1 << 3,
       },
       [MAX8925_IRQ_VCHG_USB_F] =  {
               .reg            = MAX8925_CHG_IRQ1,
               .mask_reg       = MAX8925_CHG_IRQ1_MASK,
               .offs           = 1 << 4,
       },
       [MAX8925_IRQ_VCHG_USB_R] = {
               .reg            = MAX8925_CHG_IRQ1,
               .mask_reg       = MAX8925_CHG_IRQ1_MASK,
               .offs           = 1 << 5,
       },

do not exist in the irq register.

Signed-off-by: Philip Rakity <prakity@marvell.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
2011-11-25 23:24:45 +04:00
Philip Rakity
5ba1fa0ae2 max8925_power: Do not detect ac insert if handled by other code
On brownstone rev 4 ac-insert detect is handled by vbus.

allow the platform code to configure the disabling of insert
by setting no_insert_detect.

Signed-off-by: Philip Rakity <prakity@marvell.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
2011-11-25 23:24:03 +04:00
Philip Rakity
92de378b73 max8925_power: No temperature interrupts if temperature not connected
Brownstone does not have temperature reading circuit hooked up.
This leads to spurious interrupts.

Allow the platform layer to indicate no temperature circuit
and do not activate interrupts if no temperature control is set

Signed-off-by: Philip Rakity <prakity@marvell.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
2011-11-25 23:19:37 +04:00
Haojian Zhuang
34c9120805 mfd: Clean code in max8925
Remove unused definitions.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-03-07 22:17:17 +01:00
Haojian Zhuang
1f1cf8f98c mfd: Update irq handler in max8925
Update thread irq handler. Simply the interface of using thread irq.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-03-07 22:17:16 +01:00
Haojian Zhuang
1ad998934e mfd: Add subdevs in max8925
Add subdevs in MAX8925. MAX8925 includes regulator, backlight and touch
components.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-03-07 22:17:07 +01:00
Haojian Zhuang
d50f8f339f mfd: Initial max8925 support
Basic Max8925 support, which is a power management IC from Maxim
Semiconductor.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2010-03-07 22:17:06 +01:00