From: AKASHI Takahiro <takahiro.akashi@linaro.org>
To: u-boot@lists.denx.de
Subject: [PATCH v6 01/17] dfu: rename dfu_tftp_write() to dfu_write_by_name()
Date: Thu, 10 Sep 2020 10:54:18 +0900 [thread overview]
Message-ID: <20200910015418.GA2080155@laputa> (raw)
In-Reply-To: <9e6eda0c-c195-ef46-7a2d-ab20a7f6c57b@gmx.de>
On Wed, Sep 09, 2020 at 02:30:53PM +0200, Heinrich Schuchardt wrote:
> On 07.09.20 07:34, AKASHI Takahiro wrote:
> > This function is essentially independent from tftp, and will also be
> > utilised in implementing UEFI capsule update in a later commit.
> > So just give it a more generic name.
> > In addition, a new configuration option, CONFIG_DFU_ALT, was introduced
> > so that the file will be compiled with different options, particularly
> > one added in a later commit.
> >
> > Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
> > ---
> > common/update.c | 5 +++--
> > drivers/dfu/Kconfig | 5 +++++
> > drivers/dfu/Makefile | 2 +-
> > drivers/dfu/{dfu_tftp.c => dfu_alt.c} | 17 ++++++++++++--
> > include/dfu.h | 32 +++++++++++++--------------
> > 5 files changed, 40 insertions(+), 21 deletions(-)
> > rename drivers/dfu/{dfu_tftp.c => dfu_alt.c} (67%)
> >
> > diff --git a/common/update.c b/common/update.c
> > index 36b6b7523d50..39946776d74f 100644
> > --- a/common/update.c
> > +++ b/common/update.c
> > @@ -324,8 +324,9 @@ got_update_file:
> > }
> > } else if (fit_image_check_type(fit, noffset,
> > IH_TYPE_FIRMWARE)) {
> > - ret = dfu_tftp_write(fit_image_name, update_addr,
> > - update_size, interface, devstring);
> > + ret = dfu_write_by_name(fit_image_name, update_addr,
> > + update_size, interface,
> > + devstring);
> > if (ret)
> > return ret;
> > }
> > diff --git a/drivers/dfu/Kconfig b/drivers/dfu/Kconfig
> > index 0eec00ba734d..78f901ff348a 100644
> > --- a/drivers/dfu/Kconfig
> > +++ b/drivers/dfu/Kconfig
> > @@ -14,8 +14,13 @@ config DFU_OVER_TFTP
> > depends on NET
> >
> > if DFU
> > +config DFU_ALT
> > + bool
>
> You cannot define CONFIG_DFU_ALT as bool. This symbol already exists as
> string in include/configs/odroid.h, include/configs/s5p_goni.h, et.al.
> It is used to initialize environment variable dfu_alt_info. Your patch
> leads to an error on Travis:
>
> arm: + odroid
Okay, will fix it.
DFU_WRITE_ALT? Or, as Heinrich suggested, move them
to dfu.c if Lukasz agrees.
# I haven't seen any comments from him yet though.
-Takahiro Akashi
> +In file included from <command-line>:
>
> +include/linux/kconfig.h:21:49: error: pasting "__ARG_PLACEHOLDER_" and
> ""uImage fat 0 1;"" does not give a valid preprocessing token
>
> + 21 | #define _config_enabled(value)
> __config_enabled(__ARG_PLACEHOLDER_##value)
>
> Best regards
>
> Heinrich
>
> > + default n
> > +
> > config DFU_TFTP
> > bool "DFU via TFTP"
> > + select DFU_ALT
> > select DFU_OVER_TFTP
> > help
> > This option allows performing update of DFU-managed medium with data
> > diff --git a/drivers/dfu/Makefile b/drivers/dfu/Makefile
> > index 0d7925c083ef..cc7de1d3ed9b 100644
> > --- a/drivers/dfu/Makefile
> > +++ b/drivers/dfu/Makefile
> > @@ -9,5 +9,5 @@ obj-$(CONFIG_$(SPL_)DFU_MTD) += dfu_mtd.o
> > obj-$(CONFIG_$(SPL_)DFU_NAND) += dfu_nand.o
> > obj-$(CONFIG_$(SPL_)DFU_RAM) += dfu_ram.o
> > obj-$(CONFIG_$(SPL_)DFU_SF) += dfu_sf.o
> > -obj-$(CONFIG_$(SPL_)DFU_TFTP) += dfu_tftp.o
> > +obj-$(CONFIG_$(SPL_)DFU_ALT) += dfu_alt.o
> > obj-$(CONFIG_$(SPL_)DFU_VIRT) += dfu_virt.o
> > diff --git a/drivers/dfu/dfu_tftp.c b/drivers/dfu/dfu_alt.c
> > similarity index 67%
> > rename from drivers/dfu/dfu_tftp.c
> > rename to drivers/dfu/dfu_alt.c
> > index ffae4bb54f80..5b1b13d7170d 100644
> > --- a/drivers/dfu/dfu_tftp.c
> > +++ b/drivers/dfu/dfu_alt.c
> > @@ -10,8 +10,21 @@
> > #include <errno.h>
> > #include <dfu.h>
> >
> > -int dfu_tftp_write(char *dfu_entity_name, unsigned int addr, unsigned int len,
> > - char *interface, char *devstring)
> > +/**
> > + * dfu_write_by_name() - write data to DFU medium
> > + * @dfu_entity_name: Name of DFU entity to write
> > + * @addr: Address of data buffer to write
> > + * @len: Number of bytes
> > + * @interface: Destination DFU medium (e.g. "mmc")
> > + * @devstring: Instance number of destination DFU medium (e.g. "1")
> > + *
> > + * This function is storing data received on DFU supported medium which
> > + * is specified by @dfu_entity_name.
> > + *
> > + * Return: 0 - on success, error code - otherwise
> > + */
> > +int dfu_write_by_name(char *dfu_entity_name, unsigned int addr,
> > + unsigned int len, char *interface, char *devstring)
> > {
> > char *s, *sb;
> > int alt_setting_num, ret;
> > diff --git a/include/dfu.h b/include/dfu.h
> > index 84abdc79acd1..cecfbd76597b 100644
> > --- a/include/dfu.h
> > +++ b/include/dfu.h
> > @@ -494,27 +494,27 @@ static inline int dfu_fill_entity_virt(struct dfu_entity *dfu, char *devstr,
> > #endif
> >
> > /**
> > - * dfu_tftp_write() - write TFTP data to DFU medium
> > + * dfu_write_by_name() - write data to DFU medium
> > + * @dfu_entity_name: Name of DFU entity to write
> > + * @addr: Address of data buffer to write
> > + * @len: Number of bytes
> > + * @interface: Destination DFU medium (e.g. "mmc")
> > + * @devstring: Instance number of destination DFU medium (e.g. "1")
> > *
> > - * This function is storing data received via TFTP on DFU supported medium.
> > + * This function is storing data received on DFU supported medium which
> > + * is specified by @dfu_entity_name.
> > *
> > - * @dfu_entity_name: name of DFU entity to write
> > - * @addr: address of data buffer to write
> > - * @len: number of bytes
> > - * @interface: destination DFU medium (e.g. "mmc")
> > - * @devstring: instance number of destination DFU medium (e.g. "1")
> > - *
> > - * Return: 0 on success, otherwise error code
> > + * Return: 0 - on success, error code - otherwise
> > */
> > -#if CONFIG_IS_ENABLED(DFU_TFTP)
> > -int dfu_tftp_write(char *dfu_entity_name, unsigned int addr, unsigned int len,
> > - char *interface, char *devstring);
> > +#if CONFIG_IS_ENABLED(DFU_ALT)
> > +int dfu_write_by_name(char *dfu_entity_name, unsigned int addr,
> > + unsigned int len, char *interface, char *devstring);
> > #else
> > -static inline int dfu_tftp_write(char *dfu_entity_name, unsigned int addr,
> > - unsigned int len, char *interface,
> > - char *devstring)
> > +static inline int dfu_write_by_name(char *dfu_entity_name, unsigned int addr,
> > + unsigned int len, char *interface,
> > + char *devstring)
> > {
> > - puts("TFTP write support for DFU not available!\n");
> > + puts("write support for DFU not available!\n");
> > return -ENOSYS;
> > }
> > #endif
> >
>
next prev parent reply other threads:[~2020-09-10 1:54 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-07 5:34 [PATCH v6 00/17] efi_loader: add capsule update support AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 01/17] dfu: rename dfu_tftp_write() to dfu_write_by_name() AKASHI Takahiro
2020-09-09 12:30 ` Heinrich Schuchardt
2020-09-10 1:54 ` AKASHI Takahiro [this message]
2020-09-10 2:26 ` Tom Rini
2020-09-11 0:46 ` AKASHI Takahiro
2020-09-11 2:41 ` Tom Rini
2020-09-18 1:28 ` AKASHI Takahiro
2020-09-18 1:32 ` Tom Rini
2020-09-18 8:08 ` Lukasz Majewski
2020-09-07 5:34 ` [PATCH v6 02/17] dfu: modify an argument type for an address AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 03/17] common: update: add a generic interface for FIT image AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 04/17] dfu: export dfu_list AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 05/17] efi_loader: add option to initialise EFI subsystem early AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 06/17] efi_loader: add efi_create_indexed_name() AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 07/17] efi_loader: define UpdateCapsule api AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 08/17] efi_loader: capsule: add capsule_on_disk support AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 09/17] efi_loader: capsule: add memory range capsule definitions AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 10/17] efi_loader: capsule: support firmware update AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 11/17] efi_loader: add firmware management protocol for FIT image AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 12/17] dfu: add dfu_write_by_alt() AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 13/17] efi_loader: add firmware management protocol for raw image AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 14/17] cmd: add "efidebug capsule" command AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 15/17] tools: add mkeficapsule command for UEFI capsule update AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 16/17] test/py: efi_capsule: test for FIT image capsule AKASHI Takahiro
2020-09-07 5:34 ` [PATCH v6 17/17] test/py: efi_capsule: test for raw " AKASHI Takahiro
2020-09-09 14:48 ` [PATCH v6 00/17] efi_loader: add capsule update support Heinrich Schuchardt
2020-09-09 16:56 ` Tom Rini
2020-09-10 2:52 ` AKASHI Takahiro
2020-09-10 2:58 ` Tom Rini
2020-09-11 0:52 ` AKASHI Takahiro
2020-09-11 1:02 ` Tom Rini
2020-09-11 2:31 ` AKASHI Takahiro
2020-09-11 2:44 ` Tom Rini
2020-09-10 2:43 ` AKASHI Takahiro
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=20200910015418.GA2080155@laputa \
--to=takahiro.akashi@linaro.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox