mirror of
https://github.com/rvtr/ctr_firmware.git
synced 2025-10-31 07:51:08 -04:00
SMPモードへ初期化。
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_firmware@217 b871894f-2f95-9b40-918c-086798483c85
This commit is contained in:
parent
5d0ced34ea
commit
d08f115de8
@ -51,8 +51,7 @@ asm void stupDisableCP15( void )
|
||||
mcr p15, 0, r0, c1, c0, 0
|
||||
|
||||
mrc p15, 0, r0, c1, c0, 1
|
||||
ldr r1, =HW_C1_SMP_MODE \
|
||||
| HW_C1_EXCLUSIVE_L1C_L2C \
|
||||
ldr r1, =HW_C1_EXCLUSIVE_L1C_L2C \
|
||||
| HW_C1_BR_FOLDING_ENABLE \
|
||||
| HW_C1_SBR_PREDICT_ENABLE \
|
||||
| HW_C1_DBR_PREDICT_ENABLE \
|
||||
@ -83,11 +82,19 @@ asm void stupDisableCP15( void )
|
||||
*---------------------------------------------------------------------------*/
|
||||
asm void stupEnableCP15( void )
|
||||
{
|
||||
//
|
||||
// Snoop Control Unit
|
||||
//
|
||||
ldr r3, =REG_SCU_CNT_ADDR
|
||||
ldr r0, [r3]
|
||||
orr r0, r0, #REG_OS_SCU_CNT_E_MASK
|
||||
str r0, [r3]
|
||||
|
||||
//
|
||||
// Auxiliary Control
|
||||
//
|
||||
mrc p15, 0, r0, c1, c0, 1
|
||||
ldr r1, =HW_C1_AMP_MODE \
|
||||
ldr r1, =HW_C1_SMP_MODE \
|
||||
| HW_C1_BR_FOLDING_ENABLE \
|
||||
| HW_C1_SBR_PREDICT_ENABLE \
|
||||
| HW_C1_DBR_PREDICT_ENABLE \
|
||||
|
||||
@ -88,7 +88,7 @@ extern "C" {
|
||||
#define HW_C1_UNALIGN_ACCESS_ENABLE 0x00400000 // Unaligned data and mixed-endian data access enable
|
||||
|
||||
#define HW_C1_LD_INTERWORK_DISABLE 0x00008000 // Loads to PC do not set the T bit (ARMv4 behavior)
|
||||
#define HW_C1_EXCEPT_VEC_UPPER 0x00002000 // High exception vectors selected (CTR default)
|
||||
#define HW_C1_EXCEPT_VEC_UPPER 0x00002000 // High exception vectors selected
|
||||
#define HW_C1_EXCEPT_VEC_LOWER 0x00000000 // Low exception vectors selected
|
||||
#define HW_C1_IC_ENABLE 0x00001000 // Instruction Cache enabled
|
||||
#define HW_C1_DC_ENABLE 0x00000004 // Data Cache enabled
|
||||
@ -105,8 +105,8 @@ extern "C" {
|
||||
|
||||
// Register 1.1 : Auxiliary Control
|
||||
|
||||
#define HW_C1_SMP_MODE 0x00000020 // SMP mode (Invalid for CTR)
|
||||
#define HW_C1_AMP_MODE 0x00000000 // AMP mode (Invalid for CTR)
|
||||
#define HW_C1_SMP_MODE 0x00000020 // Symmetric Multi Processing mode
|
||||
#define HW_C1_AMP_MODE 0x00000000 // Asymmetric Multi Processing mode
|
||||
#define HW_C1_EXCLUSIVE_L1C_L2C 0x00000010 // L1 and L2 caches are exclusive (Invalid for CTR)
|
||||
#define HW_C1_BR_FOLDING_ENABLE 0x00000008 // Branch instruction folding enable
|
||||
#define HW_C1_SBR_PREDICT_ENABLE 0x00000004 // Static branch prediction enable
|
||||
|
||||
Loading…
Reference in New Issue
Block a user