From d09bfaf3485e5759b363efb90fbb62fae0f878e8 Mon Sep 17 00:00:00 2001 From: TuxSH <1922548+TuxSH@users.noreply.github.com> Date: Sat, 7 Jan 2023 22:36:01 +0000 Subject: [PATCH] hbldr: grant full RW access to DSP RAM This makes testing custom DSP firmware binaries much easier. --- sysmodules/loader/source/hbldr.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/sysmodules/loader/source/hbldr.c b/sysmodules/loader/source/hbldr.c index fcc8cec..018614b 100644 --- a/sysmodules/loader/source/hbldr.c +++ b/sysmodules/loader/source/hbldr.c @@ -134,12 +134,15 @@ static const u64 dependencyListSafeFirm[] = static const u32 kernelCaps[] = { 0xFC00022C, // Kernel release version 8.0 is necessary for using the new linear mapping. Modified below. - 0xFF81FF50, // RW static range mapping: 0x1FF50000 (DSP Shared Mem 1, start) - 0xFF81FF58, // RW static range mapping: 0x1FF58000 (DSP Shared Mem 1, end) - 0xFF81FF70, // RW static range mapping: 0x1FF70000 (DSP Shared Mem 2, start) - 0xFF81FF78, // RW static range mapping: 0x1FF78000 (DSP Shared Mem 2, end) + + // Normal applications only have access to 0x1FF50000-0x1FF58000, 0x1FF70000-0x1FF78000, + // however we can load unsigned DSP firmware binaries. + 0xFF81FF00, // RW static range mapping: 0x1FF00000 (DSP RAM, start) + 0xFF81FF80, // RW static range mapping: 0x1FF80000 (DSP RAM, end) + 0xFF91F000, // RO static range mapping: 0x1F000000 (VRAM, start) 0xFF91F600, // RO static range mapping: 0x1F600000 (VRAM, end) + 0xFF002109, // Exflags: APPLICATION memtype + "Shared page writing" + "Allow debug" + "Access core2" 0xFE000200, // Handle table size: 0x200