1. 17 12月, 2018 1 次提交
  2. 16 7月, 2018 4 次提交
  3. 31 5月, 2018 1 次提交
  4. 02 5月, 2018 2 次提交
  5. 23 11月, 2017 1 次提交
  6. 30 10月, 2017 6 次提交
    • A
      mmc: sdhci-msm: fix x86 build error · 9ccfa817
      Arnd Bergmann 提交于
      The __WARN_printf() function is not portable across architectures
      and causes a compile-time error on x86 and others that don't use
      the asm-generic version of asm/bug.h:
      
      drivers/mmc/host/sdhci-msm.c: In function 'sdhci_msm_check_power_status':
      drivers/mmc/host/sdhci-msm.c:1066:4: error: implicit declaration of function '__WARN_printf'; did you mean '__dev_printk'? [-Werror=implicit-function-declaration]
          __WARN_printf("%s: pwr_irq for req: (%d) timed out\n",
          ^~~~~~~~~~~~~
      
      The change that introduced this error, "mmc: sdhci-msm: Add sdhci msm
      register write APIs which wait for pwr irq", likely meant to use
      dev_warn(), so I'm changing over to that.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      9ccfa817
    • V
      mmc: sdhci-msm: Add sdhci msm register write APIs which wait for pwr irq · c0309b38
      Vijay Viswanath 提交于
      Register writes which change voltage of IO lines or turn the IO bus
      on/off require controller to be ready before progressing further. When
      the controller is ready, it will generate a power irq which needs to be
      handled. The thread which initiated the register write should wait for
      power irq to complete. This will be done through the new sdhc msm write
      APIs which will check whether the particular write can trigger a power
      irq and wait for it with a timeout if it is expected.
      The SDHC core power control IRQ gets triggered when -
      * There is a state change in power control bit (bit 0)
        of SDHCI_POWER_CONTROL register.
      * There is a state change in 1.8V enable bit (bit 3) of
        SDHCI_HOST_CONTROL2 register.
      * Bit 1 of SDHCI_SOFTWARE_RESET is set.
      
      Also add support APIs which are used by sdhc msm write APIs to check
      if power irq is expected to be generated and wait for the power irq
      to come and complete if the irq is expected.
      
      This patch requires CONFIG_MMC_SDHCI_IO_ACCESSORS to be enabled.
      Signed-off-by: NSahitya Tummala <stummala@codeaurora.org>
      Signed-off-by: NVijay Viswanath <vviswana@codeaurora.org>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      c0309b38
    • S
      mmc: sdhci-msm: Fix HW issue with power IRQ handling during reset · 401b2d06
      Sahitya Tummala 提交于
      There is a rare scenario in HW, where the first clear pulse could
      be lost when the actual reset and clear/read of status register
      are happening at the same time. Fix this by retrying upto 10 times
      to ensure the status register gets cleared. Otherwise, this will
      lead to a spurious power IRQ which results in system instability.
      Signed-off-by: NSahitya Tummala <stummala@codeaurora.org>
      Signed-off-by: NVijay Viswanath <vviswana@codeaurora.org>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      401b2d06
    • S
      mmc: sdhci-msm: fix issue with power irq · c7ccee22
      Subhash Jadavani 提交于
      SDCC controller reset (SW_RST) during probe may trigger power irq if
      previous status of PWRCTL was either BUS_ON or IO_HIGH_V. So before we
      enable the power irq interrupt in GIC (by registering the interrupt
      handler), we need to ensure that any pending power irq interrupt status
      is acknowledged otherwise power irq interrupt handler would be fired
      prematurely.
      Signed-off-by: NSubhash Jadavani <subhashj@codeaurora.org>
      Signed-off-by: NVijay Viswanath <vviswana@codeaurora.org>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      c7ccee22
    • B
      mmc: sdhci-msm: Enable delay circuit calibration clocks · 4946b3af
      Bjorn Andersson 提交于
      The delay circuit used to support HS400 is calibrated based on two
      additional clocks. When these clocks are not available and
      FF_CLK_SW_RST_DIS is not set in CORE_HC_MODE, reset might fail. But on
      some platforms this doesn't work properly and below dump can be seen in
      the kernel log.
      
        mmc0: Reset 0x1 never completed.
        mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
        mmc0: sdhci: Sys addr:  0x00000000 | Version:  0x00001102
        mmc0: sdhci: Blk size:  0x00004000 | Blk cnt:  0x00000000
        mmc0: sdhci: Argument:  0x00000000 | Trn mode: 0x00000000
        mmc0: sdhci: Present:   0x01f80000 | Host ctl: 0x00000000
        mmc0: sdhci: Power:     0x00000000 | Blk gap:  0x00000000
        mmc0: sdhci: Wake-up:   0x00000000 | Clock:    0x00000002
        mmc0: sdhci: Timeout:   0x00000000 | Int stat: 0x00000000
        mmc0: sdhci: Int enab:  0x00000000 | Sig enab: 0x00000000
        mmc0: sdhci: AC12 err:  0x00000000 | Slot int: 0x00000000
        mmc0: sdhci: Caps:      0x742dc8b2 | Caps_1:   0x00008007
        mmc0: sdhci: Cmd:       0x00000000 | Max curr: 0x00000000
        mmc0: sdhci: Resp[0]:   0x00000000 | Resp[1]:  0x00000000
        mmc0: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000000
        mmc0: sdhci: Host ctl2: 0x00000000
        mmc0: sdhci: ============================================
      
      Add support for the additional calibration clocks to allow these
      platforms to be configured appropriately.
      
      Cc: Venkat Gopalakrishnan <venkatg@codeaurora.org>
      Cc: Ritesh Harjani <riteshh@codeaurora.org>
      Signed-off-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Acked-by: NRob Herring <robh@kernel.org>
      Tested-by: NJeremy McNicoll <jeremymc@redhat.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      4946b3af
    • B
      mmc: sdhci-msm: Utilize bulk clock API · e4bf91f6
      Bjorn Andersson 提交于
      By stuffing the runtime controlled clocks into a clk_bulk_data array we
      can utilize the newly introduced bulk clock operations and clean up the
      error paths. This allow us to handle additional clocks in subsequent
      patch, without the added complexity.
      
      Cc: Ritesh Harjani <riteshh@codeaurora.org>
      Signed-off-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Tested-by: NJeremy McNicoll <jeremymc@redhat.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      e4bf91f6
  7. 30 8月, 2017 2 次提交
  8. 25 4月, 2017 1 次提交
  9. 13 2月, 2017 9 次提交
  10. 29 11月, 2016 11 次提交
  11. 27 10月, 2016 1 次提交
  12. 25 7月, 2016 1 次提交