forked from Imagelibrary/rtems
@@ -74,8 +74,6 @@ void rpi_start_rtems_on_secondary_processor(void)
|
|||||||
(uint32_t *) bsp_translation_table_base
|
(uint32_t *) bsp_translation_table_base
|
||||||
);
|
);
|
||||||
|
|
||||||
arm_cp15_tlb_invalidate();
|
|
||||||
|
|
||||||
ctrl |= ARM_CP15_CTRL_I | ARM_CP15_CTRL_C | ARM_CP15_CTRL_M;
|
ctrl |= ARM_CP15_CTRL_I | ARM_CP15_CTRL_C | ARM_CP15_CTRL_M;
|
||||||
ctrl &= ~ARM_CP15_CTRL_V;
|
ctrl &= ~ARM_CP15_CTRL_V;
|
||||||
arm_cp15_set_control(ctrl);
|
arm_cp15_set_control(ctrl);
|
||||||
|
|||||||
@@ -67,9 +67,6 @@ raspberrypi_mmu_config_table[] = {
|
|||||||
|
|
||||||
void BSP_START_TEXT_SECTION bsp_start_hook_0(void)
|
void BSP_START_TEXT_SECTION bsp_start_hook_0(void)
|
||||||
{
|
{
|
||||||
arm_cp15_tlb_invalidate();
|
|
||||||
_ARM_Instruction_synchronization_barrier();
|
|
||||||
|
|
||||||
/* Clear Translation Table Base Control Register */
|
/* Clear Translation Table Base Control Register */
|
||||||
arm_cp15_set_translation_table_base_control_register(0);
|
arm_cp15_set_translation_table_base_control_register(0);
|
||||||
|
|
||||||
|
|||||||
@@ -432,7 +432,16 @@ _start:
|
|||||||
*/
|
*/
|
||||||
mov r0, #0
|
mov r0, #0
|
||||||
mcr p15, 0, r0, c7, c5, 0
|
mcr p15, 0, r0, c7, c5, 0
|
||||||
|
|
||||||
|
#if __ARM_ARCH_PROFILE == 'A'
|
||||||
|
/*
|
||||||
|
* Invalidate the TLB using ITLBIALL (Instruction TLB Invalidate All).
|
||||||
|
*/
|
||||||
|
mov r0, #0
|
||||||
|
mcr p15, 0, r0, c8, c7, 0
|
||||||
|
isb
|
||||||
#endif
|
#endif
|
||||||
|
#endif /* (__ARM_ARCH >= 7 && __ARM_ARCH_PROFILE == 'A') || __ARM_ARCH >= 8 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Invoke the start hook 0.
|
* Invoke the start hook 0.
|
||||||
|
|||||||
@@ -31,12 +31,8 @@
|
|||||||
#include <bsp/start.h>
|
#include <bsp/start.h>
|
||||||
#include <bsp/arm-a9mpcore-start.h>
|
#include <bsp/arm-a9mpcore-start.h>
|
||||||
|
|
||||||
#include <libcpu/arm-cp15.h>
|
|
||||||
|
|
||||||
BSP_START_TEXT_SECTION void bsp_start_hook_0(void)
|
BSP_START_TEXT_SECTION void bsp_start_hook_0(void)
|
||||||
{
|
{
|
||||||
arm_cp15_tlb_invalidate();
|
|
||||||
_ARM_Instruction_synchronization_barrier()
|
|
||||||
arm_a9mpcore_start_hook_0();
|
arm_a9mpcore_start_hook_0();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -30,17 +30,12 @@
|
|||||||
* POSSIBILITY OF SUCH DAMAGE.
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define ARM_CP15_TEXT_SECTION BSP_START_TEXT_SECTION
|
|
||||||
|
|
||||||
#include <bsp.h>
|
#include <bsp.h>
|
||||||
#include <bsp/start.h>
|
#include <bsp/start.h>
|
||||||
|
|
||||||
#include <libcpu/arm-cp15.h>
|
|
||||||
|
|
||||||
BSP_START_TEXT_SECTION void bsp_start_hook_0(void)
|
BSP_START_TEXT_SECTION void bsp_start_hook_0(void)
|
||||||
{
|
{
|
||||||
arm_cp15_tlb_invalidate();
|
/* Nothing to do */
|
||||||
_ARM_Instruction_synchronization_barrier();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BSP_START_TEXT_SECTION void bsp_start_hook_1(void)
|
BSP_START_TEXT_SECTION void bsp_start_hook_1(void)
|
||||||
|
|||||||
Reference in New Issue
Block a user