Jump to content

Gerenciamento de energia para Sandy Bridge/Ivy Bridge/Haswell CPU


272 posts in this topic

Recommended Posts

 

Você sabe como achar o device LPC e aplicar o patch no local correto?

 

Usa esse aqui:

Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method                {
                    Store (Package (0x0C)
                        {
                            "device-id", 
                            Buffer (0x04)
                            {
                                 0x02, 0x3B, 0x00, 0x00
                            }, 
                            "compatible", 
                            Buffer (0x0D)
                            {
                                "pci8086,3b02"
                            }, 
                            "IOName", 
                            Buffer (0x0D)
                            {
                                "pci8086,3b02"
                            }, 
                            "name", 
                            Buffer (0x0D)
                            {
                                "pci8086,3b02"
                            }, 
                            "subsystem-id", 
                            Buffer (0x04)
                            {
                                 0x01, 0x50, 0x00, 0x00
                            }, 
                            "subsystem-vendor-id", 
                            Buffer (0x04)
                            {
                                 0x58, 0x14, 0x00, 0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

Eu vi um post em algum lugar explicando como achar o device LPC. Darei uma olhada aqui e testarei o patch. :)

olá

 

claro que não podes aplicar nenhum patch em 1 dsdt com erros de inicio .. 1º eliminas os erros e depois aplicas os patch..

 

isso é + que evidente..

 

bom hack

Amigo se o seu ID de seu Chipset for o "pci8086,8c5c" (C220 Series Chipset H81 Express LPC Controller).

 

Tenta esta kext de injeção: AppleLPCInjector.kext.zip

 

Se tiver feito o patch da LPC no DSDT. Retire o patch e coloque esta kext na pasta do Clover, na EFI/Clover/Kext/10.10.

 

Agora se não carregar a kext "AppleLPC". Seu ID do chipset é outro ou não consta na kext de injeção. Veja pelo aplicativo "DPCIManager" ou pelo o IOREG Como o Allan lhe diz.

 

Falou.

  • Like 3

Amigo se o seu ID de seu Chipset for o "pci8086,8c5c" (C220 Series Chipset H81 Express LPC Controller).

 

Tenta esta kext de injeção: attachicon.gifAppleLPCInjector.kext.zip

 

Se tiver feito o patch da LPC no DSDT. Retire o patch e coloque esta kext na pasta do Clover, na EFI/Clover/Kext/10.10.

 

Agora se não carregar a kext "AppleLPC". Seu ID do chipset é outro ou não consta na kext de injeção. Veja pelo aplicativo "DPCIManager" ou pelo o IOREG Como o Allan lhe diz.

 

Falou.

Pô, brigadão mesmo! Minha ID é exatamente essa que você falou, e agora a LPC está sendo carregada. :D

 

Agora a X86PlatformPlugin é que continua sem ser carregada. A LCP e a  ACPI_SMC_PlatformPlugin estão carregando normalmente. Sim, o turbo boost também teima em não funcionar corretamente. Só vai até os 3.50GHz, ao invés de ir até os 3.90GHz. 

 

 

 

EDIT: fui analisar uma coisa aqui no Darwindump e verifiquei que o turbo boost foi até x37. Já é alguma coisa. 

 

EDIT2: fui dar uma olhada no _DSM no SSDT, e está assim:

 

 

Method (_DSM, 4, NotSerialized)
        {
            Store ("Method CPU0._DSM Called", Debug)
 
            If (LEqual (Arg2, Zero))
            {
                Return (Buffer (One)
                {
                    0x03
                })
            }
 
            Return (Package (0x02)
            {
                "plugin-type",
                One
            })
        }
    }
 
    Scope (\_PR_.CPU1)
    {
  • Like 1

E está usando a Generic + boot arguments?

 

Com relação as informações no SSDT, esse é o patch para carregar o X86PlatformPlugin.

 

Use os plugins indicados no Forum para verificar os States.

E está usando a Generic + boot arguments?

 

Com relação as informações no SSDT, esse é o patch para carregar o X86PlatformPlugin.

 

Use os plugins indicados no Forum para verificar os States.

Sim. Estou usando a generic + boot arguments. 

 

Sobre o patch, é exatamente por isso que coloquei o SSDT, mas não carrega nem ferrando a X86PlatformPlugin

 

O que não tô entendendo é: se eu dô boot pelo pendrive de instalação do sistema (que já tem o clover incluso), a bendita X86 carrega. Se eu faço dando boot pelo clover instalado no HD, ela não carrega.

 

Tá estranho pra caramba. Darei uma olhadinha nos plugins que você falou. :D

Usa as configurações do seu Pen em seu HD.

 

Desde config.plist e as kexts usadas.

Voltei. 

 

Eu descobri que o X86PlatformPlugin só carrega se eu habilitar o P-States e C-States no clover. A LPC está sendo carregada com a kext injetada que o Jorge me passou. A ACPI_SMC_PlatformPlugin não foi carregada.

 

Não estou usando DSDT modificado ou DSDT. Não tem problema em a ACPI_SMC não está sendo carregada para Haswell não, né?

Se no seu IOReg estiver assim:

jVc.png

 

Perfeito!

 

Com relação ACPI_SMC_PlatformPlugin ao não é mais necessário para quem usa o gerenciamento de energia via XNU, que é o seu caso.

Se no seu IOReg estiver assim:

jVc.png

 

Perfeito!

 

Com relação ACPI_SMC_PlatformPlugin ao não é mais necessário para quem usa o gerenciamento de energia via XNU, que é o seu caso.

Sim. Está desse jeitinho aí. :D

 

Sobre a ACPI_SMC, foi a kext disabler que estava na pasta do clover. Eu exclui ela e a ACPI voltou a ser carregada. 

 

Sobre os c-states e p-states, na primeira página você diz pra não usar eles no chamaleon. Tem problema em usar no clover? 

Sobre os c-states e p-states, na primeira página você diz pra não usar eles no chamaleon. Tem problema em usar no clover? 

 

 

Só os testes vão dizer se deve ou não usar.

 

O IOReg é a prova principal, então está ok.

Agora temos de ver como estão seus States, e continue a usar o -xcpm e KernelPM.

 

Faça os testes: How to check your states – Using AICPMInfo, MSRDumper or AppleIntelInfo

 

No seu caso use a AppleIntelInfo.

Só os testes vão dizer se deve ou não usar.

 

O IOReg é a prova principal, então está ok.

Agora temos de ver como estão seus States, e continue a usar o -xcpm e KernelPM.

 

Faça os testes: How to check your states – Using AICPMInfo, MSRDumper or AppleIntelInfo

 

No seu caso use a AppleIntelInfo.

Não tô conseguindo nem a pau usar essa kext.

 

 

/Users/junior/Desktop/AppleIntelInfo.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8).

 

Já refiz os passos do tutorial várias vezes, mas sempre dá esse erro.

Deveria dar certo hem!  -_-

 

Tenta essa: attachicon.gifAppleIntelInfo.kext.zip

Aqui vai o log:

 

 

May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: v1.0 Copyright © 2012-2014 Pike R. Alpha. All rights reserved
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: logMSRs............................: 1
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: logIGPU............................: 0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: logIntelRegs.......................: 1
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: logCStates.........................: 1
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: logIPGStyle........................: 1
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: InitialTSC.........................: 0x114ab4910da9
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MWAIT C-States.....................: 270624
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35)  : 0x40008
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE)  : 0x80838F7012300
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x1E000404
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x21814
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7)  : 0x2F12BD88C2D
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_APERF.................(0xE8)  : 0x2F5A2C73D1F
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x228E00002500
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x2700
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x88340800
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x1
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x25262727
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x1
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x4005F
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA0E03
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x8348000082A0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x236BA929
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_POWER_INFO.........(0x614) : 0x280
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x2F8
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0xE775155
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_CONFIG_TDP_NOMINAL.....(0x648) : 0x23
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_CONFIG_TDP_LEVEL1......(0x649) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_CONFIG_TDP_LEVEL2......(0x64a) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_CONFIG_TDP_CONTROL.....(0x64b) : 0x80000000
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_TURBO_ACTIVATION_RATIO.(0x64c) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x8842
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x8873
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKGC7_IRTL.............(0x60c) : 0x8891
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0xA23133CF36C
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: IA32_TSC_DEADLINE..........(0x6E0) : 0x114AB4CFB0F9
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: CPU Low Frequency Mode.............: 800 MHz
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: CPU Maximum non-Turbo Frequency....: 3500 MHz
May 12 18:46:16 Juniors-iMac kernel[0]: AICPUPMI: CPU Maximum Turbo Frequency........: 3900 MHz
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU P-States [ (8) 35 37 ]
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 6 ]
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 5 7 ]
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU C7-Cores [ 0 1 2 4 5 7 ]
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 ]
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 7 ]
May 12 18:46:18 Juniors-iMac kernel[0]: AICPUPMI: CPU C7-Cores [ 0 1 2 3 4 5 7 ]
May 12 18:46:19 Juniors-iMac kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
May 12 18:46:19 Juniors-iMac kernel[0]: AICPUPMI: CPU C7-Cores [ 0 1 2 3 4 5 6 7 ]
May 12 18:46:20 Juniors-iMac kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
May 12 18:46:21 Juniors-iMac kernel[0]: AICPUPMI: CPU P-States [ (8) 34 35 37 ]
May 12 18:46:21 Juniors-iMac kernel[0]: AICPUPMI: CPU P-States [ 8 33 34 35 37 (39) ]
May 12 18:46:23 Juniors-iMac kernel[0]: AICPUPMI: CPU P-States [ 8 33 34 (35) 36 37 39 ]
May 12 18:46:23 Juniors-iMac kernel[0]: AICPUPMI: CPU P-States [ 8 33 34 35 36 37 (38) 39 ]

Bem, de acordo com as informações da Intel você tem o clock padrão e máximo.

 

Apenas os baixos que não tem muitos, mas essa linha é assim mesmo.

 

Qual SMBios está usando?

Bem, de acordo com as informações da Intel você tem o clock padrão e máximo.

 

Apenas os baixos que não tem muitos, mas essa linha é assim mesmo.

 

Qual SMBios está usando?

iMac 15,1. Agora o bendito plugin x86 parou de carregar. Tô fuçando aqui pra ver se ele volta a funcionar. rsrsr

Vai tentando com outros SMBios.

 

MacPro 3,1 é bem usado em Intel Xeon.

Tentei com outros, mas nada. Inclusive já copei o clover do pendrive pro HD, já atualizei e o plugin não carrega. LOL

 

Vou deixar assim mesmo, já que pelo aplicativo de monitoramente da Intel, os clocks estão variando.

O ruim é que seu gerenciamento de energia está errado agora.

 

Vamos fazer o seguinte, usa esse comando em conjunto com o script para gerar um SSDT com -xcpm incluso:

./ssdtPRGen.sh -w 3 -x 1

Dai mantenha o -xcpm no config.plist, mas delete a seção ACPI.

  • Like 2

O ruim é que seu gerenciamento de energia está errado agora.

 

Vamos fazer o seguinte, usa esse comando em conjunto com o script para gerar um SSDT com -xcpm incluso:

./ssdtPRGen.sh -w 3 -x 1

Dai mantenha o -xcpm no config.plist, mas delete a seção ACPI.

 

O problema de usar SSDT, é que o hack está congelando com alguns minutos de uso. Depois que eu removo o SSDT, para de acontecer isso. Oo

 

Mas vou testar com esses comandos que você passou. Já já posto o resultado. ;)

 

EDIT: deletar a seção ACPI aonde? 

 

EDIT2: agora carregou a bendita x86! \o/ 

 

Agora ficarei de olho pra ver se não acontece os congelamentos aleatórios. Brigadão mais uma vez! =D

×
×
  • Create New...