[PATCH 0/3] mmc: FFU for eMMC v5.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 The Field Firmware Update (FFU) feature is new for eMMC 5.0 spec (Jedec:
 JESD84-B50.pdf)
   
 http://www.jedec.org/standards-documents/technology-focus-areas/flash-memory-ssds-ufs-emmc/e-mmc

 
 
 * This solution allows to:
  - Complete eMMC 5.0 FFU procedure as an atomic operation, without being interrupted by other IO requests
  - Not limited Firmware data size. Using Multiple Write operations.
  - Support of both EXT_CSD_MODE_OPERATION_CODES modes
 * The solution is using "udev" device manager to transfer FW data from user space to eMMC driver
 * Pre-existing functions from mmc_test were used in this solution.

 *New ioctl has been add:
  -transfer the new Firmware data from user space
   to the eMMC deivce and install the newfirmware.
 
Signed-off-by: Avi Shchislowski <avi.shchislowski@xxxxxxxxxxx>
Signed-off-by: Alex Lemberg <alex.lemberg@xxxxxxxxxxx>


Avi Shchislowski (3):
  mmc: Add eMMC5.0 ffu ext_csd field
  mmc: move some mmc_test.c function to core.c
  mmc: Support FFU for eMMC v5.0

 drivers/mmc/card/Kconfig    |    8 +
 drivers/mmc/card/block.c    |    5 +
 drivers/mmc/card/mmc_test.c |   97 +--------
 drivers/mmc/core/Makefile   |    1 +
 drivers/mmc/core/core.c     |  128 ++++++++++++
 drivers/mmc/core/mmc.c      |    3 +
 drivers/mmc/core/mmc_ffu.c  |  487 +++++++++++++++++++++++++++++++++++++++++++
 include/linux/mmc/card.h    |    1 +
 include/linux/mmc/core.h    |   30 +++
 include/linux/mmc/mmc.h     |    8 +
 10 files changed, 682 insertions(+), 86 deletions(-)
 create mode 100644 drivers/mmc/core/mmc_ffu.c

-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux