artur-pt Posted May 25, 2012 Posted May 25, 2012 Como personalizar a sua SSDT para execução num clock mais elevado, e como ver mais P-States em um sistema não-overclock. Este post tem como objetivo explicar o SSDT e como personalizar. Observe: External (\_PR_.CPU7, DeviceObj) External (\_PR_.CPU6, DeviceObj) External (\_PR_.CPU5, DeviceObj) External (\_PR_.CPU4, DeviceObj) External (\_PR_.CPU3, DeviceObj) External (\_PR_.CPU2, DeviceObj) External (\_PR_.CPU1, DeviceObj) External (\_PR_.CPU0, DeviceObj) Este bloco define quantos real ou hiper-thread CPU estão disponíveis. Assim, neste exemplo, estamos definindo até 8 processadores. Se o seu processador tem menos (Core i3 ou Core i5) é seguro excluir External (\ _PR_.CPU4, DeviceObj) até External (\ _PR_.CPU7, DeviceObj). Mas então você terá de apagar os Scope correspondentes (\ _PR.CPU4) até (\ _PR.CPU7) no final do SSDT. Scope (\_PR.CPU0) { Name (APSN, 0x04) Name (APSS, Package (0x1B) { Aqui estamos definindo os detalhes para CPU0. A primeira linha é a atribuição de 0x4 para APSN que é um objecto especifico da Apple. A APSS próximo objecto é também especifico da Apple, mas é definido o mesmo que os _PSS objeto da ACPI. O importante nessa linha é pacote (0x1B) como 0x1B define em hexadecimal o número de definições contidos. Assim 0x1B corresponde a 27 decimal. Isso significa que temos 27 States definidos. Baseado na especificação ACPI para _PSS: ( Comentado ) Package (0x06) { 0x1068, // CoreFreq Zero, // Power 0x0A, // TransitionLatency 0x0A, // BusMasterLatency 0x2A00, // Control 0x2A00 // Status }, ACPI Specification - Section 8.4.4.2 • CoreFreq. Indica a freqüência de operação do núcleo da CPU (em MHz). • Power. Indica o estado de desempenho dissipação de potência máxima (em miliwatts). • TransitionLatency. Indica a latência do pior caso em microssegundos que a CPU não estará disponível durante uma transição de qualquer estado de desempenho para este estado de desempenho. • BusMasterLatency. Indica a latência do pior caso em microssegundos que os Bus Masters estão impedidos de acessar a memória durante a transição de qualquer estado de desempenho para este estado de desempenho. • Control. Indica o valor a ser escrito para o desempenho do controle Register (PERF_CTRL), a fim de iniciar uma transição para o estado de desempenho. • Status. Indica o valor que OSPM irá comparar com um valor lido a partir do estado de desempenho de registos (PERF_STATUS) para assegurar que a transição para o estado de desempenho foi bem sucedida. OSPM pode sempre colocar a CPU no estado de energia mais baixo, mas outros estados estão disponíveis apenas quando indicado pelo método _PPC. No exemplo é 0x1068 CoreFreq é 4200 ou 4.2 GHz. Parece que a Apple está ignorando o valor para o Power, mas você pode usar os valores de energia a partir do extrato da placa-mãe SSDT. TransitionLatency e BusMasterLatency são sempre 0x0A. Agora para os dois últimos valores, 0x2A00 ou 4200. Neste caso, ignore os dois zeros e só estão preocupados com os dois números. Este é o valor que será exibido pela MSRDumper. Assim, quando o sistema está rodando a 4,2 GHz MSRDumper irá mostrar o P-State como 42. Package (0x06) { 0x1004, Zero, 0x0A, 0x0A, 0x2900, 0x2900 }, Assim, 0x1004 = 4100 ou 4,1 GHz e 0x2900 traduz em 41. Se continuar seguindo a tabela vai ver que a diminuição CoreFreq por 0x64 ou 100 para cada redução de estado e de Control e Status por 1. A última entrada terá um CoreFreq de 0x0640 e Control e Status será 0x1000. Isto corresponde a 1600 ou 1,6 GHz e 16, a taxa de Clock mínimo para um CPU Sandy Bridge. Scope (\_PR.CPU1) { Method (APSS, 0, NotSerialized) { Return (\_PR.CPU0.APSS) } } Tudo isso está mostrando é que em vez de repetir o que fizemos para o CPU0, podemos ter o retorno SSDT o que foi definido para CPU0. Alternativamente, você pode definir individuais P-States para cada processador, mas é um processo muito demorado. A maneira como está descrito é um trabalho muito mais fácil. Finalmente, podemos discutir o que precisamos mudar ao modificar o SSDT. Se você remover P-States você deve diminuir o valor (APSS, Package (0x1B)) para refletir o número de States excluídos. O SSDT de um i7 tem um Clock máximo de 3,9 GHz o que significa que a entrada de cima será parecido com esta: Name (APSS, Package (0x18) { Package (0x06) { 0x0F3C, Zero, 0x0A, 0x0A, 0x2700, 0x2700 }, Verificamos, que a contagem Package diminuiu 3 a partir do Package (0x1B) para Name (APSS, Package (0x18) e do primeiro Package mostra o CoreFreq de 0x0F3C = 3900 ou 3,9 GHz e de Control e Status são agora 0x2700 ou 39. Da mesma forma se você quiser adicionar States, lembre-se de adicionar 0x64 para cada CoreFreq e 1 para Control e Status e certifique-se que o valor no Name (APSS, Package (0x18) corresponde ao número total de P-States definidos. Fonte: http://macmanx86.blogspot.com.es/2012/05/customizing-ssdt-power-management.html PB Easy Note TM 86 - i5 430 M - H55M - Ram - 6 GB - Alc272 - Radeon HD 5470 512 QE/CI Lenovo G500 - i5 3230m - HM77 - Ram - 8 GB - Conexant audio - HD 4000 My OS X Files
magnifico Posted May 26, 2012 Posted May 26, 2012 Hi Friend sorry for English This is a for my cpu Overclocked 4,9 ? Scope (\_PR.CPU0) { Name (APSN, 0x04) Name (APSS, Package (0x14) { Package (0x06) { 0x0DAC, Zero, 0x0A, 0x0A, 0x2300, 0x2300 }, Package (0x06) { 0x0D48, Zero, 0x0A, 0x0A, 0x2200, 0x2200 }, Package (0x06) { 0x0CE4, Zero, 0x0A, 0x0A, 0x2100, 0x2100 }, Package (0x06) { 0x0C80, Zero, 0x0A, 0x0A, 0x2000, 0x2000 }, Package (0x06) { 0x0C1C, Zero, 0x0A, 0x0A, 0x1F00, 0x1F00 }, Package (0x06) { 0x0BB8, Zero, 0x0A, 0x0A, 0x1E00, 0x1E00 }, Package (0x06) { 0x0B54, Zero, 0x0A, 0x0A, 0x1D00, 0x1D00 }, Package (0x06) { 0x0AF0, Zero, 0x0A, 0x0A, 0x1C00, 0x1C00 }, Package (0x06) { 0x0A8C, Zero, 0x0A, 0x0A, 0x1B00, 0x1B00 }, Package (0x06) { 0x0A28, Zero, 0x0A, 0x0A, 0x1A00, 0x1A00 }, Package (0x06) { 0x09C4, Zero, 0x0A, 0x0A, 0x1900, 0x1900 }, Package (0x06) { 0x0960, Zero, 0x0A, 0x0A, 0x1800, 0x1800 }, Package (0x06) { 0x08FC, Zero, 0x0A, 0x0A, 0x1700, 0x1700 }, Package (0x06) { 0x0898, Zero, 0x0A, 0x0A, 0x1600, 0x1600 }, Package (0x06) { 0x0834, Zero, 0x0A, 0x0A, 0x1500, 0x1500 }, Package (0x06) { 0x07D0, Zero, 0x0A, 0x0A, 0x1400, 0x1400 }, Package (0x06) { 0x076C, Zero, 0x0A, 0x0A, 0x1300, 0x1300 }, Package (0x06) { 0x0708, Zero, 0x0A, 0x0A, 0x1200, 0x1200 }, Package (0x06) { 0x06A4, Zero, 0x0A, 0x0A, 0x1100, 0x1100 }, Package (0x06) { 0x0640, Zero, 0x0A, 0x0A, 0x1000, 0x1000 } }) Without PC
artur-pt Posted May 26, 2012 Author Posted May 26, 2012 hello 0x0DAC = 3500 / 3.5 MHz is not i send u to 4.9 Mhz good hack PB Easy Note TM 86 - i5 430 M - H55M - Ram - 6 GB - Alc272 - Radeon HD 5470 512 QE/CI Lenovo G500 - i5 3230m - HM77 - Ram - 8 GB - Conexant audio - HD 4000 My OS X Files
magnifico Posted May 26, 2012 Posted May 26, 2012 hello 0x0DAC = 3500 / 3.5 MHz is not i send u to 4.9 Mhz good hack With ssdt there is not moltiplier 35 on 10.7.3 May 26 19:31:12 Mac-Pro-di-carmine kernel[0]: MSRDumper PStatesReached: 16 37 41 48 49 May 26 19:31:12 Mac-Pro-di-carmine kernel[0]: MSRDumper CoreMulti(16) May 26 19:31:12 Mac-Pro-di-carmine kernel[0]: MSRDumper PStatesReached: 16 37 41 48 49 May 26 19:31:13 Mac-Pro-di-carmine kernel[0]: MSRDumper CoreMulti(16) May 26 19:31:13 Mac-Pro-di-carmine kernel[0]: MSRDumper PStatesReached: 16 37 41 48 49 May 26 19:31:13 Mac-Pro-di-carmine kernel[0]: MSRDumper CoreMulti(16) Without PC
Jahworks Posted June 13, 2012 Posted June 13, 2012 Olá, Cássio. No meu caso i7 2670QM, como ficaria? Obrigado. Uso o Enoch-rev.1997. ------------- SSDT with CPU C-States generated successfully P-States: min 0x8, max 0x16 SSDT with CPU P-States generated successfully RSDT: Added 2 SSDT table(s) FADT: Restart Fix applied ! FADT: Using custom DSDT! Added 2 SSDT table(s) into XSDT Starting Darwin x86_64 ---------------------------------------- No meu caso preciso usar? ASUS G75VW-RS72 • CPU: Intel Core i7- 3610QM 2.29GHz • RAM: 12 GB DDR 3 ELPIDA • HD: 240GB CORSAIR GS SSD (MAC OS) HD 2 750GB (Win 8) • GPU: GeForce GTX 670M 3GB 1920x1080 • OS: Mac OS X 10.10. (14A389) • BIOS: 223.
Cassio Posted June 13, 2012 Posted June 13, 2012 Se teve perda de desempenho depois do update 10.7.4, precisa (a menos que não se importe com isso). -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 6, 2012 Posted July 6, 2012 Ola,aqui no meu note(acer aspire 5750-Intel core I5-2430M 2.4 GHz-Sandy Bridge) após a atualização nem boota usando a AICPM do 10.7.4(mesmo pactheada)=KP,eu escrevi no topico da atualização que basta fazer o dowgrade da kext do 10.7.3,mais me parece que não é uma boa solução,andei lendo a respeito e saquei as tabelas ACPI pelo linux e peço ajuda de todos,aqui sairam 3 tabelas SSDT,1,2 e 3,vou subir as 3 pq realmente não é tão simples como nos exemplos que vi e nem sei qual delas usar na edição. comandos usados: sudo acpidump > acpi.dat sudo acpixtract -a acpi.dat Tabelas ACPISSDTS: SSDT1:SSDT1.aml.zip SSDT2:SSDT2.aml.zip SSDT3:SSDT3.aml.zip Gostaria da ajuda em qual parte e qual tabela usar para edição. Obg. OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
Cassio Posted July 6, 2012 Posted July 6, 2012 Não precisa se basear nas SSDT originais, pode fazer como indicado no primeiro post, apenas os nomes dos objetos (CPU0, CPU1, P000, etc) tem que coincidir. Tem também este script pra gerar a SSDT http://Olarila.com/forum/viewtopic.php?f=10&t=1340&start=10#p12849 Não sei se esse problema do KP mesmo com AICPM patcheada tem a ver com SSDT, até acho que não, mas só testando. -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 6, 2012 Posted July 6, 2012 @Cassio Obg pela resposta quase que imediata,o link não funciona para baixar o script,o blog saiu do ar,vlw OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
Cassio Posted July 6, 2012 Posted July 6, 2012 Por isso eu botei um quote do blog e o arquivo anexado logo abaixo. -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 6, 2012 Posted July 6, 2012 @Cassio Desculpe eu nem vi,rodando script no Snow. Edit:Aqui ele não criou nenhuma tabela,dsl ou aml,só escreveu isso no terminal: MacBook-Pro-de-Carlos:~ carlos$ sudo ./ssdtPRGen.sh 95 4 3700 Usage: ./ssdtPRGen.sh TDP MaxTurboFrequency Obg. OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
artur-pt Posted July 6, 2012 Author Posted July 6, 2012 olá no teu caso está no ssdt-2 Name (_PSS, Package (0x09) { Package (0x06) { 0x00000961, 0x000088B8, 0x0000000A, 0x0000000A, 0x00001E00, 0x00001E00 }, Package (0x06) bom hack PB Easy Note TM 86 - i5 430 M - H55M - Ram - 6 GB - Alc272 - Radeon HD 5470 512 QE/CI Lenovo G500 - i5 3230m - HM77 - Ram - 8 GB - Conexant audio - HD 4000 My OS X Files
Cassio Posted July 6, 2012 Posted July 6, 2012 Edit:Aqui ele não criou nenhuma tabela,dsl ou aml,só escreveu isso no terminal: MacBook-Pro-de-Carlos:~ carlos$ sudo ./ssdtPRGen.sh 95 4 3700 Usage: ./ssdtPRGen.sh TDP MaxTurboFrequency Na verdade não precisa passar o número de cores, ele pega do sysctl sysctl hw.logicalcpu | sed -e 's/^hw.logicalcpu: //' Basta TDP e MaxTurboFrequency sudo ./ssdtPRGen.sh 95 3700 -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 6, 2012 Posted July 6, 2012 Na verdade não precisa passar o número de cores, ele pega do sysctl sysctl hw.logicalcpu | sed -e 's/^hw.logicalcpu: //' Basta TDP e MaxTurboFrequency sudo ./ssdtPRGen.sh 95 3700 Opa,agora ficou mais facil,ele gerou a tabela completa,ja pronta,só uma duvida,eu deixo APSS e ACST ou mudo para _PSS e _CST na hora de editar no dsdt. A tabe que ele gerou só vai até o cpu 3 os power,estranho eu faço nas 7 do dsdt ou so nas 3 cpus do codigo o return para o cpu 0 DefinitionBlock ("ssdt-pr.aml", "SSDT", 1, "APPLE ", "CpuPm", 0x00001000) { External (\_PR_.CPU0, DeviceObj) External (\_PR_.CPU1, DeviceObj) External (\_PR_.CPU2, DeviceObj) External (\_PR_.CPU3, DeviceObj) Scope (_PR.CPU0) { Name (APSN, 0x0D) Name (APSS, Package (0x16) { Package (0x06) { 0x0E74, 0x00017318, 0x0A, 0x0A, 0x2500, 0x2500 }, Package (0x06) { 0x0E10, 0x00017318, 0x0A, 0x0A, 0x2400, 0x2400 }, Package (0x06) { 0x0DAC, 0x00017318, 0x0A, 0x0A, 0x2300, 0x2300 }, Package (0x06) { 0x0D48, 0x00017318, 0x0A, 0x0A, 0x2200, 0x2200 }, Package (0x06) { 0x0CE4, 0x00017318, 0x0A, 0x0A, 0x2100, 0x2100 }, Package (0x06) { 0x0C80, 0x00017318, 0x0A, 0x0A, 0x2000, 0x2000 }, Package (0x06) { 0x0C1C, 0x00017318, 0x0A, 0x0A, 0x1F00, 0x1F00 }, Package (0x06) { 0x0BB8, 0x00017318, 0x0A, 0x0A, 0x1E00, 0x1E00 }, Package (0x06) { 0x0B54, 0x00017318, 0x0A, 0x0A, 0x1D00, 0x1D00 }, Package (0x06) { 0x0AF0, 0x00017318, 0x0A, 0x0A, 0x1C00, 0x1C00 }, Package (0x06) { 0x0A8C, 0x00017318, 0x0A, 0x0A, 0x1B00, 0x1B00 }, Package (0x06) { 0x0A28, 0x00017318, 0x0A, 0x0A, 0x1A00, 0x1A00 }, Package (0x06) { 0x09C4, 0x00017318, 0x0A, 0x0A, 0x1900, 0x1900 }, Package (0x06) { 0x0960, 0x00017318, 0x0A, 0x0A, 0x1800, 0x1800 }, Package (0x06) { 0x08FC, 0x0000C370, 0x0A, 0x0A, 0x1700, 0x1700 }, Package (0x06) { 0x0898, 0x0000B8A4, 0x0A, 0x0A, 0x1600, 0x1600 }, Package (0x06) { 0x0834, 0x0000AE10, 0x0A, 0x0A, 0x1500, 0x1500 }, Package (0x06) { 0x07D0, 0x0000A3B6, 0x0A, 0x0A, 0x1400, 0x1400 }, Package (0x06) { 0x076C, 0x00009993, 0x0A, 0x0A, 0x1300, 0x1300 }, Package (0x06) { 0x0708, 0x00008FA8, 0x0A, 0x0A, 0x1200, 0x1200 }, Package (0x06) { 0x06A4, 0x000085F3, 0x0A, 0x0A, 0x1100, 0x1100 }, Package (0x06) { 0x0640, 0x00007C76, 0x0A, 0x0A, 0x1000, 0x1000 } }) Method (ACST, 0, NotSerialized) { Return (Package (0x06) { One, 0x04, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, One, 0x03, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000010, // Address 0x03, // Access Size ) }, 0x03, 0xCD, 0x01F4 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x06, 0xF5, 0x015E }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000030, // Address 0x03, // Access Size ) }, 0x07, 0xF5, 0xC8 } }) } } Scope (\_PR.CPU1) { Method (APSS, 0, NotSerialized) { Return (\_PR.CPU0.APSS) } } Scope (\_PR.CPU2) { Method (APSS, 0, NotSerialized) { Return (\_PR.CPU0.APSS) } } Scope (\_PR.CPU3) { Method (APSS, 0, NotSerialized) { Return (\_PR.CPU0.APSS) } } } OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
Cassio Posted July 6, 2012 Posted July 6, 2012 Não precisa passar pra DSDT, compile, salve como SSDT.aml e coloque na pasta Extra. -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 6, 2012 Posted July 6, 2012 (edited) @Cassio Vlw Cassio,mais infelismente a imagem é essa: minha Extra:Extra.zip Ajuda se ouver alguma. Cassio eu acho que não atentei as informações,TDP doque se trata e como ter esse valor e o maxturbo frequency como obter os valores,acho que rodei o script com os valores ai postados e não com valores do meu processador. Edited July 6, 2012 by Guest OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
Cassio Posted July 6, 2012 Posted July 6, 2012 Atualizou o kernelcache depois de rodar o AICPMPatch? sudo kextcache -prelinked-kernel -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 6, 2012 Posted July 6, 2012 @Cassio Não havia atualizado,rodei o pen de instalação e reparei permições do disco,mais como eu havia falado eu usei os valores ai postados e agora corrigi para os valores do meu cpu,TDP=35 e MaxturboFrequency=3000,testei com as kexts originais e KP ai usei a AppleACPIPlataform.kext do 10.6.8 e a AppleSMC.kext do 10.7.3 e o mesmo KP,veja a imagem e a nova extra. Extra:Extra.zip Eu desisti por conta desse KP da ultima vez que tentei correr o 10.7.4 OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
Cassio Posted July 6, 2012 Posted July 6, 2012 Você deve estar fazendo confusão, a foto é com a AICPM 193.0 que é do 10.7.4. Use todas as kexts originais da última versão, rode o AICPMPatch e atualize o kernelcache. -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
Crosx86 Posted July 7, 2012 Posted July 7, 2012 @Cassio Desculpe a demora para retornar,infelismente a imagem do KP é a mesma com as kexts originais do 10.7.4,eu puz a AICPM do 10.7.3,bootou na primeira,e tem o erro da AppleSMC(holl back old smc) no final do boot,nada mudou. o bom é que eu ja testei essa AICPM e a AppleSMC(10.7.3) no 10.7.5(11g15) e funciona de boa pelo menos até la vai dar para ver o sistema. Agora problema mesmo e acho que vai ser muito dificil é a rede(14e4:16b5"DHCP") até tem uma kext que deixa verde a rede,porem ela so reconhece o ip e a mascara de subrede,não reconhece o Router e conhecequentemente não tem internet a cabo. OS X Mavericks 10 .9.3 - OS X Mountain Lion 10.8.5 - Kali Linux 1.0.6
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now