mirror of
https://github.com/Atmosphere-NX/Atmosphere
synced 2024-12-22 20:31:14 +00:00
fusee: fix sleep/wake on 6.x
This commit is contained in:
parent
bb11c57e7d
commit
cd62d83586
3 changed files with 48 additions and 37 deletions
|
@ -37,23 +37,27 @@
|
||||||
|
|
||||||
/* Clock and reset devices. */
|
/* Clock and reset devices. */
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
CARDEVICE_BPMP = ((0 << 5) | 0x1),
|
||||||
CARDEVICE_UARTA = ((0 << 5) | 0x6),
|
CARDEVICE_UARTA = ((0 << 5) | 0x6),
|
||||||
CARDEVICE_UARTB = ((0 << 5) | 0x7),
|
CARDEVICE_UARTB = ((0 << 5) | 0x7),
|
||||||
CARDEVICE_UARTC = ((1 << 5) | 0x17),
|
|
||||||
CARDEVICE_I2C1 = ((0 << 5) | 0xC),
|
CARDEVICE_I2C1 = ((0 << 5) | 0xC),
|
||||||
|
CARDEVICE_USBD = ((0 << 5) | 0x16),
|
||||||
|
CARDEVICE_HOST1X = ((0 << 5) | 0x1C),
|
||||||
|
CARDEVICE_AHBDMA = ((1 << 5) | 0x1),
|
||||||
|
CARDEVICE_APBDMA = ((1 << 5) | 0x2),
|
||||||
|
CARDEVICE_KFUSE = ((1 << 5) | 0x8),
|
||||||
CARDEVICE_I2C5 = ((1 << 5) | 0xF),
|
CARDEVICE_I2C5 = ((1 << 5) | 0xF),
|
||||||
|
CARDEVICE_UARTC = ((1 << 5) | 0x17),
|
||||||
|
CARDEVICE_USB2 = ((1 << 5) | 0x1A),
|
||||||
|
CARDEVICE_CORESIGHT = ((2 << 5) | 0x9),
|
||||||
|
CARDEVICE_TSEC = ((2 << 5) | 0x13),
|
||||||
|
CARDEVICE_ACTMON = ((3 << 5) | 0x17),
|
||||||
CARDEVICE_TZRAM = ((3 << 5) | 0x1E),
|
CARDEVICE_TZRAM = ((3 << 5) | 0x1E),
|
||||||
CARDEVICE_SE = ((3 << 5) | 0x1F),
|
CARDEVICE_SE = ((3 << 5) | 0x1F),
|
||||||
CARDEVICE_HOST1X = ((0 << 5) | 0x1C),
|
CARDEVICE_CL_DVFS = ((4 << 5) | 0x1B),
|
||||||
CARDEVICE_TSEC = ((2 << 5) | 0x13),
|
|
||||||
CARDEVICE_SOR_SAFE = ((6 << 5) | 0x1E),
|
|
||||||
CARDEVICE_SOR0 = ((5 << 5) | 0x16),
|
CARDEVICE_SOR0 = ((5 << 5) | 0x16),
|
||||||
CARDEVICE_SOR1 = ((5 << 5) | 0x17),
|
CARDEVICE_SOR1 = ((5 << 5) | 0x17),
|
||||||
CARDEVICE_KFUSE = ((1 << 5) | 0x8),
|
CARDEVICE_SOR_SAFE = ((6 << 5) | 0x1E),
|
||||||
CARDEVICE_CL_DVFS = ((4 << 5) | 0x1B),
|
|
||||||
CARDEVICE_CORESIGHT = ((2 << 5) | 0x9),
|
|
||||||
CARDEVICE_ACTMON = ((3 << 5) | 0x17),
|
|
||||||
CARDEVICE_BPMP = ((0 << 5) | 0x1)
|
|
||||||
} CarDevice;
|
} CarDevice;
|
||||||
|
|
||||||
/* Clock/Reset Controller (CLK_RST_CONTROLLER_) regs */
|
/* Clock/Reset Controller (CLK_RST_CONTROLLER_) regs */
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
#include "nxboot.h"
|
#include "nxboot.h"
|
||||||
#include "nxfs.h"
|
#include "nxfs.h"
|
||||||
#include "bct.h"
|
#include "bct.h"
|
||||||
|
#include "car.h"
|
||||||
#include "di.h"
|
#include "di.h"
|
||||||
#include "mc.h"
|
#include "mc.h"
|
||||||
#include "se.h"
|
#include "se.h"
|
||||||
|
@ -1015,6 +1016,12 @@ uint32_t nxboot_main(void) {
|
||||||
/* Wait for the splash screen to have been displayed for as long as it should be. */
|
/* Wait for the splash screen to have been displayed for as long as it should be. */
|
||||||
splash_screen_wait_delay();
|
splash_screen_wait_delay();
|
||||||
|
|
||||||
|
/* Set reset for USBD, USB2, AHBDMA, and APBDMA. */
|
||||||
|
rst_enable(CARDEVICE_USBD);
|
||||||
|
rst_enable(CARDEVICE_USB2);
|
||||||
|
rst_enable(CARDEVICE_AHBDMA);
|
||||||
|
rst_enable(CARDEVICE_APBDMA);
|
||||||
|
|
||||||
/* Return the memory address for booting CPU0. */
|
/* Return the memory address for booting CPU0. */
|
||||||
return (uint32_t)exosphere_memaddr;
|
return (uint32_t)exosphere_memaddr;
|
||||||
}
|
}
|
||||||
|
|
|
@ -203,12 +203,12 @@ DEFINE_CLK_RST_REG_BIT_ENUM(RST_CPUG_CMPLX_CLR_CLR_NONCPURESET, 29, DISABLE, ENA
|
||||||
HANDLER(H, MEM, 1, 0) \
|
HANDLER(H, MEM, 1, 0) \
|
||||||
HANDLER(H, AHBDMA, 1, 1) \
|
HANDLER(H, AHBDMA, 1, 1) \
|
||||||
HANDLER(H, APBDMA, 1, 2) \
|
HANDLER(H, APBDMA, 1, 2) \
|
||||||
HANDLER(H, USB2, 1, 26) \
|
|
||||||
HANDLER(H, PMC, 1, 6) \
|
HANDLER(H, PMC, 1, 6) \
|
||||||
HANDLER(H, FUSE, 1, 7) \
|
HANDLER(H, FUSE, 1, 7) \
|
||||||
HANDLER(H, KFUSE, 1, 8) \
|
HANDLER(H, KFUSE, 1, 8) \
|
||||||
HANDLER(H, I2C5, 1, 15) \
|
HANDLER(H, I2C5, 1, 15) \
|
||||||
HANDLER(H, EMC, 1, 25) \
|
HANDLER(H, EMC, 1, 25) \
|
||||||
|
HANDLER(H, USB2, 1, 26) \
|
||||||
HANDLER(U, CSITE, 2, 9) \
|
HANDLER(U, CSITE, 2, 9) \
|
||||||
HANDLER(U, IRAMA, 2, 20) \
|
HANDLER(U, IRAMA, 2, 20) \
|
||||||
HANDLER(U, IRAMB, 2, 21) \
|
HANDLER(U, IRAMB, 2, 21) \
|
||||||
|
|
Loading…
Reference in a new issue