All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heinrich Schuchardt <xypron.glpk@gmx.de>
To: Paul Barker <paul.barker@sancloud.com>
Cc: u-boot@lists.denx.de,
	Ilias Apalodimas <ilias.apalodimas@linaro.org>,
	Tom Rini <trini@konsulko.com>
Subject: Re: [PATCH v4 2/6] efi: Add string conversion helper
Date: Thu, 6 Oct 2022 05:26:34 +0200	[thread overview]
Message-ID: <eb736a3a-7bbc-a938-de53-c4b89aa5fe8a@gmx.de> (raw)
In-Reply-To: <20221005121839.3938771-3-paul.barker@sancloud.com>

On 10/5/22 14:18, Paul Barker wrote:
> Signed-off-by: Paul Barker <paul.barker@sancloud.com>
> ---
>   include/efi_loader.h        |  3 ++-
>   lib/efi_loader/efi_string.c | 24 ++++++++++++++++++++++++
>   2 files changed, 26 insertions(+), 1 deletion(-)
>
> diff --git a/include/efi_loader.h b/include/efi_loader.h
> index 545ba06d9466..4dbbb2d3a06c 100644
> --- a/include/efi_loader.h
> +++ b/include/efi_loader.h
> @@ -985,9 +985,10 @@ struct pkcs7_message *efi_parse_pkcs7_header(const void *buf,
>   /* runtime implementation of memcpy() */
>   void efi_memcpy_runtime(void *dest, const void *src, size_t n);
>
> -/* commonly used helper function */
> +/* commonly used helper functions */
>   u16 *efi_create_indexed_name(u16 *buffer, size_t buffer_size, const char *name,
>   			     unsigned int index);
> +efi_string_t efi_convert_string(const char *str);
>
>   extern const struct efi_firmware_management_protocol efi_fmp_fit;
>   extern const struct efi_firmware_management_protocol efi_fmp_raw;
> diff --git a/lib/efi_loader/efi_string.c b/lib/efi_loader/efi_string.c
> index 8bf1e493b89e..e21e09c94617 100644
> --- a/lib/efi_loader/efi_string.c
> +++ b/lib/efi_loader/efi_string.c
> @@ -8,6 +8,7 @@
>   #include <common.h>
>   #include <charset.h>
>   #include <efi_loader.h>
> +#include <malloc.h>
>
>   /**
>    * efi_create_indexed_name - create a string name with an index
> @@ -41,3 +42,26 @@ u16 *efi_create_indexed_name(u16 *buffer, size_t buffer_size, const char *name,
>
>   	return p;
>   }
> +
> +/**
> + * efi_convert_string - Convert an ASCII or UTF-8 string to UTF-16
> + * @str:	String to be converted
> + *
> + * Return: Converted string in UTF-16 format. The caller is responsible for
> + *         freeing this string when it is no longer needed.
> + */
> +efi_string_t efi_convert_string(const char *str)
> +{
> +	efi_string_t str_16, tmp;
> +	size_t sz_16;
> +
> +	sz_16 = utf8_utf16_strlen(str);
> +	str_16 = calloc(sz_16 + 1, sizeof(u16));
> +	if (!str_16)
> +		return NULL;
> +
> +	tmp = str_16;
> +	utf8_utf16_strcpy(&tmp, str);
> +
> +	return str_16;
> +}

We will be able to use the function for code simplification in the
following places in future:

cmd/efidebug.c:800:
cmd/nvedit_efi.c:498:

Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>


  reply	other threads:[~2022-10-06  3:26 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-05 12:18 [PATCH v4 0/6] Support UEFI SPI I/O protocol Paul Barker
2022-10-05 12:18 ` [PATCH v4 1/6] spi: Implement spi_set_speed Paul Barker
2022-10-06  3:15   ` Heinrich Schuchardt
2022-10-05 12:18 ` [PATCH v4 2/6] efi: Add string conversion helper Paul Barker
2022-10-06  3:26   ` Heinrich Schuchardt [this message]
2022-10-06  6:19   ` Ilias Apalodimas
2022-10-05 12:18 ` [PATCH v4 3/6] efi_loader: Add SPI I/O protocol support Paul Barker
2022-10-24 11:54   ` Ilias Apalodimas
2022-10-25 16:39     ` Paul Barker
2022-10-25 17:26       ` Tom Rini
2022-10-05 12:18 ` [PATCH v4 4/6] efi_selftest: Add tests for SPI " Paul Barker
2022-10-05 12:18 ` [PATCH v4 5/6] arm: dts: am335x-sancloud-bbe-lite: UEFI SPI export Paul Barker
2022-10-06  4:12   ` [U-Boot PATCH " Heinrich Schuchardt
2022-10-05 12:18 ` [PATCH v4 6/6] am335x_evm_defconfig: Enable Micron SPI flash support Paul Barker

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=eb736a3a-7bbc-a938-de53-c4b89aa5fe8a@gmx.de \
    --to=xypron.glpk@gmx.de \
    --cc=ilias.apalodimas@linaro.org \
    --cc=paul.barker@sancloud.com \
    --cc=trini@konsulko.com \
    --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.