Update FIRM loading magic, only deinit LCDs if they are inited, fix ntrboot naming
This commit is contained in:
parent
bc1aa15dd7
commit
4116c1e00f
@ -56,5 +56,5 @@ disableMpuAndJumpToEntrypoints:
|
||||
@ Jump to the ARM9 entrypoint
|
||||
mov r0, r4
|
||||
mov r1, r5
|
||||
ldr r2, =0x2BEEF
|
||||
ldr r2, =0x3BEEF
|
||||
bx r6
|
||||
|
@ -116,7 +116,7 @@ void __attribute__((noreturn)) mainHandler(u32 *regs, u32 type)
|
||||
//Copy header (actually optimized by the compiler)
|
||||
*(ExceptionDumpHeader *)FINAL_BUFFER = dumpHeader;
|
||||
|
||||
i2cWriteRegister(I2C_DEV_MCU, 0x22, 1 << 0); //Shutdown LCD
|
||||
if(ARESCREENSINITIALIZED) i2cWriteRegister(I2C_DEV_MCU, 0x22, 1 << 0); //Shutdown LCD
|
||||
|
||||
((void (*)())0xFFFF0830)(); //Ensure that all memory transfers have completed and that the data cache has been flushed
|
||||
|
||||
|
@ -39,3 +39,7 @@ typedef volatile u8 vu8;
|
||||
typedef volatile u16 vu16;
|
||||
typedef volatile u32 vu32;
|
||||
typedef volatile u64 vu64;
|
||||
|
||||
#define PDN_GPU_CNT (*(vu8 *)0x10141200)
|
||||
|
||||
#define ARESCREENSINITIALIZED (PDN_GPU_CNT != 1)
|
||||
|
@ -240,7 +240,7 @@ void configMenu(bool oldPinStatus, u32 oldPinMode)
|
||||
initScreens();
|
||||
|
||||
static const char *bootTypes[] = { "B9S",
|
||||
"B9S (ntrboothax)",
|
||||
"B9S (ntrboot)",
|
||||
"FIRM0",
|
||||
"FIRM1" };
|
||||
|
||||
|
@ -107,7 +107,7 @@ void mcuPowerOff(void)
|
||||
if(bootType != FIRMLAUNCH && ARESCREENSINITIALIZED) clearScreens(false);
|
||||
|
||||
//Shutdown LCD
|
||||
i2cWriteRegister(I2C_DEV_MCU, 0x22, 1 << 0);
|
||||
if(ARESCREENSINITIALIZED) i2cWriteRegister(I2C_DEV_MCU, 0x22, 1 << 0);
|
||||
|
||||
//Ensure that all memory transfers have completed and that the data cache has been flushed
|
||||
flushEntireDCache();
|
||||
|
Reference in New Issue
Block a user