]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_Kinetis_K60_Tower_IAR/Freescale_Code/cpu/regfile.h
Add FreeRTOS-Plus directory.
[freertos] / FreeRTOS / Demo / CORTEX_Kinetis_K60_Tower_IAR / Freescale_Code / cpu / regfile.h
1 /********************************************************************************/\r
2 /*      FILENAME  RegisterFile.h                                                                                                */\r
3 /* The current release of the documentation and header files does not include\r
4  * the system register file or the VBAT register file. This header file\r
5  * adds support for accessing both register files. \r
6  * \r
7  * Once the manual is updated to include the register files, this file\r
8  * will become obsolete. \r
9  */\r
10 /********************************************************************************/\r
11 \r
12 /* Register File - Peripheral instance base addresses */\r
13 /* Peripheral System Register File base pointer */\r
14 #define RFSYS_DATA_BASE_PTR                        ((RFDATA_MemMapPtr)0x40041000u)\r
15 /* Peripheral VBAT Register File  base pointer */\r
16 #define RFVBAT_DATA_BASE_PTR                       ((RFDATA_MemMapPtr)0x4003E000u)\r
17 \r
18   typedef struct RFDATA_MemMap {\r
19   uint32_t RFDATA [32];            /*!< Register file  n, array offset: 0x0, array step: 0x4 */\r
20  \r
21   \r
22 } volatile *RFDATA_MemMapPtr;\r
23 \r
24 /* ----------------------------------------------------------------------------\r
25    -- Register file - Register accessor macros\r
26    ---------------------------------------------------------------------------- */\r
27 \r
28 /* Register file - Register accessors */\r
29 #define RFSYS_DATA_REG(base,index)              ((base)->RFDATA[index])\r
30 #define RFVBAT_DATA_REG(base,index)             ((base)->RFDATA[index])\r
31 \r
32 #define RFSYS_DATA0                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,0 )\r
33 #define RFSYS_DATA1                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,1 )\r
34 #define RFSYS_DATA2                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,2 )\r
35 #define RFSYS_DATA3                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,3 )\r
36 #define RFSYS_DATA4                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,4 )\r
37 #define RFSYS_DATA5                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,5 )\r
38 #define RFSYS_DATA6                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,6 )\r
39 #define RFSYS_DATA7                             RFSYS_DATA_REG(RFSYS_DATA_BASE_PTR,7 )\r
40 \r
41 #define RFVBAT_DATA0                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,0 )\r
42 #define RFVBAT_DATA1                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,1 )\r
43 #define RFVBAT_DATA2                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,2 )\r
44 #define RFVBAT_DATA3                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,3 )\r
45 #define RFVBAT_DATA4                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,4 )\r
46 #define RFVBAT_DATA5                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,5 )\r
47 #define RFVBAT_DATA6                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,6 )\r
48 #define RFVBAT_DATA7                            RFVBAT_DATA_REG(RFVBAT_DATA_BASE_PTR,7 )\r
49                                                                                      \r
50 \r
51 /* LL Bit Fields */\r
52 #define RF_DATA_LL_MASK                           0x000000FFu\r
53 #define RF_DATA_LL_SHIFT                          0\r
54 #define RF_DATA_LL(x)                            (((x)<<RF_DATA_LL_SHIFT)&RF_DATA_LL_MASK)\r
55 /* LH Bit Fields */                        \r
56 #define RF_DATA_LH_MASK                           0x0000FF00u\r
57 #define RF_DATA_LH_SHIFT                          8\r
58 #define RF_DATA_LH(x)                             (((x)<<RF_DATA_LH_SHIFT)&RF_DATA_LH_MASK)\r
59 /* HL Bit Fields */\r
60 #define RF_DATA_HL_MASK                           0x00FF0000u\r
61 #define RF_DATA_HL_SHIFT                          16\r
62 #define RF_DATA_HL(x)                             (((x)<<RF_DATA_HL_SHIFT)&RF_DATA_HL_MASK)\r
63 /* HH Bit Fields */\r
64 #define RF_DATA_HH_MASK                           0xFF000000u\r
65 #define RF_DATA_HH_SHIFT                          24\r
66 #define RF_DATA_HH(x)                             (((x)<<RF_DATA_HH_SHIFT)&RF_DATA_HH_MASK)\r
67 \r
68 \r
69 /*! \} */ /* end of group Register_File_Register_Accessor_Macros */\r