Contribute
Register

LG GRAM 17Z990 Big Sur

Status
Not open for further replies.
I checked the order of the kexts and moved them acordingly to your proposal. No help in making the touchpad work.

And I removed most of the efi drivers (I let nvme, because i have an nvm drive Samsung 850 pro, apfs and the fs is apfs so i quess I need booth). I had to keep aptioinputfix also because I couldn't choose in opencanopy without it. Removed the rest.

Today I removed an SSDT (SSDT-ELAN-POLLIN.aml).

That did not solve the touchpad problem but It seems to have helped in backlight at boot up.
I chose to use DSDT that only has battery patches. Did not help in touchscreen.
Here you have the patches I apply:
// Aquests són els registres que modifiquem perquè sono de més de 8 bits i es fan servir al codi.
SMD0, 256,
BMFG, 72,
BDC, 16,
BFC, 16,
BDV, 16,
BSN, 16,
BPR, 16,
BRC, 16,
BPV, 16,
CYC1, 16,

// Apuesta la funció que fem servir per reconstruir el registre de 16 bits.

into method label B1B2 remove_entry;
into definitionblock code_regex . insert
begin
Method (B1B2, 2, NotSerialized) { Return(Or(Arg0, ShiftLeft(Arg1, 8))) }\n
end;



// Aquestes regles dividiesen del registres
into device label H_EC code_regex BDC,\s+16, replace_matched begin DC00,8,DC01,8, end;
into device label H_EC code_regex BFC,\s+16, replace_matched begin FC00,8,FC01,8, end;
into device label H_EC code_regex BDV,\s+16, replace_matched begin DV00,8,DV01,8, end;
into device label H_EC code_regex BSN,\s+16, replace_matched begin SN00,8,SN01,8, end;
into device label H_EC code_regex BPR,\s+16, replace_matched begin PR00,8,PR01,8, end;
into device label H_EC code_regex BRC,\s+16, replace_matched begin RC00,8,RC01,8, end;
into device label H_EC code_regex BPV,\s+16, replace_matched begin PV00,8,PV01,8, end;
into device label H_EC code_regex CYC1,\s+16, replace_matched begin YC00,8,YC01,8, end;

// Aquestes regles substitueixen les cries als registres per crises a les foncions
into method label XBIF code_regex \=\sBDC replaceall_matched begin = B1B2(DC00,DC01) end;
into method label XBIF code_regex \=\sBFC replaceall_matched begin = B1B2(FC00,FC01) end;
into method label XBIF code_regex \=\sBDV replaceall_matched begin = B1B2(DV00,DV01) end;
into method label XBIF code_regex \=\sBSN replaceall_matched begin = B1B2(SN00,SN01) end;

into method label XBIX code_regex \=\sCYC1 replaceall_matched begin = B1B2(YC00,YC01) end;

into method label XBST code_regex \=\sBPR replaceall_matched begin = B1B2(PR00,PR01) end;
into method label XBST code_regex \=\sBRC replaceall_matched begin = B1B2(RC00,RC01) end;
into method label XBST code_regex \=\sBPV replaceall_matched begin = B1B2(PV00,PV01) end;
into method label XBST code_regex \=\sBFC replaceall_matched begin = B1B2(FC00,FC01) end;

# Els registres de més de 32 els tractem diferent.
into device label H_EC code_regex (SMD0,)\s+(256) replace_matched begin SMDX,%2,//%1%2 end;
into device label H_EC code_regex (BMFG,)\s+(72) replace_matched begin BMFX,%2,//%1%2 end;


# utility methods to read/write buffers from/to EC
into method label RE1B parent_label H_EC remove_entry;
into method label RECB parent_label H_EC remove_entry;
into device label H_EC insert
begin
Method (RE1B, 1, NotSerialized)\n
{\n
OperationRegion(ERAM, EmbeddedControl, Arg0, 1)\n
Field(ERAM, ByteAcc, NoLock, Preserve) { BYTE, 8 }\n
Return(BYTE)\n
}\n
Method (RECB, 2, Serialized)\n
// Arg0 - offset in bytes from zero-based EC\n
// Arg1 - size of buffer in bits\n
{\n
ShiftRight(Add(Arg1,7), 3, Arg1)\n
Name(TEMP, Buffer(Arg1) { })\n
Add(Arg0, Arg1, Arg1)\n
Store(0, Local0)\n
While (LLess(Arg0, Arg1))\n
{\n
Store(RE1B(Arg0), Index(TEMP, Local0))\n
Increment(Arg0)\n
Increment(Local0)\n
}\n
Return(TEMP)\n
}\n
end;

into method label XBIF code_regex \(BMFG, replaceall_matched begin (RECB(0x9D,9), end;

What i cannot figure out is... how do you create the hot patches that make direct substitutions to DSDT.aml in opencore? I don't know how can I, for example, patch hot DSDT to change _CRS to XCRS ONLY for HPET (or any ther device). Don't know how do I have to find it in my DSDT.
 
I checked the order of the kexts and moved them acordingly to your proposal. No help in making the touchpad work.

And I removed most of the efi drivers (I let nvme, because i have an nvm drive Samsung 850 pro, apfs and the fs is apfs so i quess I need booth). I had to keep aptioinputfix also because I couldn't choose in opencanopy without it. Removed the rest.

Today I removed an SSDT (SSDT-ELAN-POLLIN.aml).

That did not solve the touchpad problem but It seems to have helped in backlight at boot up.
I chose to use DSDT that only has battery patches. Did not help in touchscreen.
Here you have the patches I apply:



What i cannot figure out is... how do you create the hot patches that make direct substitutions to DSDT.aml in opencore? I don't know how can I, for example, patch hot DSDT to change _CRS to XCRS ONLY for HPET (or any ther device). Don't know how do I have to find it in my DSDT.
 
I think hotpatches are not being applied. Nothing seems to work.
If I open MaciASL and retrive System DSDT no XCRS or IGPU is found. Battery patches are found so the DSDT that loads is the one on OpenCore.

I don't know:
a) Do hotpatches appear in DSDT that MaciASL takes from ACPI?
b) Is there any opencore config.plist parameter that dissable hotpatches OR any circumstance that can prevent hotpatches from happening?
 

Attachments

  • config.plist
    45 KB · Views: 49
I think hotpatches are not being applied. Nothing seems to work.
If I open MaciASL and retrive System DSDT no XCRS or IGPU is found. Battery patches are found so the DSDT that loads is the one on OpenCore.

I don't know:
a) Do hotpatches appear in DSDT that MaciASL takes from ACPI?
b) Is there any opencore config.plist parameter that dissable hotpatches OR any circumstance that can prevent hotpatches from happening?
the ones marked enabled/true:

Code:
<key>Add</key>
        <array>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>DSDT.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-ALS0.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-XOSI.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-PLUG.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-PMC.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-USB-Reset.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-AWAC.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-EC-USBX.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <false/>
                <key>Path</key>
                <string>SSDT-EC.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-GPI0.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-HPET.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>Path</key>
                <string>SSDT-PNLFCFL.aml</string>
            </dict>
            <dict>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <false/>
                <key>Path</key>
                <string>SSDT-ELAN-POLLING.aml</string>
            </dict>

will try and load
 
the ones marked enabled/true:



will try and load


That, I understand.

Yet it seems they do little help.
For example, I used the hotpatch to change GFX0 to IGPU, yet MaciASL finds no IGPU in DSDT. And when I try to patch directly the DSDT changing all GFX0 appearences to IGPU, then the kernel refuses to load.
So I must understand that this hotpatch is not working at all and therefore all SSDT that overwrite methods do not work neither.
That would explain why, even when I tweaked everything I could a hundred times I cannot make backlight at boot up work and neither the touchpad.

I am running out of options.
 
That, I understand.

Yet it seems they do little help.
For example, I used the hotpatch to change GFX0 to IGPU, yet MaciASL finds no IGPU in DSDT. And when I try to patch directly the DSDT changing all GFX0 appearences to IGPU, then the kernel refuses to load.
So I must understand that this hotpatch is not working at all and therefore all SSDT that overwrite methods do not work neither.
That would explain why, even when I tweaked everything I could a hundred times I cannot make backlight at boot up work and neither the touchpad.

I am running out of options.
Whatevergreen already does the GFX0 to IGPU

that rename is not needed anymore
 
@epertinez can you share your last functional efi folder? I an 15z990 and trying to install a hackintosh.
Thanks!
 
@epertinez can you share your last functional efi folder? I an 15z990 and trying to install a hackintosh.
Thanks!
Sorry I just read the message. I tried to boot up macOS partition today and it is not working. Don't know if it happened something during this time or if i let it in a wrong state while testing. If I manage to make it run again I'll sent my EFI.
 
Status
Not open for further replies.
Back
Top