diff options
| author | hathach <[email protected]> | 2019-05-14 12:03:06 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2019-05-14 12:03:06 +0700 |
| commit | 3e24daac79adc66c3163486d59878cb718a88f32 (patch) | |
| tree | 5a38045f81fb869aae1e5048b468be0905f8483e | |
| parent | 61ec4077520fb00e071fab5f5be3c6751eecd254 (diff) | |
remove deprecated tusb_task, clean up tusb compiler
| -rw-r--r-- | src/common/compiler/tusb_compiler_gcc.h | 74 | ||||
| -rw-r--r-- | src/common/compiler/tusb_compiler_iar.h | 58 | ||||
| -rw-r--r-- | src/common/tusb_compiler.h | 21 | ||||
| -rw-r--r-- | src/tusb.h | 14 |
4 files changed, 18 insertions, 149 deletions
diff --git a/src/common/compiler/tusb_compiler_gcc.h b/src/common/compiler/tusb_compiler_gcc.h deleted file mode 100644 index 57c4c3d3e..000000000 --- a/src/common/compiler/tusb_compiler_gcc.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2019 Ha Thach (tinyusb.org) - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - * This file is part of the TinyUSB stack. - */ - -/** \ingroup Group_Compiler - * \defgroup Group_GCC GNU GCC - * @{ */ - -#ifndef _TUSB_COMPILER_GCC_H_ -#define _TUSB_COMPILER_GCC_H_ - -#ifdef __cplusplus - extern "C" { -#endif - -#define ALIGN_OF(x) __alignof__(x) - -// Specifies a minimum alignment for the variable or structure field, measured in bytes -#define ATTR_ALIGNED(Bytes) __attribute__ ((aligned(Bytes))) - -// Place variable in a specific section -#define ATTR_SECTION(sec_name) __attribute__ (( section(#sec_name) )) - -// Packed struct/variable into smallest possible size -#define ATTR_PACKED __attribute__ ((packed)) -#define ATTR_PREPACKED - -// The deprecated attribute results in a warning if the function is used. -#define ATTR_DEPRECATED(mess) __attribute__ ((deprecated(mess))) - -// The weak attribute causes the declaration to be emitted as a weak symbol rather than a global. -#define ATTR_WEAK __attribute__ ((weak)) - -// Function/Variable is meant to be possibly unused (thus no warning) -#define ATTR_UNUSED __attribute__ ((unused)) - -// TODO mcu specific -#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ -#define __n2be(x) __builtin_bswap32(x) ///< built-in function to convert 32-bit from native to Big Endian -#define __be2n(x) __n2be(x) ///< built-in function to convert 32-bit from Big Endian to native - -#define __n2be_16(u16) __builtin_bswap16(u16) -#define __be2n_16(u16) __n2be_16(u16) -#endif - -#ifdef __cplusplus - } -#endif - -#endif /* _TUSB_COMPILER_GCC_H_ */ - -/// @} diff --git a/src/common/compiler/tusb_compiler_iar.h b/src/common/compiler/tusb_compiler_iar.h deleted file mode 100644 index 93b3b4630..000000000 --- a/src/common/compiler/tusb_compiler_iar.h +++ /dev/null @@ -1,58 +0,0 @@ -/*
- * The MIT License (MIT)
- *
- * Copyright (c) 2019 Ha Thach (tinyusb.org)
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- * This file is part of the TinyUSB stack.
- */
-
-#ifndef _TUSB_COMPILER_IAR_H_
-#define _TUSB_COMPILER_IAR_H_
-
-#ifdef __cplusplus
- extern "C" {
-#endif
-
-#define ALIGN_OF(x) __ALIGNOF__(x)
-#define ATTR_ALIGNED(bytes) _Pragma(XSTRING_(data_alignment=##bytes))
-//#define ATTR_SECTION(section) _Pragma((#section))
-#define ATTR_PREPACKED __packed
-#define ATTR_PACKED
-#define ATTR_DEPRECATED(mess)
-#define ATTR_WEAK __weak
-#define ATTR_UNUSED
-
-// built-in function to convert 32-bit Big-Endian to Little-Endian
-//#if __LITTLE_ENDIAN__
-#define __be2n __REV
-#define __n2be __be2n
-
-#define __n2be_16(u16) ((uint16_t) __REV16(u16))
-#define __be2n_16(u16) __n2be_16(u16)
-
-#error "IAR won't work due to '__packed' placement before struct"
-
-#ifdef __cplusplus
- }
-#endif
-
-#endif /* _TUSB_COMPILER_IAR_H_ */
-
diff --git a/src/common/tusb_compiler.h b/src/common/tusb_compiler.h index 62708e0e9..3ed8e1af7 100644 --- a/src/common/tusb_compiler.h +++ b/src/common/tusb_compiler.h @@ -53,9 +53,24 @@ #endif
#if defined(__GNUC__)
- #include "compiler/tusb_compiler_gcc.h"
-#elif defined __ICCARM__
- #include "compiler/tusb_compiler_iar.h"
+ #define ATTR_ALIGNED(Bytes) __attribute__ ((aligned(Bytes)))
+ #define ATTR_SECTION(sec_name) __attribute__ ((section(#sec_name)))
+ #define ATTR_PACKED __attribute__ ((packed))
+ #define ATTR_PREPACKED
+ #define ATTR_WEAK __attribute__ ((weak))
+ #define ATTR_DEPRECATED(mess) __attribute__ ((deprecated(mess))) // warn if function with this attribute is used
+ #define ATTR_UNUSED __attribute__ ((unused)) // Function/Variable is meant to be possibly unused
+
+ #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+ #define __n2be(x) __builtin_bswap32(x) ///< built-in function to convert 32-bit from native to Big Endian
+ #define __be2n(x) __n2be(x) ///< built-in function to convert 32-bit from Big Endian to native
+
+ #define __n2be_16(u16) __builtin_bswap16(u16)
+ #define __be2n_16(u16) __n2be_16(u16)
+ #endif
+
+#else
+ #error "Compiler attribute porting are required"
#endif
#endif /* _TUSB_COMPILER_H_ */
diff --git a/src/tusb.h b/src/tusb.h index acb10ff57..30642c00d 100644 --- a/src/tusb.h +++ b/src/tusb.h @@ -101,20 +101,6 @@ bool tusb_inited(void); // TODO
// bool tusb_teardown(void);
-
-// backward compatible only. TODO remove later
-ATTR_DEPRECATED("Please use either tud_task() or tuh_task()")
-static inline void tusb_task(void)
-{
- #if TUSB_OPT_HOST_ENABLED
- tuh_task();
- #endif
-
- #if TUSB_OPT_DEVICE_ENABLED
- tud_task();
- #endif
-}
-
/** @} */
#ifdef __cplusplus
|
