cpu: introduce cpuatomic_t
[bertos.git] / bertos / cpu / types.h
index 1b2b23f4c7538fb4ddafd7ec25277a81fc6ec35b..03bbdbf36dcbc37373f6e787ec9d38afa406f4e6 100644 (file)
 
        typedef uint16_t cpuflags_t; // FIXME
        typedef unsigned int cpustack_t;
+       typedef unsigned int cpuatomic_t;
        #warning Verify following constant
        #define SIZEOF_CPUSTACK_T 2
 
 #elif CPU_X86
 
-       /* Get IRQ_* definitions from the hosting environment. */
+       /* Get cpuflags_t definition from the hosting environment. */
        #include <cfg/os.h>
        #if OS_EMBEDDED
                typedef uint32_t cpuflags_t; // FIXME
        #endif /* OS_EMBEDDED */
 
+       typedef uint32_t cpuatomic_t;
+
        #if CPU_X86_64
                typedef uint64_t cpustack_t;
                #define SIZEOF_CPUSTACK_T 8
 #elif CPU_ARM
 
        typedef uint32_t cpuflags_t;
+       typedef uint32_t cpuatomic_t;
        typedef uint32_t cpustack_t;
        #define SIZEOF_CPUSTACK_T 4
 
 #elif CPU_PPC
 
-       typedef uint32_t cpuflags_t; // FIXME
-       typedef uint32_t cpustack_t; // FIXME
+       /* Get cpuflags_t definition from the hosting environment. */
+       #include <cfg/os.h>
+       #if OS_EMBEDDED
+               typedef uint32_t cpuflags_t;
+       #endif
+
+       typedef uint32_t cpuatomic_t;
+       typedef uint32_t cpustack_t;
        #define SIZEOF_CPUSTACK_T 4
 
 #elif CPU_DSP56K
 
        typedef uint16_t cpuflags_t;
+       typedef uint16_t cpuatomic_t;
        typedef unsigned int cpustack_t;
        #warning Verify following costant
        #define SIZEOF_CPUSTACK_T 2
 #elif CPU_AVR
 
        typedef uint8_t cpuflags_t;
+       typedef uint8_t cpuatomic_t;
        typedef uint8_t cpustack_t;
        #define SIZEOF_CPUSTACK_T 1