From ff6fec7d9318ae878e9c665c24a8f88ed9967a47 Mon Sep 17 00:00:00 2001 From: Angel Wu Date: Sun, 6 Aug 2017 22:39:13 +0800 Subject: [PATCH] Inject property to AppleACPICPU --- .../Contents/Info.plist | 27 ++++-------------- Extras/Examples.zip | Bin 33030 -> 33017 bytes 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/Extras/CPUFriendProvider.kext/Contents/Info.plist b/Extras/CPUFriendProvider.kext/Contents/Info.plist index 8c30892..7326d6a 100755 --- a/Extras/CPUFriendProvider.kext/Contents/Info.plist +++ b/Extras/CPUFriendProvider.kext/Contents/Info.plist @@ -19,30 +19,15 @@ CPUFriendProvider CFBundleIdentifier - org.vanilla.driver.CPUFriendProvider + com.apple.driver.AppleACPIPlatform IOClass - CPUFriendProvider - IOParentMatch - - IOPropertyMatch - - plugin-type - 1 - - IOProviderClass - IOACPIPlatformDevice - + AppleACPICPU + IONameMatch + processor IOProbeScore - 6000 - IOPropertyMatch - - IOCPUNumber - 0 - + 1100 IOProviderClass - AppleACPICPU - IOResourceMatch - ACPI + IOACPIPlatformDevice cf-frequency-data diff --git a/Extras/Examples.zip b/Extras/Examples.zip index 9eb4495cdd0e41a37db9b2ec3b68290892611f82..d12ef04d7de7ed20db099eb81235dcec4e5967da 100644 GIT binary patch delta 7970 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 delta 7965 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