| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- #ifndef _SYS_NUT_TYPES_H_
- #define _SYS_NUT_TYPES_H_
- /*
- * nut-specific sys/types.h definitions that are not available on in unix sys/types.h
- */
- /*!
- * \brief Unsigned register type.
- *
- * The size of this type is equal to the size of a register,
- * the hardware datapath or whatever might fit to give optimum
- * performance for values from 0 to 255.
- *
- * Typically 8 bit CPUs will use unsigned characters, 16 bit
- * CPUs will use unsigned shorts etc.
- */
- #if defined(__AVR__)
- typedef unsigned char ureg_t;
- #elif defined(__arm__)
- typedef unsigned short ureg_t;
- #elif defined(__H8300__) || defined(__H8300H__) || defined(__H8300S__)
- typedef unsigned short ureg_t;
- #elif defined(__m68k__)
- typedef unsigned short ureg_t;
- #elif defined(__linux__) || defined(__APPLE__)
- typedef unsigned short ureg_t;
- #endif
- /*!
- * \brief Signed register type.
- *
- * Similar to ureg_t, but for signed values from -128 to +127.
- */
- #if defined(__AVR__)
- typedef unsigned char reg_t;
- #elif defined(__arm__)
- typedef unsigned short reg_t;
- #elif defined(__H8300__) || defined(__H8300H__) || defined(__H8300S__)
- typedef unsigned short reg_t;
- #elif defined(__m68k__)
- typedef unsigned short reg_t;
- #elif defined(__linux__) || defined(__APPLE__)
- typedef unsigned short reg_t;
- #endif
- /*!
- * \brief Unsigned pointer value type.
- *
- * The size of this type is at least the size of a memory pointer.
- * For CPUs with 16 address bits this will be an unsigned short.
- */
- #if defined(__AVR__)
- typedef unsigned short uptr_t;
- #else
- /*
- * For remaining MCUs GCC is assumed where __PTRDIFF_TYPE__ macro is defined
- */
- typedef unsigned __PTRDIFF_TYPE__ uptr_t;
- #endif
- /*! \brief Void pointer */
- typedef void *HANDLE;
- #endif
|