1 /** @file pom.h
2 *   @brief POM Driver Definition File
3 *   @date 29.May.2013
4 *   @version 03.05.02
5 *
6 */
7 
8 /* (c) Texas Instruments 2009-2013, All rights reserved. */
9 
10 #ifndef __POM_H__
11 #define __POM_H__
12 
13 #include "reg_pom.h"
14 
15 
16 
17 /* USER CODE BEGIN (0) */
18 /* USER CODE END */
19 
20 
21 /** @enum pom_region_size
22 *   @brief Alias names for pom region size
23 *   This enumeration is used to provide alias names for POM region size:
24 */
25 enum pom_region_size
26 {
27         SIZE_32BYTES    = 0U,
28         SIZE_64BYTES    = 1U,
29         SIZE_128BYTES   = 2U,
30         SIZE_256BYTES   = 3U,
31         SIZE_512BYTES   = 4U,
32         SIZE_1KB        = 5U,
33         SIZE_2KB        = 6U,
34         SIZE_4KB        = 7U,
35         SIZE_8KB        = 8U,
36         SIZE_16KB       = 9U,
37         SIZE_32KB       = 10U,
38         SIZE_64KB       = 11U,
39         SIZE_128KB      = 12U,
40         SIZE_256KB      = 13U
41 };
42 
43 /** @def INTERNAL_RAM
44 *   @brief Alias name for Internal RAM
45 */
46 #define INTERNAL_RAM    0x08000000U
47 
48 /** @def SDRAM
49 *   @brief Alias name for SD RAM
50 */
51 #define SDRAM   0x80000000U
52 
53 /** @def ASYNC_MEMORY
54 *   @brief Alias name for Async RAM
55 */
56 #define ASYNC_MEMORY   0x60000000U
57 
58 
59 typedef uint32 REGION_t;
60 
61 /** @struct REGION_CONFIG_ST
62 *   @brief POM region configuration
63 */
64 typedef struct
65 {
66         uint32 Prog_Reg_Sta_Addr;
67         uint32 Ovly_Reg_Sta_Addr;
68         uint32 Reg_Size;
69 }REGION_CONFIG_t;
70 
71 /* USER CODE BEGIN (1) */
72 /* USER CODE END */
73 
74 /**
75  *  @defgroup POM POM
76  *  @brief Parameter Overlay Module.
77  *
78  *  The POM provides a mechanism to redirect accesses to non-volatile memory into a volatile memory
79  *  internal or external to the device. The data requested by the CPU will be fetched from the overlay memory
80  *  instead of the main non-volatile memory.
81  *
82  *	Related Files
83  *   - reg_pom.h
84  *   - pom.h
85  *   - pom.c
86  *  @addtogroup POM
87  *  @{
88  */
89 
90 /* POM Interface Functions */
91 void POM_Region_Config(REGION_CONFIG_t *Reg_Config_Ptr,REGION_t Region_Num);
92 void POM_Reset(void);
93 void POM_Init(void);
94 void POM_Disable(void);
95 
96 /**@}*/
97 #endif /* __POM_H_*/
98