From 7a628f4dfca4a6cf3b086439bca6ca0361b92b39 Mon Sep 17 00:00:00 2001 From: hathach Date: Sat, 17 Mar 2018 02:17:40 +0700 Subject: adding bulk/int support still does not work though --- tinyusb/common/tusb_types.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'tinyusb/common') diff --git a/tinyusb/common/tusb_types.h b/tinyusb/common/tusb_types.h index c8dd849e0..2e3cf513d 100644 --- a/tinyusb/common/tusb_types.h +++ b/tinyusb/common/tusb_types.h @@ -213,6 +213,22 @@ static inline uint8_t std_class_code_to_index(uint8_t std_class_code) (std_class_code == TUSB_CLASS_VENDOR_SPECIFIC ) ? TUSB_CLASS_MAPPED_INDEX_START + 4 : 0; } +// Get direction from Endpoint address +static inline tusb_dir_t edpt_dir(uint8_t addr) +{ + return (addr & TUSB_DIR_IN_MASK) ? TUSB_DIR_IN : TUSB_DIR_OUT; +} + +// Get Endpoint number from address +static inline uint8_t edpt_number(uint8_t addr) +{ + return addr & (~TUSB_DIR_IN_MASK); +} + +static inline uint8_t edpt_addr(uint8_t num, tusb_dir_t dir) +{ + return num | (dir == TUSB_DIR_IN ? TUSB_DIR_IN_MASK : 0); +} #ifdef __cplusplus } -- cgit v1.3.1