Choco OS
V.0.16.9.0
Join to the chocolate world
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
oc_machines_list.h
Go to the documentation of this file.
1
28
#ifndef SYSTEM_PORTABLE_INC_OC_MACHINES_LIST_H_
29
#define SYSTEM_PORTABLE_INC_OC_MACHINES_LIST_H_
30
31
#include <
oc_1word.h
>
32
33
#define oC_FAMILY_MASK 0xF000
34
#define oC_CORTEX_MASK 0x0F00
35
#define oC_PROCESSOR_MASK 0x00FF
36
37
#define oC_DEFINE_FAMILY( INDEX ) ( (INDEX) << 12 )
38
#define oC_DEFINE_CORTEX( INDEX ) ( (INDEX) << 8 )
39
#define oC_DEFINE_MACHINE( FAMILY , CORTEX , INDEX ) ( (FAMILY) | (CORTEX) | (INDEX) )
40
41
#define oC_GET_MACHINE_FAMILY( MACHINE ) ( (MACHINE) & oC_FAMILY_MASK )
42
#define oC_GET_MACHINE_CORTEX( MACHINE ) ( (MACHINE) & oC_CORTEX_MASK )
43
#define oC_GET_MACHINE_PROCESSOR( MACHINE ) ( (MACHINE) & oC_PROCESSOR_MASK )
44
45
#define oC_GET_MACHINE_ID(NAME) oC_1WORD_FROM_2(MACHINE_ , NAME)
46
#define oC_GET_FAMILY_ID(NAME) oC_1WORD_FROM_2(FAMILY_ , NAME)
47
#define oC_GET_CORTEX_ID(NAME) oC_1WORD_FROM_2(CORTEX_ , NAME)
48
49
#define CORTEX_ARM_Cortex_M4 oC_DEFINE_CORTEX( 0x04 )
50
#define CORTEX_ARM_Cortex_M7 oC_DEFINE_CORTEX( 0x07 )
51
52
#define FAMILY_LM4F oC_DEFINE_FAMILY( 0x01 )
53
#define FAMILY_STM32F7 oC_DEFINE_FAMILY( 0x02 )
54
55
#define MACHINE_LM4F120H5QR oC_DEFINE_MACHINE( LM4F , ARM_Cortex_M4 , 0x01 )
56
#define MACHINE_STM32F746NGH6 oC_DEFINE_MACHINE( STM32F7 , ARM_Cortex_M7 , 0x02 )
57
58
#endif
/* SYSTEM_PORTABLE_INC_OC_MACHINES_LIST_H_ */
oc_1word.h
Contains macros for creating one word from more words in macros.
Source
system
portable
inc
oc_machines_list.h
Generated on Fri Oct 20 2017 19:56:09 for Choco OS by
1.8.11