Jump to content
272 posts in this topic

Recommended Posts

Olá

De nada... precisando estamos ai...

No momento estou parado, muitas coisas para fazer na vida real(família, estudos...)kkkkkkk, mas quando tiver um tempo, vou procurar me informar mais e tentar atualizar esse guia quantas vezes eu puder... Não só esse, mas outro que eu tenho.

  • Like 1

Jorge, o patch LPC para IvyBridge está no link que te passei: http://olarila.com/forum/patches.php

É só procurar amigo...

into method label _DSM parent_adr 0x001F0000 remove_entry;
into device name_adr 0x001F0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    Store (Package (0x02)\n
        {\n
            "device-id", \n
            Buffer (0x04)\n
            {\n
                0x57, 0x1E, 0x00, 0x00\n
            }\n
        }, Local0)\n
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
    Return (Local0)\n
}
end

Tente a DSDT que editei para você:DSDT.aml.zip

 

 

  • Like 2

este patch ya nao serve para 10.9 :(  algumas boards tem que injectar desta manera, com name, ioname, compatible, si nao o kext nao lee, aqui um exemplo do meu LPC

 

               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)
                }
            }
  • Like 3

Olá

 

Usando a lógica... De certo que não, pois Allan afirmou desconhecer esse detalhe que iFire propôs...

 

Ele patcheou com aquele patch que ele mesmo colocou, vindo daqui: http://olarila.com/forum/patches.php

Olá

 

Usando a lógica... De certo que não, pois Allan afirmou desconhecer esse detalhe que iFire propôs...

 

Ele patcheou com aquele patch que ele mesmo colocou, vindo daqui: http://olarila.com/forum/patches.php

Amigo. Esta DSDT do Allan  não carregou a kext AppleLPC. E este patch do iFIRE, eu tentei aplicar, mas não acontece nada no programa "MaciASL". 

Eu copiei daqui do site e colei no programa, mas nada acontece. Como, o "antes" e o "depois", não me mostra como vai ficar a mudança na DSDT. Eu também não entendo muito de DSDT.

Então amigo, não é assim, você tem que procurar o LPC na DSDT.

 

Vou te ensinar a "pescar", vamos lá:

 

Baixe o IOReg. e coloque ele na pasta Aplicativos.

 

Abra ele e pesquise LPCB, mas siga a numeração que coloquei na imagem abaixo, 1,2 e 3.

Screen Shot 2014-02-18 at 6.48.22 PM.png

 

E depois que achar coloque a imagem aqui.

  • Like 2

A julgar pela imagem, sua LPC está sendo reconhecida, mas não carregada, então vamos aplicar o que o iFire nos falou...

 

1º Notou que quando você digitou LPCB, no canto esquerdo tem uma linha de endereços? então ali está a resposta, procure na sua DSDT o device LPCB.

post-1145065-0-93972700-1392761053.png

 

Vou te ajudar de outra vez, veja a imagem:

Screen Shot 2014-02-18 at 7.08.24 PM.png

 

Agora você ja tem meio caminho andado, no LPCB, procure pelo metodo _DSM.

 

E volte com os resultados.

Opa isso cara esta indo bem, agora o que vamos fazer?

 

Apague este metodo o insira o que o iFire recomendou:

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)
                }
            }

Você pode também, apenas selecionar o método e colar este.

 

Compile e veja se não tem erros. Coloque onde deve, reinicie e veja se foi carregado.

Copilei amigo. Não deu erro.

Veja:

post-1145065-0-40132100-1392763332_thumb.png

 

e:

post-1145065-0-68739400-1392763451_thumb.png

 

e esta imagem:

post-1145065-0-61525300-1392764820_thumb.png

 

Muito bom carregou agora a kext "AppleLPC"!

 

Valeu pela ajuda. Muito obrigado à Você o PimentelX86 e o iFIRE. 

Olá

Eu sei que o ensinamento não é para mim, mas esse teu mini-guia está muito bom...

Se você quiser pode até criar um guia falado sobre essas edições de DSDT... ajudará e muito os usuários do fórum... Vivendo e aprendendo :)
 

Não pude responder ontem pois fui assistir um filme com minha esposa hehe

 

Mas voltando...

 

Perfeito Jorge, que bom que este método deu certo para você.

 

E apenas uma correção, quando eu falei para você compilar, não seria com códigos no Terminal, é clicar na opção "Compile" do MaciASL, veja:

Screen Shot 2014-02-19 at 6.31.48 PM.png

 

Se a janela aparecer sem nada, é porque está tudo certo.

 

E Pimentel já estou criando um guia sobre DSDT+IOReg. 

 

Flw

  • Like 1

Olá

 

Fico no aguardo do guia... vai servi também para mim, confesso que não conheço muito bem acerca de DSDT... mas a vida é assim...

 

Vivendo e Aprendendo!

Edited by PimentelX86
Fixed

Olá

Acerca disso... é uma falha, acho que é no fórum, as vezes aperto post e do nada sai 2 postagens iguais... vou até editar isso logo.

 

Mais uma vez: fico no aguardo! :)

Finalmente trago a explicação do "Plugin-type", essa materia faz parte da explicação do XNU escrito por Piker Alpha. Por isso todo o merito é dele, a unica coisa que fiz foi traduzir para um melhor entendimento.

 

Explicação:

 

Apple utiliza um _DSM ( em tradução livre seria: Dispositivo Método Específico) em uma de suas tabelas ACPI para acionar plugins adicionais para carregar (X86PlatformPlugin.kext e X86PlatformShim.kext). E ainda temos de definir essa propriedade na SSDT ( o que é gerado por padrão com o script), caso contrário, os plugins não serão carregados e você acaba vendo este erro em system.log:

ACPI_SMC_PlatformPlugin::start – waitForService(resourceMatching(AppleIntelCPUPowerManagement) timed out
WARNING: IOPlatformPluginUtil : getCPUIDInfo: this is an unknown CPU model 0x3c — power management may be incomplete or unsupported

Um ponto em levar em consideração, é que quando está sendo usado o XNU, já não é necessário ter a kext ACPI_SMC_PlatformPlugin carregado. Isto também significa que as propriedade suportados Features/Stepper do CPU não será definido, mas é preciso definir plugin-type, ou você receberá o erro acima.

 

Pimentel, se for da sua vontade, pode deletar este post e incluir no seu topico, talvez com suas palavras.

 

Abraços.

Olá

 

Acho que vou deixar isso ai mesmo... ainda não tenho tantas informações acerca disso para simplesmentea adicionar no guia e depois não saber explicar acerca disso...

 

Algumas perguntas:

 

1-Esse plugin-type é adicionado no método _DSM ou é adicionado nas kexts X86PlatformPlugin, X86PlatformShim

 

2-Se esse plugin_type já é definido na SSDT então não há a necessiadade de adiciona-los manualmente certo?

 

Agreadeço desde já pela explicação Allan. Obrigado por falar acerca disso...

 

Abraços.

×
×
  • Create New...