1. 26 Nov, 2018 1 commit
  2. 28 Sep, 2018 2 commits
    • Yann Gautier's avatar
      mmc: Update framework to use standard response type · 97d5db8c
      Yann Gautier authored
      Respect official response type and update response to follow
      official specification.
      All the MMC_RESPONSE_R(_x) are replaced with each corresponding define.
      
      Partly revert 2a82a9c9
      
       for dw_mmc.c:
      Responses R1, R1B and R5 have CRC.
      Signed-off-by: default avatarLionel Debieve <lionel.debieve@st.com>
      Signed-off-by: default avatarYann Gautier <yann.gautier@st.com>
      97d5db8c
    • Shawn Guo's avatar
      drivers: mmc: Fix R2 response type definition · a2a69bc8
      Shawn Guo authored
      The Poplar is broken on eMMC initialization because of commit
      2a82a9c9 ("drivers: emmc: dw_mmc: Add response flag into response ID
      definition").  It changes the driver behavior on response type handling
      in dw_send_cmd(), because MMC_RESPONSE_R(2) and MMC_RESPONSE_R2 are
      different things.  MMC core is still sending the former while we already
      changed to check the latter in dw_mmc driver.
      
      This patch fixes R2 response type in MMC core code.  It's the same
      thing as what commit 94522ff7
      
       ("drivers: mmc: Fix R3 response type
      definition") does for R3 response.
      
      With this fix, Poplar is back to work.
      Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
      a2a69bc8
  3. 04 Sep, 2018 2 commits
  4. 10 Aug, 2018 5 commits
  5. 02 Aug, 2018 1 commit
  6. 03 Jul, 2018 1 commit
    • Yann Gautier's avatar
      Add MMC framework · ad71d45e
      Yann Gautier authored
      
      
      This change is largely based on existing eMMC framework by Haojian Zhuang
      (@hzhuang1).
      
      The MMC framework supports both eMMC and SD card devices. It was
      written as a new framework since breaking few eMMC framework APIs.
      
      At card probe and after the reset to idle command (CMD0), a Send
      Interface Condition Command is sent (CMD8) to distinguish between
      eMMC and SD card devices. eMMC devices go through the same
      sequence as in the former eMMC framework. Else the framework
      uses commands dedicated to SD-cards for init or frequency switch.
      
      A structure is created to share info with the driver. It stores:
      - the MMC type (eMMC, SD or SD HC)
      - the device size
      - the max frequency supported by the device
      - the block size: 512 for eMMC and SD-HC and read from CSD
       structure for older SD-cards
      
      Restriction to align buffers on block size has been removed.
      Cache maintenance was removed and is expected to be done in the platform
      or device driver.
      
      The MMC framework includes some MISRA compliance coding style
      maybe not yet ported in the existing eMMC framework.
      
      Fixes ARM-software/tf-issues#597
      Signed-off-by: default avatarYann Gautier <yann.gautier@st.com>
      ad71d45e