1. 05 3月, 2014 15 次提交
  2. 04 3月, 2014 1 次提交
    • F
      mmc: dw_mmc: fix possible build error · 370aede6
      Felipe Balbi 提交于
      Fix the following build errors:
      
      drivers/mmc/host/dw_mmc-k3.c: In function ‘dw_mci_k3_suspend’:
      drivers/mmc/host/dw_mmc-k3.c:58:2: error: implicit declaration of
      	function ‘dw_mci_suspend’ [-Werror=implicit-function-declaration]
        ret = dw_mci_suspend(host);
        ^
      drivers/mmc/host/dw_mmc-k3.c: In function ‘dw_mci_k3_resume’:
      drivers/mmc/host/dw_mmc-k3.c:76:2: error: implicit declaration of
      	function ‘dw_mci_resume’ [-Werror=implicit-function-declaration]
        return dw_mci_resume(host);
        ^
      drivers/mmc/host/dw_mmc-k3.c: At top level:
      drivers/mmc/host/dw_mmc-k3.c:53:12: warning: ‘dw_mci_k3_suspend’ defined
      	but not used [-Wunused-function]
       static int dw_mci_k3_suspend(struct device *dev)
                  ^
      drivers/mmc/host/dw_mmc-k3.c:65:12: warning: ‘dw_mci_k3_resume’ defined
      	but not used [-Wunused-function]
       static int dw_mci_k3_resume(struct device *dev)
                  ^
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      Acked-by: NJaehoon Chung <jh80.chung@samsung.com>
      Signed-off-by: NChris Ball <chris@printf.net>
      370aede6
  3. 03 3月, 2014 6 次提交
  4. 27 2月, 2014 3 次提交
  5. 26 2月, 2014 10 次提交
  6. 25 2月, 2014 1 次提交
  7. 23 2月, 2014 4 次提交
    • U
      mmc: mmci: Enable support for busy detection for ux500 variant · 8d94b54d
      Ulf Hansson 提交于
      The ux500 variants have HW busy detection support, which is indicated
      by the busy_detect flag. For these variants let's enable the
      MMC_CAP_WAIT_WHILE_BUSY flag and add the support for it.
      
      The mmc core will provide the RSP_BUSY command flag for those requests
      we should care about busy detection. Regarding the max_busy_timeout,
      the HW don't support busy detection timeouts so at this initial step
      let's make it simple and set it to zero to indicate we are able to
      support any timeout.
      
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Johan Rudholm <jrudholm@gmail.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: NChris Ball <chris@printf.net>
      8d94b54d
    • U
      mmc: mmci: Handle CMD irq before DATA irq · e7f3d222
      Ulf Hansson 提交于
      In case of a read operation both MCI_CMDRESPEND and MCI_DATAEND can be
      set in the status register when entering the interrupt handler. This is
      due to that the card start sending data before the host has
      acknowledged the command response.
      
      To resolve the issue for this scenario, we must start by handling the
      CMD irq instead of the DATA irq. The reason is beacuse the completion
      of the DATA irq will not respect the current command and then causing
      it to be garbled.
      
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Johan Rudholm <jrudholm@gmail.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: NChris Ball <chris@printf.net>
      e7f3d222
    • U
      mmc: block: Fixup busy detection while invoking stop cmd at recovery · bb5cba40
      Ulf Hansson 提交于
      When sending a stop command at the recovery path, use a R1B response
      when the failing data request are a WRITE. Thus we also care about the
      busy detection completion in this case.
      
      For a failing READ request, we use a R1 response for the stop command,
      since we don't need to care about busy detection in this case.
      
      To align behavior between hosts supporting MMC_CAP_WAIT_WHILE_BUSY and
      those who are not, we add a CMD13 polling method for the card's status.
      
      We also respect whether the host has specified the max_busy_timeout,
      which means we may fallback to CMD13 polling if the timeout is greater
      than what the host are able to support.
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: NChris Ball <chris@printf.net>
      bb5cba40
    • U
      mmc: block: Respect hw busy detection in card_busy_detect() · 95a91298
      Ulf Hansson 提交于
      Currently for write request we don't trust the hw busy detection to be
      fully handled by host, thus we also poll the card's status until we see
      it's gets out of the busy state.
      
      Still there are scenarios where it will a benefit to trust the hw busy
      detection done by the host, since no additional polling is needed.
      Let's prepare card_busy_detect() to be able to handle this.
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: NChris Ball <chris@printf.net>
      95a91298