1. 07 12月, 2012 2 次提交
  2. 08 11月, 2012 2 次提交
  3. 08 10月, 2012 2 次提交
  4. 03 10月, 2012 3 次提交
    • C
      mmc: sdhci-s3c: Fix crash on module insertion for second time · 387a8cbd
      Chander Kashyap 提交于
      If sdhci-s3c driver is built as module, it gives following error if inserted
      again after removing. This was happening as pm_runtime_use_autosuspend() is
      called in sdhci_s3c_probe() function but in sdhci_s3c_remove() its
      complementary pm_runtime_dont_use_autosuspend() is not called.
      
      BUG: spinlock bad magic on CPU#1, insmod/955
       lock: 0xee771368, .magic: 00000000, .owner: insmod/955, .owner_cpu: 1
      [<c00147e0>] (unwind_backtrace+0x0/0xf8) from [<c0136b40>] (do_raw_spin_unlock+0xa4/0xe4)
      [<c0136b40>] (do_raw_spin_unlock+0xa4/0xe4) from [<c01be508>] (_raw_spin_unlock_irqrestore+0xc/0x38)
      [<c01be508>] (_raw_spin_unlock_irqrestore+0xc/0x38) from [<c01a9334>] (sdhci_runtime_suspend_host+0x54/0x80)
      [<c01a9334>] (sdhci_runtime_suspend_host+0x54/0x80) from [<bf0060a8>] (sdhci_s3c_runtime_suspend+0x14/0x38 [sdhci_s3c])
      [<bf0060a8>] (sdhci_s3c_runtime_suspend+0x14/0x38 [sdhci_s3c]) from [<c016cb00>] (pm_generic_runtime_suspend+0x2c/0x40)
      [<c016cb00>] (pm_generic_runtime_suspend+0x2c/0x40) from [<c0170090>] (__rpm_callback+0x70/0x98)
      [<c0170090>] (__rpm_callback+0x70/0x98) from [<c01703f0>] (rpm_suspend+0xf0/0x534)
      [<c01703f0>] (rpm_suspend+0xf0/0x534) from [<c0171670>] (__pm_runtime_suspend+0x5c/0x74)
      [<c0171670>] (__pm_runtime_suspend+0x5c/0x74) from [<c016d018>] (pm_generic_runtime_idle+0x44/0x4c)
      [<c016d018>] (pm_generic_runtime_idle+0x44/0x4c) from [<c0170090>] (__rpm_callback+0x70/0x98)
      [<c0170090>] (__rpm_callback+0x70/0x98) from [<c0170984>] (rpm_idle+0xdc/0x18c)
      [<c0170984>] (rpm_idle+0xdc/0x18c) from [<c0171608>] (pm_runtime_set_autosuspend_delay+0x30/0x3c)
      [<c0171608>] (pm_runtime_set_autosuspend_delay+0x30/0x3c) from [<bf0069c4>] (sdhci_s3c_probe+0x35c/0x52c [sdhci_s3c])
      [<bf0069c4>] (sdhci_s3c_probe+0x35c/0x52c [sdhci_s3c]) from [<c016a014>] (platform_drv_probe+0x18/0x1c)
      Signed-off-by: NChander Kashyap <chander.kashyap@linaro.org>
      Acked-by: NJaehoon Chung <jh80.chung@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      387a8cbd
    • C
      mmc: sdhci-s3c: Enable only required bus clock · e684c468
      Chander Kashyap 提交于
      In case of multiple bus clock sources, all the clock sources were
      getting enabled. As only one clock source is needed at the time hence
      enable only the required bus clock.
      
      This patch does as follows:
      1.	In sdhci_s3c_probe enable only required bus clock source.
      
      2.	Handle the disabling of old bus clock and enables the
      	best clock selected in sdhci_s3c_set_clock().
      Signed-off-by: NChander Kashyap <chander.kashyap@linaro.org>
      Acked-by: NJaehoon Chung <jh80.chung@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      e684c468
    • T
      mmc: sdhci-s3c: Add device tree support · cd1b00eb
      Thomas Abraham 提交于
      Add device tree based discovery support for Samsung's sdhci controller.
      
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Signed-off-by: NThomas Abraham <thomas.abraham@linaro.org>
      Reviewed-by: NJaehoon Chung <jh80.chung@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      cd1b00eb
  5. 05 9月, 2012 1 次提交
  6. 06 6月, 2012 1 次提交
  7. 06 4月, 2012 6 次提交
  8. 11 3月, 2012 1 次提交
  9. 12 1月, 2012 3 次提交
  10. 23 12月, 2011 1 次提交
  11. 20 12月, 2011 1 次提交
  12. 11 12月, 2011 1 次提交
  13. 27 10月, 2011 2 次提交
  14. 01 9月, 2011 1 次提交
    • G
      mmc: sdhci-s3c: Fix mmc card I/O problem · 49bb1e61
      Girish K S 提交于
      This patch fixes the problem in sdhci-s3c host driver for Samsung Soc's.
      During the card identification stage the mmc core driver enumerates for
      the best bus width in combination with the highest available data rate.
      It starts enumerating from the highest bus width (8) to lowest width (1).
      
      In case of few MMC cards the 4-bit bus enumeration fails and tries
      the 1-bit bus enumeration. When switched to 1-bit bus mode the host driver
      has to clear the previous bus width setting and apply the new setting.
      
      The current patch will clear the previous bus mode and apply the new
      mode setting.
      Signed-off-by: NGirish K S <girish.shivananjappa@linaro.org>
      Acked-by: NJaehoon Chung <jh80.chung@samsung.com>
      Cc: <stable@kernel.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      49bb1e61
  15. 14 8月, 2011 2 次提交
  16. 21 7月, 2011 1 次提交
  17. 16 3月, 2011 1 次提交
  18. 26 1月, 2011 1 次提交
  19. 09 1月, 2011 2 次提交
  20. 27 9月, 2010 2 次提交
  21. 21 8月, 2010 1 次提交
  22. 11 8月, 2010 3 次提交
    • M
      sdhci-s3c: add support for new card detection methods · 17866e14
      Marek Szyprowski 提交于
      On some Samsung SoCs not all SDHCI controllers have card detect (CD) line.
       For some embedded designs it is not even needed, because ususally the
      device (like SDIO flash memory or wifi controller) is permanently wired to
      the controller.  There are also systems which have a card detect line
      connected to some of the external interrupt lines or the presence of the
      card depends on some other actions (like enabling a power regulator).
      
      This patch adds support for all these cases.  The following card detection
      methods are possible:
      
      1. internal sdhci host card detect line
      2. external event
      3. external gpio interrupt
      4. no card detect line, controller will poll for the card
      5. no card detect line, card is permanently wired to the controller
      (once detected host won't poll it any more)
      
      By default, all existing code would use method #1, what is compatible with
      the previous version of the driver.
      
      In case of external event, two callbacks must be provided in platdata:
      ext_cd_init and ext_cd_cleanup.  Both of them get a callback to a function
      that notifies the s3c-sdhci host contoller as their argument.  That
      callback function should be called from the even dispatcher to let host
      notice the card insertion/removal.
      
      In case of external gpio interrupt, a gpio pin number must be provided in
      platdata (ext_cd_gpio parameter), as well as the information about the
      polarity of that gpio pin (ext_cd_gpio_invert).  By default
      (ext_cd_gpio_invert == 0) gpio value 0 means 'card has been removed', but
      this can be changed to 'card has been removed' when ext_cd_gpio_invert ==
      1.
      
      This patch adds all required changes to sdhci-s3c driver.
      Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com>
      Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
      Cc: <linux-mmc@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      17866e14
    • M
      sdhci-s3c: enable SDHCI_QUIRK_NO_HISPD_BIT quirk · a1d56460
      Marek Szyprowski 提交于
      This patch enables SDHCI_QUIRK_NO_HISPD_BIT on Samsung SDHCI driver.  This
      solves detection problems with some external SD cards.  This change has
      been tested on S5PC100 and S5PC110.  It has no inpact on driver speed.
      Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
      Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com>
      Cc: <linux-mmc@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a1d56460
    • M
      sdhci-s3c: add support for the non standard minimal clock value · ce5f036b
      Marek Szyprowski 提交于
      S3C SDHCI host controller can change the source for generating mmc clock.
      By default host bus clock is used, what causes some problems on machines
      with 133MHz bus, because the SDHCI divider cannot be as high get proper
      clock value for identification mode.  This is not a problem for the
      controller, because it can generate lower frequencies from other clock
      sources.  This patch changes sdhci driver to use get_min_clock() call if
      it has been provided.
      
      This fixes the flood of the following warnings on Samsung S5PV210 SoCs:
      mmc0: Minimum clock frequency too high for identification mode
      Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com>
      Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
      Cc: <linux-mmc@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ce5f036b