From 21139b393607bf2dcc5aa6964af6eed5dd0beb58 Mon Sep 17 00:00:00 2001 From: royalgraphx <39929362+royalgraphx@users.noreply.github.com> Date: Sat, 14 Jun 2025 17:42:15 -0500 Subject: [PATCH 1/3] Update kern_rad.cpp --- WhateverGreen/kern_rad.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WhateverGreen/kern_rad.cpp b/WhateverGreen/kern_rad.cpp index b4f271f0..37d1ab49 100644 --- a/WhateverGreen/kern_rad.cpp +++ b/WhateverGreen/kern_rad.cpp @@ -174,7 +174,7 @@ void RAD::processKernel(KernelPatcher &patcher, DeviceInfo *info) { KernelPatcher::RouteRequest("__ZN15IORegistryEntry11setPropertyEPKcPvj", wrapSetProperty, orgSetProperty), KernelPatcher::RouteRequest("__ZNK15IORegistryEntry11getPropertyEPKc", wrapGetProperty, orgGetProperty), }; - patcher.routeMultiple(KernelPatcher::KernelID, requests); + patcher.routeMultipleLong(requests, 2); // hoping this works, away from home atm if (useCustomAgdpDecision && info->firmwareVendor == DeviceInfo::FirmwareVendor::Apple) useCustomAgdpDecision = false; From 2cdcf244ce9db2b336ee6e3bcad5a5521a153d8a Mon Sep 17 00:00:00 2001 From: royalgraphx <39929362+royalgraphx@users.noreply.github.com> Date: Sat, 14 Jun 2025 17:46:20 -0500 Subject: [PATCH 2/3] Update kern_rad.cpp --- WhateverGreen/kern_rad.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/WhateverGreen/kern_rad.cpp b/WhateverGreen/kern_rad.cpp index 37d1ab49..b5325599 100644 --- a/WhateverGreen/kern_rad.cpp +++ b/WhateverGreen/kern_rad.cpp @@ -171,10 +171,10 @@ void RAD::processKernel(KernelPatcher &patcher, DeviceInfo *info) { enableGvaSupport = gva != 0; KernelPatcher::RouteRequest requests[] { - KernelPatcher::RouteRequest("__ZN15IORegistryEntry11setPropertyEPKcPvj", wrapSetProperty, orgSetProperty), - KernelPatcher::RouteRequest("__ZNK15IORegistryEntry11getPropertyEPKc", wrapGetProperty, orgGetProperty), + KernelPatcher::RouteRequest("__ZN15IORegistryEntry11setPropertyEPKcPvj", wrapSetProperty, orgSetProperty), + KernelPatcher::RouteRequest("__ZNK15IORegistryEntry11getPropertyEPKc", wrapGetProperty, orgGetProperty), }; - patcher.routeMultipleLong(requests, 2); // hoping this works, away from home atm + patcher.routeMultipleLong(KernelPatcher::KernelID, requests, arrsize(requests)); if (useCustomAgdpDecision && info->firmwareVendor == DeviceInfo::FirmwareVendor::Apple) useCustomAgdpDecision = false; From 09383023cd868d36f28d20c765e5784d844ee42e Mon Sep 17 00:00:00 2001 From: royalgraphx <39929362+royalgraphx@users.noreply.github.com> Date: Sat, 9 May 2026 07:15:11 -0500 Subject: [PATCH 3/3] Guard route request by OS check --- WhateverGreen/kern_rad.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/WhateverGreen/kern_rad.cpp b/WhateverGreen/kern_rad.cpp index b5325599..3e8d9ea3 100644 --- a/WhateverGreen/kern_rad.cpp +++ b/WhateverGreen/kern_rad.cpp @@ -171,10 +171,15 @@ void RAD::processKernel(KernelPatcher &patcher, DeviceInfo *info) { enableGvaSupport = gva != 0; KernelPatcher::RouteRequest requests[] { - KernelPatcher::RouteRequest("__ZN15IORegistryEntry11setPropertyEPKcPvj", wrapSetProperty, orgSetProperty), - KernelPatcher::RouteRequest("__ZNK15IORegistryEntry11getPropertyEPKc", wrapGetProperty, orgGetProperty), + KernelPatcher::RouteRequest("__ZN15IORegistryEntry11setPropertyEPKcPvj", wrapSetProperty, orgSetProperty), + KernelPatcher::RouteRequest("__ZNK15IORegistryEntry11getPropertyEPKc", wrapGetProperty, orgGetProperty), }; - patcher.routeMultipleLong(KernelPatcher::KernelID, requests, arrsize(requests)); + + if (getKernelVersion() >= KernelVersion::Catalina) { + patcher.routeMultipleLong(KernelPatcher::KernelID, requests, arrsize(requests)); + } else { + patcher.routeMultiple(KernelPatcher::KernelID, requests); + } if (useCustomAgdpDecision && info->firmwareVendor == DeviceInfo::FirmwareVendor::Apple) useCustomAgdpDecision = false;