mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2024-11-09 21:51:45 +00:00
fusee: tactically don't trash PLLA1, fixes audio corruption on boot
This commit is contained in:
parent
a8f898b591
commit
b7521465ee
3 changed files with 6 additions and 2 deletions
|
@ -59,6 +59,10 @@ namespace ams::nxboot {
|
||||||
}
|
}
|
||||||
|
|
||||||
void DoMbistWorkaround() {
|
void DoMbistWorkaround() {
|
||||||
|
/* Enable AHUB/APE clock prior to I2S accesses. */
|
||||||
|
reg::ReadWrite(CLKRST + CLK_RST_CONTROLLER_CLK_OUT_ENB_V, CLK_RST_REG_BITS_ENUM(CLK_ENB_V_CLK_ENB_AHUB, ENABLE));
|
||||||
|
reg::ReadWrite(CLKRST + CLK_RST_CONTROLLER_CLK_OUT_ENB_Y, CLK_RST_REG_BITS_ENUM(CLK_ENB_Y_CLK_ENB_APE, ENABLE));
|
||||||
|
|
||||||
/* Configure CLK_RST_CONTROLLER_CLK_SOURCE_SOR1. */
|
/* Configure CLK_RST_CONTROLLER_CLK_SOURCE_SOR1. */
|
||||||
reg::ReadWrite(CLKRST + CLK_RST_CONTROLLER_CLK_SOURCE_SOR1, CLK_RST_REG_BITS_ENUM(CLK_SOURCE_SOR1_SOR1_CLK_SEL0, MUX),
|
reg::ReadWrite(CLKRST + CLK_RST_CONTROLLER_CLK_SOURCE_SOR1, CLK_RST_REG_BITS_ENUM(CLK_SOURCE_SOR1_SOR1_CLK_SEL0, MUX),
|
||||||
CLK_RST_REG_BITS_ENUM(CLK_SOURCE_SOR1_SOR1_CLK_SEL1, SOR1_CLOCK_SWITCH));
|
CLK_RST_REG_BITS_ENUM(CLK_SOURCE_SOR1_SOR1_CLK_SEL1, SOR1_CLOCK_SWITCH));
|
||||||
|
|
|
@ -230,7 +230,7 @@ DEFINE_CLK_RST_REG_BIT_ENUM(PLLMB_BASE_PLLMB_ENABLE, 30, DISABLE, ENABLE);
|
||||||
#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_DLL (0x664)
|
#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_DLL (0x664)
|
||||||
#define CLK_RST_CONTROLLER_CLK_SOURCE_UART_FST_MIPI_CAL (0x66C)
|
#define CLK_RST_CONTROLLER_CLK_SOURCE_UART_FST_MIPI_CAL (0x66C)
|
||||||
#define CLK_RST_CONTROLLER_CLK_SOURCE_SDMMC_LEGACY_TM (0x694)
|
#define CLK_RST_CONTROLLER_CLK_SOURCE_SDMMC_LEGACY_TM (0x694)
|
||||||
#define CLK_RST_CONTROLLER_CLK_SOURCE_NVENC (0x6A4)
|
#define CLK_RST_CONTROLLER_CLK_SOURCE_NVENC (0x6A0)
|
||||||
#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_SAFE (0x724)
|
#define CLK_RST_CONTROLLER_CLK_SOURCE_EMC_SAFE (0x724)
|
||||||
|
|
||||||
/* RST_DEV_*_SET */
|
/* RST_DEV_*_SET */
|
||||||
|
@ -451,6 +451,7 @@ DEFINE_CLK_RST_REG_BIT_ENUM(RST_CPUG_CMPLX_CLR_CLR_PRESETDBG, 30, DISABLE, ENA
|
||||||
HANDLER(U, CRAM2, 2, 24) \
|
HANDLER(U, CRAM2, 2, 24) \
|
||||||
HANDLER(V, CPUG, 3, 0) \
|
HANDLER(V, CPUG, 3, 0) \
|
||||||
HANDLER(V, MSELECT, 3, 3) \
|
HANDLER(V, MSELECT, 3, 3) \
|
||||||
|
HANDLER(V, AHUB, 3, 10) \
|
||||||
HANDLER(V, APB2APE, 3, 11) \
|
HANDLER(V, APB2APE, 3, 11) \
|
||||||
HANDLER(V, SPDIF_DOUBLER, 3, 22) \
|
HANDLER(V, SPDIF_DOUBLER, 3, 22) \
|
||||||
HANDLER(V, ACTMON, 3, 23) \
|
HANDLER(V, ACTMON, 3, 23) \
|
||||||
|
|
|
@ -234,7 +234,6 @@ namespace ams::fatal::srv {
|
||||||
font::PrintFormatLine( "Program: %016lX", static_cast<u64>(this->context->program_id));
|
font::PrintFormatLine( "Program: %016lX", static_cast<u64>(this->context->program_id));
|
||||||
font::AddSpacingLines(0.5f);
|
font::AddSpacingLines(0.5f);
|
||||||
|
|
||||||
/* TODO: Remove Mesosphere identifier in 1.0.0. */
|
|
||||||
font::PrintFormatLine("Firmware: %s (Atmosphère %u.%u.%u-%s)", config.GetFirmwareVersion().display_version, ATMOSPHERE_RELEASE_VERSION, ams::GetGitRevision());
|
font::PrintFormatLine("Firmware: %s (Atmosphère %u.%u.%u-%s)", config.GetFirmwareVersion().display_version, ATMOSPHERE_RELEASE_VERSION, ams::GetGitRevision());
|
||||||
font::AddSpacingLines(1.5f);
|
font::AddSpacingLines(1.5f);
|
||||||
if (!exosphere::ResultVersionMismatch::Includes(this->context->result)) {
|
if (!exosphere::ResultVersionMismatch::Includes(this->context->result)) {
|
||||||
|
|
Loading…
Reference in a new issue