summaryrefslogtreecommitdiff
path: root/arch/riscv/include/asm/string.h
diff options
context:
space:
mode:
authorYu Chien Peter Lin <peterlin@andestech.com>2023-08-09 18:49:30 +0800
committerLeo Yu-Chi Liang <ycliang@andestech.com>2023-10-19 17:29:50 +0800
commitbc5a50452bd42029d6587e1596b44ff235655e90 (patch)
tree30cf46e0c2e1415feaf8f1de62821f460771e56f /arch/riscv/include/asm/string.h
parent03a4504659bf8b0a1945a79696ae9a2b7ca4938a (diff)
riscv: Add Zbb support for building U-Boot
This patch adds ISA string to the -march to generate zbb instructions for U-Boot binaries, along with optimized string functions introduced from Linux kernel. Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
Diffstat (limited to 'arch/riscv/include/asm/string.h')
-rw-r--r--arch/riscv/include/asm/string.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/riscv/include/asm/string.h b/arch/riscv/include/asm/string.h
index 7dee3e4c9f6..38ad85fe3bb 100644
--- a/arch/riscv/include/asm/string.h
+++ b/arch/riscv/include/asm/string.h
@@ -40,4 +40,22 @@ extern void *memmove(void *, const void *, __kernel_size_t);
#endif
extern void *memset(void *, int, __kernel_size_t);
+#undef __HAVE_ARCH_STRLEN
+#if CONFIG_IS_ENABLED(USE_ARCH_STRLEN)
+#define __HAVE_ARCH_STRLEN
+#endif
+extern __kernel_size_t strlen(const char *);
+
+#undef __HAVE_ARCH_STRCMP
+#if CONFIG_IS_ENABLED(USE_ARCH_STRCMP)
+#define __HAVE_ARCH_STRCMP
+#endif
+extern int strcmp(const char *, const char *);
+
+#undef __HAVE_ARCH_STRNCMP
+#if CONFIG_IS_ENABLED(USE_ARCH_STRNCMP)
+#define __HAVE_ARCH_STRNCMP
+#endif
+extern int strncmp(const char *, const char *, size_t __kernel_size_t);
+
#endif /* __ASM_RISCV_STRING_H */