1. 09 7月, 2014 1 次提交
  2. 26 6月, 2014 1 次提交
  3. 04 3月, 2014 1 次提交
    • L
      mfd: dbx500/abx500: root out hardcoded IRQ assignments · f864c46a
      Linus Walleij 提交于
      The DBx500 and ABx500 should be getting their IRQs from the
      device tree and nowhere else. Get rid of all the static assignments
      everywhere, delete it from the driver, platform data and the
      board files in one swift strike.
      
      Lots of cross-dependencies in the MFD drivers for PRCMU and
      AB8500 makes it necessary to strike everywhere at once to
      eradicate IRQs passed as resources and platform data to the left
      and right around the platform.
      
      Cc: Mark Brown <broonie@kernel.org>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      f864c46a
  4. 21 1月, 2014 1 次提交
  5. 06 1月, 2014 1 次提交
  6. 13 6月, 2013 4 次提交
  7. 17 5月, 2013 3 次提交
  8. 09 4月, 2013 2 次提交
  9. 07 3月, 2013 11 次提交
  10. 14 2月, 2013 1 次提交
  11. 08 2月, 2013 5 次提交
    • L
      mfd: ab8500: allow AB9540 based devices to use ABX500 pinctrl · e64d905e
      Lee Jones 提交于
      The old AB8500 GPIO driver has been un-BROKEN and converted into a
      multi-platform pinctrl driver. If any AB9540 based devices wish to
      request any GPIO pins that it offers, they can after this patch.
      
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      e64d905e
    • L
      mfd: ab8500: ensure new AB8500 pinctrl driver is probed correctly · 7d56a46e
      Lee Jones 提交于
      The old, BROKEN AB8500 GPIO driver has been revamped as a shiny
      new pinctrl driver and has been renamed as such. So, if we would
      like to make use of it, we need to register it via its new name.
      
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      7d56a46e
    • L
      mfd: ab8500: provide a irq_set_type() function · 40f6e5a2
      Lee Jones 提交于
      In the AB8500 IRQ mask and unmask functions, we rely on testing for
      IRQ_TYPE_EDGE_RISING and IRQ_TYPE_EDGE_FALLING interrupts to
      physically mask and unmask the correct interrupt lines. In order
      for us to do that, the trigger needs to be set in the associated
      flags. However, unless a irq_set_type() function pointer is passed
      when registering the IRQ chip, the IRQ subsystem will refuse to do
      it. For that reason, we're providing one.
      
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      40f6e5a2
    • L
      mfd: ab8500: actually handle the AB8500 GPIO IRQs correctly · e2ddf46a
      Linus Walleij 提交于
      The patch:
      "mfd: ab8500: prepare to handle AB8500 GPIO's IRQs correctly"
      altered the AB8500 IRQ mask/unmask functions such that they
      would handle masking on/off the falling edge IRQ if this was
      requested by the consumer. However the bit mask for hwirqs
      43 and 44 was shifting the bit mask incorrectly, resulting in
      the wrong IRQ being mased/unmasked.
      
      Further while the patch would mask/unmask the correct line,
      when the interrupt actually came in, it would still be treated
      as a valid hwirq. The offsetting applied when masking/unmasking
      was not applied when handling the IRQ, i.e. the falling edge
      lines were not routed back to the rising edge lines.
      
      This fixes both cases. The end result has been tested with
      the SIM detect IRQ, GPIO12, hwirq 46 and 62.
      
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: Lee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com>
      e2ddf46a
    • L
      mfd: ab8500: prepare to handle AB8500 GPIO's IRQs correctly · 9c677b9b
      Lee Jones 提交于
      In an upcoming patch, the gpio-ab8500 driver will relinquish all
      IRQ handling capability and pass it back into the AB8500 core
      driver. This will aid in reducing massive code duplication within
      the kernel. Also, most of the functionality is already in the
      AB8500 core driver, as the GPIO IRQs are actually sandwiched
      between lots of other IRQs which the core driver already handles.
      
      All we're doing here is providing the core driver with knowledge
      that each GPIO has two IRQs assigned to it; one for rising and
      a separate one for falling.
      
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      9c677b9b
  12. 04 2月, 2013 2 次提交
  13. 23 1月, 2013 2 次提交
    • P
      u8500-charger: Delay for USB enumeration · 34c11a70
      Paer-Olof Haakansson 提交于
      If charging is started before USB enumeration of an Accessory
      Charger Adapter has finished, the AB8500 will generate a
      VBUS_ERROR. This in turn results in timeouts and delays the
      enumeration with around 15 seconds. This patch delays the
      charging and then ramps currents slowly to avoid VBUS errors.
      The delay allows the enumeration to have finished before
      charging is turned on.
      Signed-off-by: NMartin Sjoblom <martin.w.sjoblom@stericsson.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Reviewed-by: NJonas ABERG <jonas.aberg@stericsson.com>
      Tested-by: NJonas ABERG <jonas.aberg@stericsson.com>
      34c11a70
    • L
      mfd: Fix compile errors and warnings when !CONFIG_AB8500_BM · 00441b5e
      Lee Jones 提交于
      drivers/mfd/ab8500-core.c:1015:21: error: ‘ab8500_bm_data’ undeclared here
      
      include/linux/mfd/abx500/ab8500-bm.h:445:13: warning: ‘ab8500_fg_reinit’ defined but not used
      include/linux/mfd/abx500/ab8500-bm.h:448:13: warning: ‘ab8500_charger_usb_state_changed’ defined but not used
      include/linux/mfd/abx500/ab8500-bm.h:451:29: warning: ‘ab8500_btemp_get’ defined but not used
      include/linux/mfd/abx500/ab8500-bm.h:455:12: warning: ‘ab8500_btemp_get_batctrl_temp’ defined but not used
      include/linux/mfd/abx500/ab8500-bm.h:463:12: warning: ‘ab8500_fg_inst_curr_blocking’ defined but not used
      include/linux/mfd/abx500/ab8500-bm.h:442:12: warning: ‘ab8500_fg_inst_curr_done’ defined but not used
      include/linux/mfd/abx500/ab8500-bm.h:447:26: warning: ‘ab8500_fg_get’ defined but not used
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      00441b5e
  14. 11 12月, 2012 1 次提交
    • L
      ab8500_bm: Always send platform specific battery information via pdata · 23a04f9f
      Lee Jones 提交于
      Currently the AB8500 battery management subsystem receives platform
      specific information via two different means depending on how the
      platform is booted. If DT is not enabled, a reference to a *_bm_data
      data structure containing each platform specific attribute is passed
      though platform_data. However, if DT is enabled, then platform_data
      is empty and the reference is gained though a DT specific probe
      function. There are two issues here 1) the same reference is
      being collected each time and 2) the DT way doesn't allow any
      provisions to select different platform specific attributes, which
      kind of defeats the object.
      
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      23a04f9f
  15. 30 11月, 2012 1 次提交
  16. 29 11月, 2012 3 次提交