From 7b35cd0203bc409d7c1aefc075672103cb4a913e Mon Sep 17 00:00:00 2001 From: hathach Date: Tue, 21 Aug 2018 14:51:59 +0700 Subject: [PATCH] add string desc helper --- src/common/tusb_types.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/common/tusb_types.h b/src/common/tusb_types.h index c3ed4f2b..ee9e849b 100644 --- a/src/common/tusb_types.h +++ b/src/common/tusb_types.h @@ -416,9 +416,14 @@ static inline uint8_t descriptor_len(uint8_t const p_desc[]) return p_desc[DESC_OFFSET_LEN]; } +// Length of the string descriptors in bytes with slen characters +#define TUD_DESC_STRLEN(_slen) (2*(_slen) + 2) + +// Header of string descriptors with len + string type +#define TUD_DESC_STR_HEADER(_slen) ( (uint16_t) ( (TUSB_DESC_STRING << 8 ) | TUD_DESC_STRLEN(_slen)) ) // Convert comma-separated string to descriptor unicode format -#define TUD_DESC_STRCONV( ... ) (const uint16_t[]) { (TUSB_DESC_STRING << 8 ) | (2*VA_ARGS_NUM_(__VA_ARGS__) + 2), __VA_ARGS__ } +#define TUD_DESC_STRCONV( ... ) (const uint16_t[]) { TUD_DESC_STR_HEADER(VA_ARGS_NUM_(__VA_ARGS__)), __VA_ARGS__ } #ifdef __cplusplus }