1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_UCS2_STRING_H_ 3 #define _LINUX_UCS2_STRING_H_ 4 5 #include <linux/types.h> /* for size_t */ 6 #include <linux/stddef.h> /* for NULL */ 7 8 typedef u16 ucs2_char_t; 9 10 unsigned long ucs2_strnlen(const ucs2_char_t *s, size_t maxlength); 11 unsigned long ucs2_strlen(const ucs2_char_t *s); 12 unsigned long ucs2_strsize(const ucs2_char_t *data, unsigned long maxlength); 13 ssize_t ucs2_strscpy(ucs2_char_t *dst, const ucs2_char_t *src, size_t count); 14 int ucs2_strncmp(const ucs2_char_t *a, const ucs2_char_t *b, size_t len); 15 16 unsigned long ucs2_utf8size(const ucs2_char_t *src); 17 unsigned long ucs2_as_utf8(u8 *dest, const ucs2_char_t *src, 18 unsigned long maxlength); 19 20 #endif /* _LINUX_UCS2_STRING_H_ */ 21