[PATCH 1/8] sh: clean up asm/string.h

Rasmus Villemoes rv at rasmusvillemoes.dk
Wed Jul 1 19:15:28 CEST 2026


First, remove the !__KERNEL__ block, since U-Boot is always compiled
with -D__KERNEL__.

Second, remove the mention of the non-existing file
arch/sh/lib/strcasecmp.c and the redundant declaration of strcasecmp()
If sh did have a strcasecmp.c file, presumably the header would have
had to #define __HAVE_ARCH_STRCASECMP.

Third, remove the explicit #undefs of various __HAVE_ARCH_* and
redundant declarations of standard functions, which are anyway
declared in linux/string.h. In the linux source tree, those are all
#defines, and indeed linux does have asm implementations of those functions.

Signed-off-by: Rasmus Villemoes <rv at rasmusvillemoes.dk>
---
 arch/sh/include/asm/string.h | 51 ------------------------------------
 1 file changed, 51 deletions(-)

diff --git a/arch/sh/include/asm/string.h b/arch/sh/include/asm/string.h
index 999febcb6b7..12a9a8f796c 100644
--- a/arch/sh/include/asm/string.h
+++ b/arch/sh/include/asm/string.h
@@ -8,8 +8,6 @@
  * from linux kernel code.
  */
 
-#ifdef __KERNEL__               /* only set these up for kernel code */
-
 #define __HAVE_ARCH_STRCPY
 static inline char *strcpy(char *__dest, const char *__src)
 {
@@ -81,53 +79,4 @@ static inline int strcmp(const char *__cs, const char *__ct)
 	return __res;
 }
 
-#undef __HAVE_ARCH_STRNCMP
-extern int strncmp(const char *__cs, const char *__ct, size_t __n);
-
-#undef __HAVE_ARCH_MEMSET
-extern void *memset(void *__s, int __c, size_t __count);
-
-#undef __HAVE_ARCH_MEMCPY
-extern void *memcpy(void *__to, __const__ void *__from, size_t __n);
-
-#undef __HAVE_ARCH_MEMMOVE
-extern void *memmove(void *__dest, __const__ void *__src, size_t __n);
-
-#undef __HAVE_ARCH_MEMCHR
-extern void *memchr(const void *__s, int __c, size_t __n);
-
-#undef __HAVE_ARCH_STRLEN
-extern size_t strlen(const char *);
-
-/* arch/sh/lib/strcasecmp.c */
-extern int strcasecmp(const char *, const char *);
-
-#else                           /* KERNEL */
-
-/*
- * let user libraries deal with these,
- * IMHO the kernel has no place defining these functions for user apps
- */
-
-#define __HAVE_ARCH_STRCPY      1
-#define __HAVE_ARCH_STRNCPY     1
-#define __HAVE_ARCH_STRCAT      1
-#define __HAVE_ARCH_STRNCAT     1
-#define __HAVE_ARCH_STRCMP      1
-#define __HAVE_ARCH_STRNCMP     1
-#define __HAVE_ARCH_STRNICMP    1
-#define __HAVE_ARCH_STRCHR      1
-#define __HAVE_ARCH_STRRCHR     1
-#define __HAVE_ARCH_STRSTR      1
-#define __HAVE_ARCH_STRLEN      1
-#define __HAVE_ARCH_STRNLEN     1
-#define __HAVE_ARCH_MEMSET      1
-#define __HAVE_ARCH_MEMCPY      1
-#define __HAVE_ARCH_MEMMOVE     1
-#define __HAVE_ARCH_MEMSCAN     1
-#define __HAVE_ARCH_MEMCMP      1
-#define __HAVE_ARCH_MEMCHR      1
-#define __HAVE_ARCH_STRTOK      1
-
-#endif /* KERNEL */
 #endif /* __ASM_SH_STRING_H */
-- 
2.54.0



More information about the U-Boot mailing list