Jump to content

DSDT Asus F550L (X550LD)


Fede-Bad95
 Share

98 posts in this topic

Recommended Posts

Could you correct me with the problem of the dsdt patch that replaces the SSDT? I would be grateful infitamente chains. For the kext I had removed because I was not increase and decrease the brightness. Now reinstall it.

Remove the PNLF object in your DSDT.

Link to comment
Share on other sites

how do I remove it?

 

nothing I can not understand what I have to delete you can explain to me step by step? please

Well, you could have not added it in the first place...

 

Or, remove it manually... Or remove it with this MaciASL patch:

into device label PNLF remove_entry;
Link to comment
Share on other sites

I did not look enforces place screen

 

EDIT :  I solved that I tried with the files you've posted and at that dsdt I applied the fix. Now how can I proceed to disable the NVIDIA. I just know that I'll situated in ssdt9 postoper certainty

You are probably not using the latest MaciASL: https://github.com/RehabMan/OS-X-MaciASL-patchmatic

 

Generally, you cannot open an AML by itself. Make sure you are disassembling your files correctly...

 

You will get a better disassembly if you disassemble all at once...

 

You will need to extract all DSDT/SSDT from Linux. They are available in /sys/firmware/acpi/tables and /sys/firmware/acpi/tables/dynamic. Place them on USB or otherwise transfer to OS X.

 

It is not necessary to install Linux. Simply run it from USB: http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-windows

 

In Linux Terminal:

# substitute DEST with the mountpoint of a FAT32 formatted USB stick
sudo cp -R /sys/firmware/acpi/tables DEST
Place all SSDT/DSDT in a single directory (rename them to *.aml as you move them) and use a recent build of iasl to disassemble:

https://bitbucket.org/RehabMan/acpica/downloads

cd "to directory where you placed all SSDT/DSDT"
iasl -da -dl *.aml
Then work with the resulting *.dsl. You'll find you have less errors to deal with.
Link to comment
Share on other sites

how do I do now?

Your issue is you're trying to open an AML directly in MaciASL which involves disassembling the file standalone. For SSDTs/DSDT with complex External references to other objects defined in DSDT/other SSDTs, it doesn't work.

 

Collect all files from Linux. Then disassemble as I describe above. Then get back to making the edits to disable nvidia.

Link to comment
Share on other sites

here is the file

There are some duplicate tables in dynamic (I didn't bother to check which ones), so don't bother including them...

 

Just use 'iasl -da -dl *.aml' (not 'iasl -da -dl *.aml dynamic/*.aml').

Link to comment
Share on other sites

There are some duplicate tables in dynamic (I didn't bother to check which ones), so don't bother including them...

 

Just use 'iasl -da -dl *.aml' (not 'iasl -da -dl *.aml dynamic/*.aml').

You will need both SSDT9 and SSDT10. Normally, you call _OFF from _INI:

 

in SSDT9.dsl

        Method (_INI, 0, NotSerialized)  // _INI: Initialize
        {
            Store (Zero, \_SB.PCI0.RP05.PEGP._ADR)
//added
External(\_SB.PCI0.RP05.PEGP._OFF, MethodObj)
\_SB.PCI0.RP05.PEGP._OFF()
        }
I don't expect it will work, because your _OFF method accesses the EC, and the EC is not available at the time _INI is called...

 

You will probably need to call it from _REG in DSDT:

            Method (_REG, 2, NotSerialized)  // _REG: Region Availability
            {
                If (LEqual (Arg0, 0x03))
                {
                    Store (Arg1, ECFL)
// added...
if (LEqual(Arg1,1)) {
    External(\_SB.PCI0.RP05.PEGP._OFF, MethodObj)
    \_SB.PCI0.RP05.PEGP._OFF()
}
                }
            }
Make sure you apply any renames equally (eg. if you rename GFX0 to IGPU, make sure you do it in all SSDTs you include)

 

Calling from _REG can be problematic, because sometimes the nvidia drivers have already started loading, and then the device suddenly disappears when _REG is called.

Link to comment
Share on other sites

I was able to add the string to ssdt9.dsl I have to rename aml? instead for dsdt I can not find

 

Method (_REG, 2, NotSerialized) // _REG: Region Availability

{
If (LEqual (Arg0, 0x03))
{
Store (Arg1, ECFL)


EDIT :  I was able to apply the fix to dsdt. Reboot but I still recognized the nvidia, I have to do?

Link to comment
Share on other sites

...

EDIT :  I was able to apply the fix to dsdt. Reboot but I still recognized the nvidia, I have to do?

Download patchmatic: https://github.com/RehabMan/OS-X-MaciASL-patchmatic.

Extract the 'patchmatic' binary from the ZIP. Copy it to /usr/bin, such that you have the binary at /usr/bin/patchmatic.

 

In terminal,

rm -Rf ~/Downloads/RehabMan
mkdir ~/Downloads/RehabMan
cd ~/Downloads/RehabMan
patchmatic -extract
Post contents of Downloads/RehabMan directory (as ZIP).
Link to comment
Share on other sites

Here are the files, thanks for all the aito and patience that you're giving me.

You did not do it correctly. You need both of the SSDT9/SSDT10 SSDTs (I only see one of them). And you should not call _OFF from _INI (I'm pretty sure it will not work there). There is no call from to _OFF from _REG in the DSDT as I describe above.

Link to comment
Share on other sites

ok sorry I knew that I was wrong in what I have to correct SSDT9 instead what I have to add in SSDT10?

 

EDIT : I have an error in SSDT10, how can I solve it? I enclose SSDT10

Other than the normal process of fixing errors and renaming GFX0->IGPU, you don't have to make edits to any of the SSDT9/SSDT10...

 

Because you should be calling _INI from _REG in DSDT, you end up making no material changes in the two SSTDs.

 

For SSDT10 fix:

into device label WMI1 remove_entry;
into_all method label HDSM remove_entry;
into_all method label _DSM remove_entry;
Link to comment
Share on other sites

 Share

×
×
  • Create New...