diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2003-02-20 21:46:04 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2003-02-20 21:46:04 +0000 |
commit | ea29ba63acf3e25efb932447ab89487ed2aa822b (patch) | |
tree | 3d8292825a8d6cf257602d4990a365eb075421be /c/src/lib/libbsp/powerpc/shared/startup/pgtbl_activate.c | |
parent | 2003-02-20 Till Straumann <strauman@slac.stanford.edu> (diff) | |
download | rtems-ea29ba63acf3e25efb932447ab89487ed2aa822b.tar.bz2 |
2003-02-20 Till Straumann <strauman@slac.stanford.edu>
PR 349/bsps
* startup/pgtbl_setup.c, startup/pgtbl_activate.c: New files
* startup/Makefile.am, startup/bspstart.c, startup/linkcmds:
Let the powerpc/shared (+derived) BSPs use pagetable support
from libcpu.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/powerpc/shared/startup/pgtbl_activate.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/shared/startup/pgtbl_activate.c b/c/src/lib/libbsp/powerpc/shared/startup/pgtbl_activate.c new file mode 100644 index 0000000000..32059b927f --- /dev/null +++ b/c/src/lib/libbsp/powerpc/shared/startup/pgtbl_activate.c @@ -0,0 +1,34 @@ +/* $Id$ */ + +#include <rtems.h> +#include <libcpu/pte121.h> +#include <libcpu/bat.h> + +/* Default activation of the page tables. This is a weak + * alias, so applications may easily override this + * default activation procedure. + */ + +/* Author: Till Straumann, <strauman@slac.stanford.edu>, 4/2002 */ + +void +BSP_pgtbl_activate(Triv121PgTbl) __attribute__ (( weak, alias("__BSP_default_pgtbl_activate") )); + +void +__BSP_default_pgtbl_activate(Triv121PgTbl pt) +{ + if (!pt) return; + + /* switch the text/ro sements to RO only after + * initializing the interrupts because the irq_mng + * installs some code... + * + * activate the page table; it is still masked by the + * DBAT0, however + */ + triv121PgTblActivate(pt); + + /* finally, switch off DBAT0 */ + setdbat(0,0,0,0,0); + /* At this point, DBAT0 is available for other use... */ +} |