summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c
diff options
context:
space:
mode:
authorPremysl Houdek <kom541000@gmail.com>2015-07-17 17:04:06 +0200
committerChris Johns <chrisj@rtems.org>2015-07-20 21:06:55 +1000
commit49c1d25dc28a4cc43cbc023e487fb838a7cf7df1 (patch)
tree19cc3b520642dba318d9087e9d1bd2759f4c86d3 /c/src/lib/libbsp/arm/tms570/pom/tms570-pom.c
parentbsp/tms570: skipped 32bit field definitions and corrected single bit fields (diff)
downloadrtems-49c1d25dc28a4cc43cbc023e487fb838a7cf7df1.tar.bz2
bsp/tms570 Use bitfields instead of hard-coded values
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
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);
}