Open FFBoard
Open source force feedback firmware
tusb_common.h File Reference

Go to the source code of this file.

Classes

struct  TU_ATTR_PACKED
 AUDIO Channel Cluster Descriptor (4.1) More...
 

Functions

TU_ATTR_WEAK void tusb_app_dcache_invalidate (uintptr_t addr, uint32_t data_size)
 
TU_ATTR_WEAK void * tusb_app_virt_to_phys (void *virt_addr)
 
TU_ATTR_WEAK void * tusb_app_phys_to_virt (void *phys_addr)
 
static TU_ATTR_ALWAYS_INLINE int tu_memset_s (void *dest, size_t destsz, int ch, size_t count)
 
static TU_ATTR_ALWAYS_INLINE int tu_memcpy_s (void *dest, size_t destsz, const void *src, size_t count)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_u32 (uint8_t b3, uint8_t b2, uint8_t b1, uint8_t b0)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_u32_from_u16 (uint16_t high, uint16_t low)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_u16 (uint8_t high, uint8_t low)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte3 (uint32_t ui32)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte2 (uint32_t ui32)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte1 (uint32_t ui32)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte0 (uint32_t ui32)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_u32_high16 (uint32_t ui32)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_u32_low16 (uint32_t ui32)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_u16_high (uint16_t ui16)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_u16_low (uint16_t ui16)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_bit_set (uint32_t value, uint8_t pos)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_bit_clear (uint32_t value, uint8_t pos)
 
static TU_ATTR_ALWAYS_INLINE bool tu_bit_test (uint32_t value, uint8_t pos)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_min8 (uint8_t x, uint8_t y)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_min16 (uint16_t x, uint16_t y)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_min32 (uint32_t x, uint32_t y)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_max8 (uint8_t x, uint8_t y)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_max16 (uint16_t x, uint16_t y)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_max32 (uint32_t x, uint32_t y)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_align (uint32_t value, uint32_t alignment)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_align4 (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_align8 (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_align16 (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_align32 (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_align4k (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_offset4k (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE bool tu_is_aligned32 (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE bool tu_is_aligned64 (uint64_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_div_ceil (uint32_t v, uint32_t d)
 
static uint8_t tu_log2 (uint32_t value)
 
static bool tu_is_power_of_two (uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint32_t tu_unaligned_read32 (const void *mem)
 
static TU_ATTR_ALWAYS_INLINE void tu_unaligned_write32 (void *mem, uint32_t value)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_unaligned_read16 (const void *mem)
 
static TU_ATTR_ALWAYS_INLINE void tu_unaligned_write16 (void *mem, uint16_t value)
 

Variables

 C
 

Function Documentation

◆ tu_align()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_align ( uint32_t  value,
uint32_t  alignment 
)
inlinestatic

Definition at line 164 of file tusb_common.h.

◆ tu_align16()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_align16 ( uint32_t  value)
inlinestatic

Definition at line 170 of file tusb_common.h.

◆ tu_align32()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_align32 ( uint32_t  value)
inlinestatic

Definition at line 171 of file tusb_common.h.

◆ tu_align4()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_align4 ( uint32_t  value)
inlinestatic

Definition at line 168 of file tusb_common.h.

◆ tu_align4k()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_align4k ( uint32_t  value)
inlinestatic

Definition at line 172 of file tusb_common.h.

◆ tu_align8()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_align8 ( uint32_t  value)
inlinestatic

Definition at line 169 of file tusb_common.h.

◆ tu_bit_clear()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_bit_clear ( uint32_t  value,
uint8_t  pos 
)
inlinestatic

Definition at line 150 of file tusb_common.h.

◆ tu_bit_set()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_bit_set ( uint32_t  value,
uint8_t  pos 
)
inlinestatic

Definition at line 149 of file tusb_common.h.

◆ tu_bit_test()

static TU_ATTR_ALWAYS_INLINE bool tu_bit_test ( uint32_t  value,
uint8_t  pos 
)
inlinestatic

Definition at line 151 of file tusb_common.h.

◆ tu_div_ceil()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_div_ceil ( uint32_t  v,
uint32_t  d 
)
inlinestatic

Definition at line 179 of file tusb_common.h.

◆ tu_is_aligned32()

static TU_ATTR_ALWAYS_INLINE bool tu_is_aligned32 ( uint32_t  value)
inlinestatic

Definition at line 175 of file tusb_common.h.

◆ tu_is_aligned64()

static TU_ATTR_ALWAYS_INLINE bool tu_is_aligned64 ( uint64_t  value)
inlinestatic

Definition at line 176 of file tusb_common.h.

◆ tu_is_power_of_two()

static bool tu_is_power_of_two ( uint32_t  value)
inlinestatic

Definition at line 195 of file tusb_common.h.

◆ tu_log2()

static uint8_t tu_log2 ( uint32_t  value)
inlinestatic

Definition at line 183 of file tusb_common.h.

◆ tu_max16()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_max16 ( uint16_t  x,
uint16_t  y 
)
inlinestatic

Definition at line 160 of file tusb_common.h.

◆ tu_max32()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_max32 ( uint32_t  x,
uint32_t  y 
)
inlinestatic

Definition at line 161 of file tusb_common.h.

◆ tu_max8()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_max8 ( uint8_t  x,
uint8_t  y 
)
inlinestatic

Definition at line 159 of file tusb_common.h.

◆ tu_memcpy_s()

static TU_ATTR_ALWAYS_INLINE int tu_memcpy_s ( void *  dest,
size_t  destsz,
const void *  src,
size_t  count 
)
inlinestatic

Definition at line 114 of file tusb_common.h.

◆ tu_memset_s()

static TU_ATTR_ALWAYS_INLINE int tu_memset_s ( void *  dest,
size_t  destsz,
int  ch,
size_t  count 
)
inlinestatic

Definition at line 104 of file tusb_common.h.

◆ tu_min16()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_min16 ( uint16_t  x,
uint16_t  y 
)
inlinestatic

Definition at line 155 of file tusb_common.h.

◆ tu_min32()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_min32 ( uint32_t  x,
uint32_t  y 
)
inlinestatic

Definition at line 156 of file tusb_common.h.

◆ tu_min8()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_min8 ( uint8_t  x,
uint8_t  y 
)
inlinestatic

Definition at line 154 of file tusb_common.h.

◆ tu_offset4k()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_offset4k ( uint32_t  value)
inlinestatic

Definition at line 173 of file tusb_common.h.

◆ tu_u16()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_u16 ( uint8_t  high,
uint8_t  low 
)
inlinestatic

Definition at line 133 of file tusb_common.h.

◆ tu_u16_high()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_u16_high ( uint16_t  ui16)
inlinestatic

Definition at line 145 of file tusb_common.h.

◆ tu_u16_low()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_u16_low ( uint16_t  ui16)
inlinestatic

Definition at line 146 of file tusb_common.h.

◆ tu_u32()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_u32 ( uint8_t  b3,
uint8_t  b2,
uint8_t  b1,
uint8_t  b0 
)
inlinestatic

Definition at line 125 of file tusb_common.h.

◆ tu_u32_byte0()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte0 ( uint32_t  ui32)
inlinestatic

Definition at line 140 of file tusb_common.h.

◆ tu_u32_byte1()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte1 ( uint32_t  ui32)
inlinestatic

Definition at line 139 of file tusb_common.h.

◆ tu_u32_byte2()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte2 ( uint32_t  ui32)
inlinestatic

Definition at line 138 of file tusb_common.h.

◆ tu_u32_byte3()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_u32_byte3 ( uint32_t  ui32)
inlinestatic

Definition at line 137 of file tusb_common.h.

◆ tu_u32_from_u16()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_u32_from_u16 ( uint16_t  high,
uint16_t  low 
)
inlinestatic

Definition at line 129 of file tusb_common.h.

◆ tu_u32_high16()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_u32_high16 ( uint32_t  ui32)
inlinestatic

Definition at line 142 of file tusb_common.h.

◆ tu_u32_low16()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_u32_low16 ( uint32_t  ui32)
inlinestatic

Definition at line 143 of file tusb_common.h.

◆ tu_unaligned_read16()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_unaligned_read16 ( const void *  mem)
inlinestatic

Definition at line 219 of file tusb_common.h.

◆ tu_unaligned_read32()

static TU_ATTR_ALWAYS_INLINE uint32_t tu_unaligned_read32 ( const void *  mem)
inlinestatic

Definition at line 207 of file tusb_common.h.

◆ tu_unaligned_write16()

static TU_ATTR_ALWAYS_INLINE void tu_unaligned_write16 ( void *  mem,
uint16_t  value 
)
inlinestatic

Definition at line 225 of file tusb_common.h.

◆ tu_unaligned_write32()

static TU_ATTR_ALWAYS_INLINE void tu_unaligned_write32 ( void *  mem,
uint32_t  value 
)
inlinestatic

Definition at line 213 of file tusb_common.h.

◆ tusb_app_dcache_invalidate()

TU_ATTR_WEAK void tusb_app_dcache_invalidate ( uintptr_t  addr,
uint32_t  data_size 
)

◆ tusb_app_phys_to_virt()

TU_ATTR_WEAK void * tusb_app_phys_to_virt ( void *  phys_addr)

◆ tusb_app_virt_to_phys()

TU_ATTR_WEAK void * tusb_app_virt_to_phys ( void *  virt_addr)

Variable Documentation

◆ C

C
extern