summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2019-05-14 12:03:06 +0700
committerhathach <[email protected]>2019-05-14 12:03:06 +0700
commit3e24daac79adc66c3163486d59878cb718a88f32 (patch)
tree5a38045f81fb869aae1e5048b468be0905f8483e
parent61ec4077520fb00e071fab5f5be3c6751eecd254 (diff)
remove deprecated tusb_task, clean up tusb compiler
-rw-r--r--src/common/compiler/tusb_compiler_gcc.h74
-rw-r--r--src/common/compiler/tusb_compiler_iar.h58
-rw-r--r--src/common/tusb_compiler.h21
-rw-r--r--src/tusb.h14
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