1. 16 Feb, 2015 1 commit
  2. 22 Jan, 2015 32 commits
  3. 20 Jan, 2015 4 commits
    • Roger Tseng's avatar
      mfd: rtsx_usb: Fix runtime PM deadlock · b166010f
      Roger Tseng authored
      sd_set_power_mode() in derived module drivers/mmc/host/rtsx_usb_sdmmc.c
      acquires dev_mutex and then calls pm_runtime_get_sync() to make sure the
      device is awake while initializing a newly inserted card. Once it is
      called during suspending state and explicitly before rtsx_usb_suspend()
      acquires the same dev_mutex, both routine deadlock and further hang the
      driver because pm_runtime_get_sync() waits the pending PM operations.
      
      Fix this by using an empty suspend method. mmc_core always turns the
      LED off after a request is done and thus it is ok to remove the only
      rtsx_usb_turn_off_led() here.
      
      Cc: <stable@vger.kernel.org> # v3.16+
      Fixes: 730876be ("mfd: Add realtek USB card reader driver")
      Signed-off-by: default avatarRoger Tseng <rogerable@realtek.com>
      [Lee: Removed newly unused variable]
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      b166010f
    • Felipe Balbi's avatar
      mfd: tps65218: Make INT1 our status_base register · f29ae369
      Felipe Balbi authored
      If we don't tell regmap-irq that our first status
      register is at offset 1, it will try to read offset
      zero, which is the chipid register.
      
      Fixes: 44b4dc61 mfd: tps65218: Add driver for the TPS65218 PMIC
      Cc: <stable@vger.kernel.org> # v3.15+
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      f29ae369
    • Felipe Balbi's avatar
      mfd: tps65218: Make INT[12] and STATUS registers volatile · 773328da
      Felipe Balbi authored
      STATUS register can be modified by the HW, so we
      should bypass cache because of that.
      
      In the case of INT[12] registers, they are the ones
      that actually clear the IRQ source at the time they
      are read. If we rely on the cache for them, we will
      never be able to clear the interrupt, which will cause
      our IRQ line to be disabled due to IRQ throttling.
      
      Fixes: 44b4dc61 mfd: tps65218: Add driver for the TPS65218 PMIC
      Cc: <stable@vger.kernel.org> # v3.15+
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      773328da
    • Fabio Estevam's avatar
      mfd: da9052-core: Fix platform-device id collision · b3f6c73d
      Fabio Estevam authored
      Allow multiple DA9052 regulators be registered by registering with
      PLATFORM_DEVID_AUTO instead of PLATFORM_DEVID_NONE.
      
      The subdevices are currently registered with PLATFORM_DEVID_NONE, which
      will cause a name collision on the platform bus when multiple regulators
      are registered:
      
      [    0.128855] da9052-regulator da9052-regulator: invalid regulator ID specified
      [    0.128973] da9052-regulator: probe of da9052-regulator failed with error -22
      [    0.129148] ------------[ cut here ]------------
      [    0.129200] WARNING: CPU: 0 PID: 1 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x5c/0x7c()
      [    0.129233] sysfs: cannot create duplicate filename '/devices/platform/soc/60000000.aips/63fc8000.i2c/i2c-0/0-0048/da9052-regulator
      ...
      [    0.132891] ------------[ cut here ]------------
      [    0.132924] WARNING: CPU: 0 PID: 1 at lib/kobject.c:240 kobject_add_internal+0x24c/0x2cc()
      [    0.132957] kobject_add_internal failed for da9052-regulator with -EEXIST, don't try to register things with the same name in the same directory.
      ...
      [    0.137000] da9052 0-0048: mfd_add_devices failed: -17
      [    0.138486] da9052: probe of 0-0048 failed with error -17
      
      Based on the fix done by Johan Hovold at commit b6684228 ("mfd:
      viperboard: Fix platform-device id collision").
      
      Tested on a imx53-qsb board, where multiple DA9053 regulators can be
      successfully probed.
      Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      b3f6c73d
  4. 29 Dec, 2014 1 commit
  5. 28 Dec, 2014 2 commits