From 93d4d06574ca25df0376cd2e96554d104584d88a Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 5 Feb 2013 16:31:30 +0100 Subject: [PATCH] bsp/mpc55xx: Add mpc55xx_mmu_apply_config() --- c/src/lib/libcpu/powerpc/mpc55xx/include/mpc55xx.h | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/c/src/lib/libcpu/powerpc/mpc55xx/include/mpc55xx.h b/c/src/lib/libcpu/powerpc/mpc55xx/include/mpc55xx.h index e7bb83995a..b1b625c95b 100644 --- a/c/src/lib/libcpu/powerpc/mpc55xx/include/mpc55xx.h +++ b/c/src/lib/libcpu/powerpc/mpc55xx/include/mpc55xx.h @@ -42,9 +42,10 @@ #ifndef LIBCPU_POWERPC_MPC55XX_H #define LIBCPU_POWERPC_MPC55XX_H -#include - #include +#include + +#include #ifdef __cplusplus extern "C" { @@ -138,6 +139,15 @@ static inline mpc55xx_wait_for_interrupt(void) #endif } +static inline void mpc55xx_mmu_apply_config(const struct MMU_tag *config) +{ + PPC_SET_SPECIAL_PURPOSE_REGISTER(FSL_EIS_MAS0, config->MAS0.R); + PPC_SET_SPECIAL_PURPOSE_REGISTER(FSL_EIS_MAS1, config->MAS1.R); + PPC_SET_SPECIAL_PURPOSE_REGISTER(FSL_EIS_MAS2, config->MAS2.R); + PPC_SET_SPECIAL_PURPOSE_REGISTER(FSL_EIS_MAS3, config->MAS3.R); + __asm__ volatile ("tlbwe"); +} + #ifdef __cplusplus } #endif /* __cplusplus */