All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lukasz Majewski <lukma@denx.de>
To: u-boot@lists.denx.de
Subject: [RFC PATCH] dfu: add DFU_SKIP layout concept
Date: Mon, 2 Nov 2020 10:55:14 +0100	[thread overview]
Message-ID: <20201102105514.15dd050d@jawa> (raw)
In-Reply-To: <20201102062421.8877-1-jh80.chung@samsung.com>

Hi Jaehoon,

> Add DFU_SKIP layout cencept.
> If layout is "skip", it will be skipped after nothing to do.
> It's useful to support multiple board with one tar file.
> 
> Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
> ---
>  drivers/dfu/dfu.c     | 2 +-
>  drivers/dfu/dfu_mmc.c | 9 +++++++++
>  include/dfu.h         | 1 +
>  3 files changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/dfu/dfu.c b/drivers/dfu/dfu.c
> index a298c2c43999..f679f1fa5fe5 100644
> --- a/drivers/dfu/dfu.c
> +++ b/drivers/dfu/dfu.c
> @@ -614,7 +614,7 @@ const char *dfu_get_dev_type(enum dfu_device_type
> t) const char *dfu_get_layout(enum dfu_layout l)
>  {
>  	const char *const dfu_layout[] = {NULL, "RAW_ADDR", "FAT",
> "EXT2",
> -					  "EXT3", "EXT4", "RAM_ADDR"
> };
> +					  "EXT3", "EXT4",
> "RAM_ADDR", "SKIP" }; return dfu_layout[l];
>  }
>  
> diff --git a/drivers/dfu/dfu_mmc.c b/drivers/dfu/dfu_mmc.c
> index 691d01c7ebdf..c7c324b0a986 100644
> --- a/drivers/dfu/dfu_mmc.c
> +++ b/drivers/dfu/dfu_mmc.c
> @@ -108,6 +108,8 @@ static int mmc_file_op(enum dfu_op op, struct
> dfu_entity *dfu, case DFU_FS_EXT4:
>  		fstype = FS_TYPE_EXT;
>  		break;
> +	case DFU_SKIP:
> +		return 0;
>  	default:
>  		printf("%s: Layout (%s) not (yet) supported!\n",
> __func__, dfu_get_layout(dfu->layout));
> @@ -204,6 +206,9 @@ int dfu_write_medium_mmc(struct dfu_entity *dfu,
>  	case DFU_FS_EXT4:
>  		ret = mmc_file_buf_write(dfu, offset, buf, len);
>  		break;
> +	case DFU_SKIP:
> +		ret = 0;
> +		break;
>  	default:
>  		printf("%s: Layout (%s) not (yet) supported!\n",
> __func__, dfu_get_layout(dfu->layout));
> @@ -238,6 +243,8 @@ int dfu_get_medium_size_mmc(struct dfu_entity
> *dfu, u64 *size) if (ret < 0)
>  			return ret;
>  		return 0;
> +	case DFU_SKIP:
> +		return 0;
>  	default:
>  		printf("%s: Layout (%s) not (yet) supported!\n",
> __func__, dfu_get_layout(dfu->layout));
> @@ -399,6 +406,8 @@ int dfu_fill_entity_mmc(struct dfu_entity *dfu,
> char *devstr, char *s) dfu->layout = DFU_FS_FAT;
>  	} else if (!strcmp(entity_type, "ext4")) {
>  		dfu->layout = DFU_FS_EXT4;
> +	} else if (!strcmp(entity_type, "skip")) {
> +		dfu->layout = DFU_SKIP;
>  	} else {
>  		pr_err("Memory layout (%s) not supported!\n",
> entity_type); return -ENODEV;
> diff --git a/include/dfu.h b/include/dfu.h
> index 84abdc79acd1..2e8276c69c9f 100644
> --- a/include/dfu.h
> +++ b/include/dfu.h
> @@ -33,6 +33,7 @@ enum dfu_layout {
>  	DFU_FS_EXT3,
>  	DFU_FS_EXT4,
>  	DFU_RAM_ADDR,
> +	DFU_SKIP,
>  };
>  
>  enum dfu_op {

Fine for me. Please add a verbose description to doc/DFU.readme with
some examples (i.e. which target board and how you plan to use this
feature).


Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20201102/e5473651/attachment.sig>

  reply	other threads:[~2020-11-02  9:55 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20201102062402epcas1p4e4a7e14918f97a3d7989e24e9389f79b@epcas1p4.samsung.com>
2020-11-02  6:24 ` [RFC PATCH] dfu: add DFU_SKIP layout concept Jaehoon Chung
2020-11-02  9:55   ` Lukasz Majewski [this message]
2020-11-02 21:54     ` Jaehoon Chung

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=20201102105514.15dd050d@jawa \
    --to=lukma@denx.de \
    --cc=u-boot@lists.denx.de \
    /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.