On 6/28/21 3:48 AM, Simon Glass wrote:
Rather than looking at two KConfig options in the Makefile, create a new
Kconfig option for compiling lib/charset.c

Enable it for UFS also, which needs this support.

+CC Faiz, maintainer UFS

Function utf16_to_utf8() is used in ufshcd_read_string_desc(). It
assumes that UTF-16 is using CPU endianness. What does UFS require on
big-endian systems?


Signed-off-by: Simon Glass <s...@chromium.org>

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

---

  lib/Kconfig  | 8 ++++++++
  lib/Makefile | 2 +-
  2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/lib/Kconfig b/lib/Kconfig
index ad0cd52edd8..e1415799965 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -40,6 +40,14 @@ config CC_OPTIMIZE_LIBS_FOR_SPEED

          If unsure, say N.

+config CHARSET
+       bool
+       default y if UT_UNICODE || EFI_LOADER || UFS
+       help
+         Enables support for various conversions between different
+         character sets, such as between unicode representations and
+         different 'code pages'.
+
  config DYNAMIC_CRC_TABLE
        bool "Enable Dynamic tables for CRC"
        help
diff --git a/lib/Makefile b/lib/Makefile
index 881034f4ae3..2d2b273ccef 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -25,7 +25,7 @@ obj-$(CONFIG_AES) += aes/
  obj-$(CONFIG_$(SPL_TPL_)BINMAN_FDT) += binman.o

  ifndef API_BUILD
-ifneq ($(CONFIG_UT_UNICODE)$(CONFIG_EFI_LOADER),)
+ifneq ($(CONFIG_CHARSET),)
  obj-y += charset.o
  endif
  endif


Reply via email to