All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Lemberg <Alex.Lemberg@sandisk.com>
To: Ulf Hansson <ulf.hansson@linaro.org>
Cc: "linux-mmc@vger.kernel.org" <linux-mmc@vger.kernel.org>,
	"cjb@laptop.org" <cjb@laptop.org>,
	Grant Grundler <grundler@chromium.org>,
	Avi Shchislowski <Avi.Shchislowski@sandisk.com>,
	"Gwendal Grignou (gwendal@chromium.org)" <gwendal@chromium.org>
Subject: RE: [RFC PATCH 1/1 v8]mmc: Support-FFU-for-eMMC-v5.0
Date: Mon, 1 Sep 2014 09:26:16 +0000	[thread overview]
Message-ID: <282CEDFCBC30114F83C499CB8F2ED5333AEB94FF@SACMBXIP01.sdcorp.global.sandisk.com> (raw)
In-Reply-To: <CAPDyKFqumUdoxnGg8nU9FfqEUOGvBfFNBdfg4kW=V4WF5r_OSg@mail.gmail.com>

[snip]

> My conclusion from that is (correct me if I am wrong, since it may be vendor
> specific), that only minor modifications should be needed to the mmc ioctl. We
> need to add special treatment for when "cmd.opcode ==
> MMC_FFU_DOWNLOAD_OP". In such scenario the following sequence needs to
> be maintained.
> 
> 1. Claim host etc.
> 2. Set FFU mode.
> 3. Write some sectors to the FFU area, but in the same way as any other mmc
> ioctl WRITE is done.
> 4. Set normal mode.
> 5. Relase host etc.
> 
> That sequence then needs to be repeated to write the complete firmware,
> depending on buffer size. Between each and every piece of FFU data that is
> written, normal READ/WRITE operations can be served.
> Right?

We checked again the current IOCTL implementation, and we see issues
In implementing FFU as suggested above:

1. No support for multiple Write operations.
    For running Multiple I/O, user need to send CMD23 or CMD12.
    So structures "sbc" or "stop" of "mmc_blk_request" should be set accordingly.

2. There is a limit in chunk size in current implementation of IOCTL.
     From some reason we can't write more than 64KB on our platform,
     Although, the MMC_IOC_MAX_BYTES is defined to be 128KB

Based on this, we think that using existing IOCTL implementation is not 
a good solution for FFU.


Thanks,
Alex




  parent reply	other threads:[~2014-09-01 10:00 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-16 15:47 [RFC PATCH 1/1 v8]mmc: Support-FFU-for-eMMC-v5.0 Avi Shchislowski
2014-07-21 18:01 ` Gwendal Grignou
2014-07-30  0:14   ` Gwendal Grignou
2014-07-30  0:31     ` Gwendal Grignou
2014-07-30 14:08       ` Avi Shchislowski
2014-08-01  2:26         ` Hsin-Hsiang Tseng
2014-08-01  8:08           ` Hsin-Hsiang Tseng
2014-08-07 10:09             ` Avi Shchislowski
2014-08-13 12:46 ` Ulf Hansson
2014-08-14 12:37   ` Alex Lemberg
2014-08-18 10:56     ` Ulf Hansson
2014-08-21  9:13       ` Alex Lemberg
2014-08-21 12:17         ` Ulf Hansson
2014-08-25 12:25           ` Alex Lemberg
2014-09-01  9:26           ` Alex Lemberg [this message]
2014-09-01 11:27             ` Ulf Hansson
2014-09-04  1:06               ` Hsin-Hsiang Tseng

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=282CEDFCBC30114F83C499CB8F2ED5333AEB94FF@SACMBXIP01.sdcorp.global.sandisk.com \
    --to=alex.lemberg@sandisk.com \
    --cc=Avi.Shchislowski@sandisk.com \
    --cc=cjb@laptop.org \
    --cc=grundler@chromium.org \
    --cc=gwendal@chromium.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=ulf.hansson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.