summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c')
-rw-r--r--c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c b/c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c
index 6514368e55..749dd9d76f 100644
--- a/c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c
+++ b/c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c
@@ -35,19 +35,20 @@ void tms570_pom_remap(void)
{
int i;
uint32_t vec_overlay_start = 0x08000000;
+ uint32_t temp = 0;
memcpy((void*)vec_overlay_start, bsp_start_vector_table_begin, 64);
TMS570_POM.GLBCTRL = 0;
for ( i = 0; i < TMS570_POM_REGIONS; ++i ) {
- TMS570_POM.REG[i].REGSIZE = TMS570_POM_REGSIZE_DISABLED;
+ TMS570_POM.REG[i].REGSIZE = TMS570_POM_REGSIZE_SIZE(TMS570_POM_REGSIZE_DISABLED);
}
- TMS570_POM.REG[0].PROGSTART = 0x0 & TMS570_POM_REGADDRMASK;
- TMS570_POM.REG[0].OVLSTART = vec_overlay_start & TMS570_POM_REGADDRMASK;
- TMS570_POM.REG[0].REGSIZE = TMS570_POM_REGSIZE_64B;
-
- TMS570_POM.GLBCTRL = TMS570_POM_GLBCTRL_ENABLE |
- (vec_overlay_start & ~TMS570_POM_REGADDRMASK);
+ TMS570_POM.REG[0].PROGSTART = TMS570_POM_PROGSTART_STARTADDRESS(0);
+ TMS570_POM.REG[0].OVLSTART = TMS570_POM_OVLSTART_STARTADDRESS(vec_overlay_start);
+ TMS570_POM.REG[0].REGSIZE = TMS570_POM_REGSIZE_SIZE(TMS570_POM_REGSIZE_64B);
+ TMS570_POM.GLBCTRL = TMS570_POM_GLBCTRL_ON_OFF(0xa) |
+ TMS570_POM_GLBCTRL_ETO(0xa) |
+ (TMS570_POM_GLBCTRL_OTADDR(~0) & vec_overlay_start);
}