Jump to content

OpenCore General Discussion


dgsga
8,888 posts in this topic

Recommended Posts

1 hour ago, vit9696 said:

Well, the log of OpenCore booting in verbose mode (Target = 67). Since github is now down, I attached the newest version here.

 

Please test macOS, Windows, and Linux. Note, that there is a new entry in config.plist Booter → Quirks, which you need to add and enable:


			<key>SyncRuntimePermissions</key>
			<false/>

 

Removed r4 in favour of r5 and newer as available on github:

https://github.com/acidanthera/bugtracker/issues/491#issuecomment-608113296

Tested Windows. Still the same blue screen error as previously reported by others 

Link to comment
Share on other sites

And where is the log? Sorry, but please understand that it takes time to understand the problem and provide a solution afterwards. Please understand that you are expected to properly aid investigation if you want 0.5.7 working for you. There currently are very few people with Windows not booting for them, if they do not provide enough data, I will just assume the issue to be unreproducible and mark it as resolved.

  • Like 4
Link to comment
Share on other sites

28 minutes ago, vit9696 said:

And where is the log? Sorry, but please understand that it takes time to understand the problem and provide a solution afterwards. Please understand that you are expected to properly aid investigation if you want 0.5.7 working for you. There currently are very few people with Windows not booting for them, if they do not provide enough data, I will just assume the issue to be unreproducible and mark it as resolved.

 

Sorry for the delay I've been AFK until now.

Just tried the new test files and im still unable to boot into windows with or without the new quirk enabled. 

here's the log, I hope it helps :) 

 

opencore-2020-04-02-225740.txt

Link to comment
Share on other sites

When I use shutdown, my system reboots, When I was using Clover boot-loader I selected Fix Shutdown in the Fixes section.

I have no idea how to do this in Opencore (0.5.6), can anyone explain what I need to do or send me a link?

 

Link to comment
Share on other sites

44 minutes ago, googe said:

When I use shutdown, my system reboots, When I was using Clover boot-loader I selected Fix Shutdown in the Fixes section.

I have no idea how to do this in Opencore (0.5.6), can anyone explain what I need to do or send me a link?

 

 

Just my opinion: Take a look to Kabyle Lake section for this guide: Kaby Lake specially DisableVariableWrite quirks.

Link to comment
Share on other sites

18 hours ago, Hector van der Aa said:

try this tutorial if nothing else works 


thank you very much for the reply !
He essentially did the same as I and also uses SSDTTime  to generate the acpi files.

 

Anyone else get those warning:

2020-04-02 05:12:55.108092+0200 0x2b0      Default     0x0                  0      0    kernel: (IOPlatformPluginFamily) WARNING: IOPlatformPluginUtil : getCPUIDInfo: this is an unknown CPU model 0x3c
  -- power management may be incomplete or unsupported
2020-04-02 05:12:55.108099+0200 0x2b0      Default     0x0                  0      0    kernel: (IOPlatformPluginFamily) WARNING: IOPlatformPluginUtil : getCPUIDInfo: this is an unknown CPU model 0x3c
  -- power management may be incomplete or unsupported

 

?
I have noticed that some say that we have to put the generated dsdt.aml into the open core acpi folder whilst others suggest NOT.

What is correct please?

Is this correct in the generated SSDT:


 

Scope (\_PR.CPU0)

Or should it be :

Scope (_PR.CPU0)

 

 

 

Edited by daslicht
Link to comment
Share on other sites

5 hours ago, daslicht said:


thank you very much for the reply !
He essentially did the same as I and also uses SSDTTime  to generate the acpi files.

 

Anyone else get those warning:


2020-04-02 05:12:55.108092+0200 0x2b0      Default     0x0                  0      0    kernel: (IOPlatformPluginFamily) WARNING: IOPlatformPluginUtil : getCPUIDInfo: this is an unknown CPU model 0x3c
  -- power management may be incomplete or unsupported
2020-04-02 05:12:55.108099+0200 0x2b0      Default     0x0                  0      0    kernel: (IOPlatformPluginFamily) WARNING: IOPlatformPluginUtil : getCPUIDInfo: this is an unknown CPU model 0x3c
  -- power management may be incomplete or unsupported

mr rehabman answered it here one looks up root the other one name of the varable

https://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/page-307

?
I have noticed that some say that we have to put the generated dsdt.aml into the open core acpi folder whilst others suggest NOT.

What is correct please?

Is this correct in the generated SSDT:


 


Scope (\_PR.CPU0)

Or should it be :


Scope (_PR.CPU0)

 

 

 

 

Link to comment
Share on other sites

hi I have an error _SB._PCI0,IGPU namespace lookup failure can someone suggest something I put this

/*
 * Intel ACPI Component Architecture
 * AML/ASL+ Disassembler version 20200110 (64-bit version)
 * Copyright (c) 2000 - 2020 Intel Corporation
 * 
 * Disassembling to symbolic ASL+ operators
 *
 * Disassembly of iASLtCUpdO.aml, Fri Apr  3 12:08:41 2020
 *
 * Original Table Header:
 *     Signature        "SSDT"
 *     Length           0x00000404 (1028)
 *     Revision         0x02
 *     Checksum         0x84
 *     OEM ID           "hack"
 *     OEM Table ID     "_PNLF"
 *     OEM Revision     0x00000000 (0)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x20180427 (538444839)
 */
DefinitionBlock ("", "SSDT", 2, "hack", "_PNLF", 0x00000000)
{
    External (_SB_.PCI0.IGPU, DeviceObj)
    External (RMCF.BKLT, IntObj)
    External (RMCF.FBTP, IntObj)
    External (RMCF.GRAN, IntObj)
    External (RMCF.LEVW, IntObj)
    External (RMCF.LMAX, IntObj)

    Scope (_SB.PCI0.IGPU)
    {
        OperationRegion (RMP3, PCI_Config, Zero, 0x14)
    }

    Device (_SB.PCI0.IGPU.PNLF)
    {
        Name (_ADR, Zero)  // _ADR: Address
        Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
        Name (_CID, "backlight")  // _CID: Compatible ID
        Name (_UID, Zero)  // _UID: Unique ID
        Name (_STA, 0x0B)  // _STA: Status
        Field (^RMP3, AnyAcc, NoLock, Preserve)
        {
            Offset (0x02), 
            GDID,   16, 
            Offset (0x10), 
            BAR1,   32
        }

        OperationRegion (RMB1, SystemMemory, (BAR1 & 0xFFFFFFFFFFFFFFF0), 0x000E1184)
        Field (RMB1, AnyAcc, Lock, Preserve)
        {
            Offset (0x48250), 
            LEV2,   32, 
            LEVL,   32, 
            Offset (0x70040), 
            P0BL,   32, 
            Offset (0xC2000), 
            GRAN,   32, 
            Offset (0xC8250), 
            LEVW,   32, 
            LEVX,   32, 
            Offset (0xE1180), 
            PCHL,   32
        }

        Method (_INI, 0, NotSerialized)  // _INI: Initialize
        {
            Local4 = One
            If (CondRefOf (\RMCF.BKLT))
            {
                Local4 = \RMCF.BKLT /* External reference */
            }

            If ((Zero == (One & Local4)))
            {
                Return (Zero)
            }

            Local0 = ^GDID /* \_SB_.PCI0.IGPU.PNLF.GDID */
            Local2 = Ones
            If (CondRefOf (\RMCF.LMAX))
            {
                Local2 = \RMCF.LMAX /* External reference */
            }

            Local3 = Zero
            If (CondRefOf (\RMCF.FBTP))
            {
                Local3 = \RMCF.FBTP /* External reference */
            }

            If ((Zero == Local3))
            {
                If ((Ones != Match (Package (0x10)
                                {
                                    0x010B, 
                                    0x0102, 
                                    0x0106, 
                                    0x1106, 
                                    0x1601, 
                                    0x0116, 
                                    0x0126, 
                                    0x0112, 
                                    0x0122, 
                                    0x0152, 
                                    0x0156, 
                                    0x0162, 
                                    0x0166, 
                                    0x016A, 
                                    0x46, 
                                    0x42
                                }, MEQ, Local0, MTR, Zero, Zero)))
                {
                    Local3 = One
                }
                Else
                {
                    Local3 = 0x02
                }
            }

            If ((One == Local3))
            {
                If ((Ones == Local2))
                {
                    Local2 = 0x0710
                }

                Local1 = (^LEVX >> 0x10)
                If (!Local1)
                {
                    Local1 = Local2
                }

                If ((Local2 != Local1))
                {
                    Local0 = ((^LEVL * Local2) / Local1)
                    Local3 = (Local2 << 0x10)
                    If ((Local2 > Local1))
                    {
                        ^LEVX = Local3
                        ^LEVL = Local0
                    }
                    Else
                    {
                        ^LEVL = Local0
                        ^LEVX = Local3
                    }
                }
            }
            ElseIf ((0x02 == Local3))
            {
                If ((Ones == Local2))
                {
                    If ((Ones != Match (Package (0x16)
                                    {
                                        0x0D26, 
                                        0x0A26, 
                                        0x0D22, 
                                        0x0412, 
                                        0x0416, 
                                        0x0A16, 
                                        0x0A1E, 
                                        0x0A1E, 
                                        0x0A2E, 
                                        0x041E, 
                                        0x041A, 
                                        0x0BD1, 
                                        0x0BD2, 
                                        0x0BD3, 
                                        0x1606, 
                                        0x160E, 
                                        0x1616, 
                                        0x161E, 
                                        0x1626, 
                                        0x1622, 
                                        0x1612, 
                                        0x162B
                                    }, MEQ, Local0, MTR, Zero, Zero)))
                    {
                        Local2 = 0x0AD9
                    }
                    ElseIf ((Ones != Match (Package (0x04)
                                    {
                                        0x3E9B, 
                                        0x3EA5, 
                                        0x3E92, 
                                        0x3E91
                                    }, MEQ, Local0, MTR, Zero, Zero)))
                    {
                        Local2 = 0xFFFF
                    }
                    Else
                    {
                        Local2 = 0x056C
                    }
                }

                If ((Zero == (0x02 & Local4)))
                {
                    Local5 = 0xC0000000
                    If (CondRefOf (\RMCF.LEVW))
                    {
                        If ((Ones != \RMCF.LEVW))
                        {
                            Local5 = \RMCF.LEVW /* External reference */
                        }
                    }

                    ^LEVW = Local5
                }

                If ((0x04 & Local4))
                {
                    If (CondRefOf (\RMCF.GRAN))
                    {
                        ^GRAN = \RMCF.GRAN /* External reference */
                    }
                    Else
                    {
                        ^GRAN = Zero
                    }
                }

                Local1 = (^LEVX >> 0x10)
                If (!Local1)
                {
                    Local1 = Local2
                }

                If ((Local2 != Local1))
                {
                    Local0 = ((((^LEVX & 0xFFFF) * Local2) / Local1) | 
                        (Local2 << 0x10))
                    ^LEVX = Local0
                }
            }

            If ((Local2 == 0x0710))
            {
                _UID = 0x0E
            }
            ElseIf ((Local2 == 0x0AD9))
            {
                _UID = 0x0F
            }
            ElseIf ((Local2 == 0x056C))
            {
                _UID = 0x10
            }
            ElseIf ((Local2 == 0x07A1))
            {
                _UID = 0x11
            }
            ElseIf ((Local2 == 0x1499))
            {
                _UID = 0x12
            }
            ElseIf ((Local2 == 0xFFFF))
            {
                _UID = 0x13
            }
            Else
            {
                _UID = 0x63
            }
        }
    }
}

 

Link to comment
Share on other sites

2 hours ago, markl18 said:

hi I have an error _SB._PCI0,IGPU namespace lookup failure can someone suggest something I put this


/*
 * Intel ACPI Component Architecture
 * AML/ASL+ Disassembler version 20200110 (64-bit version)
 * Copyright (c) 2000 - 2020 Intel Corporation
 * 
 * Disassembling to symbolic ASL+ operators
 *
 * Disassembly of iASLtCUpdO.aml, Fri Apr  3 12:08:41 2020
 *
 * Original Table Header:
 *     Signature        "SSDT"
 *     Length           0x00000404 (1028)
 *     Revision         0x02
 *     Checksum         0x84
 *     OEM ID           "hack"
 *     OEM Table ID     "_PNLF"
 *     OEM Revision     0x00000000 (0)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x20180427 (538444839)
 */
DefinitionBlock ("", "SSDT", 2, "hack", "_PNLF", 0x00000000)
{
    External (_SB_.PCI0.IGPU, DeviceObj)
    External (RMCF.BKLT, IntObj)
    External (RMCF.FBTP, IntObj)
    External (RMCF.GRAN, IntObj)
    External (RMCF.LEVW, IntObj)
    External (RMCF.LMAX, IntObj)

    Scope (_SB.PCI0.IGPU)
    {
        OperationRegion (RMP3, PCI_Config, Zero, 0x14)
    }

    Device (_SB.PCI0.IGPU.PNLF)
    {
        Name (_ADR, Zero)  // _ADR: Address
        Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
        Name (_CID, "backlight")  // _CID: Compatible ID
        Name (_UID, Zero)  // _UID: Unique ID
        Name (_STA, 0x0B)  // _STA: Status
        Field (^RMP3, AnyAcc, NoLock, Preserve)
        {
            Offset (0x02), 
            GDID,   16, 
            Offset (0x10), 
            BAR1,   32
        }

        OperationRegion (RMB1, SystemMemory, (BAR1 & 0xFFFFFFFFFFFFFFF0), 0x000E1184)
        Field (RMB1, AnyAcc, Lock, Preserve)
        {
            Offset (0x48250), 
            LEV2,   32, 
            LEVL,   32, 
            Offset (0x70040), 
            P0BL,   32, 
            Offset (0xC2000), 
            GRAN,   32, 
            Offset (0xC8250), 
            LEVW,   32, 
            LEVX,   32, 
            Offset (0xE1180), 
            PCHL,   32
        }

        Method (_INI, 0, NotSerialized)  // _INI: Initialize
        {
            Local4 = One
            If (CondRefOf (\RMCF.BKLT))
            {
                Local4 = \RMCF.BKLT /* External reference */
            }

            If ((Zero == (One & Local4)))
            {
                Return (Zero)
            }

            Local0 = ^GDID /* \_SB_.PCI0.IGPU.PNLF.GDID */
            Local2 = Ones
            If (CondRefOf (\RMCF.LMAX))
            {
                Local2 = \RMCF.LMAX /* External reference */
            }

            Local3 = Zero
            If (CondRefOf (\RMCF.FBTP))
            {
                Local3 = \RMCF.FBTP /* External reference */
            }

            If ((Zero == Local3))
            {
                If ((Ones != Match (Package (0x10)
                                {
                                    0x010B, 
                                    0x0102, 
                                    0x0106, 
                                    0x1106, 
                                    0x1601, 
                                    0x0116, 
                                    0x0126, 
                                    0x0112, 
                                    0x0122, 
                                    0x0152, 
                                    0x0156, 
                                    0x0162, 
                                    0x0166, 
                                    0x016A, 
                                    0x46, 
                                    0x42
                                }, MEQ, Local0, MTR, Zero, Zero)))
                {
                    Local3 = One
                }
                Else
                {
                    Local3 = 0x02
                }
            }

            If ((One == Local3))
            {
                If ((Ones == Local2))
                {
                    Local2 = 0x0710
                }

                Local1 = (^LEVX >> 0x10)
                If (!Local1)
                {
                    Local1 = Local2
                }

                If ((Local2 != Local1))
                {
                    Local0 = ((^LEVL * Local2) / Local1)
                    Local3 = (Local2 << 0x10)
                    If ((Local2 > Local1))
                    {
                        ^LEVX = Local3
                        ^LEVL = Local0
                    }
                    Else
                    {
                        ^LEVL = Local0
                        ^LEVX = Local3
                    }
                }
            }
            ElseIf ((0x02 == Local3))
            {
                If ((Ones == Local2))
                {
                    If ((Ones != Match (Package (0x16)
                                    {
                                        0x0D26, 
                                        0x0A26, 
                                        0x0D22, 
                                        0x0412, 
                                        0x0416, 
                                        0x0A16, 
                                        0x0A1E, 
                                        0x0A1E, 
                                        0x0A2E, 
                                        0x041E, 
                                        0x041A, 
                                        0x0BD1, 
                                        0x0BD2, 
                                        0x0BD3, 
                                        0x1606, 
                                        0x160E, 
                                        0x1616, 
                                        0x161E, 
                                        0x1626, 
                                        0x1622, 
                                        0x1612, 
                                        0x162B
                                    }, MEQ, Local0, MTR, Zero, Zero)))
                    {
                        Local2 = 0x0AD9
                    }
                    ElseIf ((Ones != Match (Package (0x04)
                                    {
                                        0x3E9B, 
                                        0x3EA5, 
                                        0x3E92, 
                                        0x3E91
                                    }, MEQ, Local0, MTR, Zero, Zero)))
                    {
                        Local2 = 0xFFFF
                    }
                    Else
                    {
                        Local2 = 0x056C
                    }
                }

                If ((Zero == (0x02 & Local4)))
                {
                    Local5 = 0xC0000000
                    If (CondRefOf (\RMCF.LEVW))
                    {
                        If ((Ones != \RMCF.LEVW))
                        {
                            Local5 = \RMCF.LEVW /* External reference */
                        }
                    }

                    ^LEVW = Local5
                }

                If ((0x04 & Local4))
                {
                    If (CondRefOf (\RMCF.GRAN))
                    {
                        ^GRAN = \RMCF.GRAN /* External reference */
                    }
                    Else
                    {
                        ^GRAN = Zero
                    }
                }

                Local1 = (^LEVX >> 0x10)
                If (!Local1)
                {
                    Local1 = Local2
                }

                If ((Local2 != Local1))
                {
                    Local0 = ((((^LEVX & 0xFFFF) * Local2) / Local1) | 
                        (Local2 << 0x10))
                    ^LEVX = Local0
                }
            }

            If ((Local2 == 0x0710))
            {
                _UID = 0x0E
            }
            ElseIf ((Local2 == 0x0AD9))
            {
                _UID = 0x0F
            }
            ElseIf ((Local2 == 0x056C))
            {
                _UID = 0x10
            }
            ElseIf ((Local2 == 0x07A1))
            {
                _UID = 0x11
            }
            ElseIf ((Local2 == 0x1499))
            {
                _UID = 0x12
            }
            ElseIf ((Local2 == 0xFFFF))
            {
                _UID = 0x13
            }
            Else
            {
                _UID = 0x63
            }
        }
    }
}

 

https://github.com/acidanthera/WhateverGreen/blob/master/Manual/SSDT-PNLF.dsl

  • Like 1
Link to comment
Share on other sites

yes I know about that one spociba no ymena esti eshe odin vopros rtc register interupt failed e00002be apparently it is a famous rtc kp does any one know how to recover and to my tovarish spocibo yes it is native russian written with english letters for those who are wondering that used to be my first language 

Link to comment
Share on other sites

Tonight I updated to latest commit 0.5.7 (2020-04-03) on the X299 build under Mojave 10.14.6, disabling EnableWriteUnprotector (since 'deprecated for modern systems') and variably trying to enable RebuildAppleMemoryMap and/or SyncRuntimePermissions (the Changelog suggests SyncRuntimePermissions is only for Linux booting on CFL+, while Configuration doc says for MacOS or Linux).

 

The ASUS X299 (using latest BIOS) would not boot until EnableWriteUnprotector was enabled and the two latest additions were disabled. From the Docs, it seems wrong to use EnableWriteUnprotector instead of RebuildAppleMemoryMap but no choice with the X299 build. Am I misunderstanding the Docs?

 

(Other settings for Quirks: enabled list = AvoidRuntimeDefrag, EnableSafeModeSlide, ProvideCustomSlide, EnableWriteUnprotector and SetupVirtualMap.)

Link to comment
Share on other sites

How to patch AppleXcpmCfgLock

I try without Quirks.

I try this not work

Base: _xcpm_idle
Comment: AppleXcpmCfgLock
Count: 0
Enabled: YES
Find: B9E20000 000F30
Identifier: kernel
Limit: 0
Mask: (LEAVE THIS EMPTY)
MatchKernel: 
Replace: B9E20000 009090
ReplaceMask: (LEAVE THIS EMPTY)
Skip: 0

Check your System data

 

sysctl -x  hw.cpufamily

sysctl -x  machdep.cpu.model

sysctl -x  machdep.xcpm.forced_idle_period

sysctl -x  machdep.xcpm.forced_idle_ratio

sysctl -x  machdep.xcpm.mode

sysctl -x  machdep.cpu.features

sysctl -x  hw.cputype

Edited by nmano
Link to comment
Share on other sites

_xcpm_bootstrap 10.15.4

I test X99 & X299.

If you Add XCPM bootstrap patch you have to Emulate Original CPU ID like this.

 

#Kernel->Emulate->Your CPU Original ID

 

 

#CPUID         0x050657  Cascade Lake-X

 

Cpuid1Data   <->  57060500 00000000 00000000 00000000

Cpuid1Mask  <->   FFFFFFFF 00000000 00000000 00000000

 

#Emulate         0x050654  Skylake-X/Skylake-H 0x0406E3

 

Cpuid1Data   <->  54060500 00000000 00000000 00000000

Cpuid1Mask  <->   FFFFFFFF 00000000 00000000 00000000

 

#Emulate         0x0306F2   Haswell-E/Haswell 0x0306C3

 

Cpuid1Data   <->  F2060300 00000000 00000000 00000000

Cpuid1Mask  <->   FFFFFFFF 00000000 00000000 00000000 

 

#Emulate         0x0406F1   Broadwell-E/Broadwell 0x0306D4

 

Cpuid1Data   <-> F1060400 00000000 00000000 00000000

Cpuid1Mask  <->  FFFFFFFF 00000000 00000000 00000000

Base: _xcpm_bootstrap
Comment: xcpm_bootstrap HASwell-E/Cascade Lake-X (c) Pike R. Alpha Modify By N.Mano
Count: 0
Enabled: YES
Find: 80C3C480 FB42
Identifier: kernel
Limit: 0
Mask: (LEAVE THIS EMPTY)
MatchKernel: 
Replace: 80C3C180 FB42
ReplaceMask: (LEAVE THIS EMPTY)
Skip: 0



Base: _xcpm_bootstrap
Comment: xcpm_bootstrap Skylake-X (c) Pike R. Alpha Modify By N.Mano
Count: 0
Enabled: YES
Find: 80C3C480 FB42
Identifier: kernel
Limit: 0
Mask: (LEAVE THIS EMPTY)
MatchKernel: 
Replace: 80C3BD80 FB42
ReplaceMask: (LEAVE THIS EMPTY)
Skip: 0

Base: _xcpm_bootstrap
Comment: xcpm_bootstrap Broadwell-E (c) Pike R. Alpha Modify By N.Mano
Count: 0
Enabled: YES
Find: 80C3C480 FB42
Identifier: kernel
Limit: 0
Mask: (LEAVE THIS EMPTY)
MatchKernel: 
Replace: 80C3BC80 FB42
ReplaceMask: (LEAVE THIS EMPTY)
Skip: 0

 

Edited by nmano
  • Thanks 2
Link to comment
Share on other sites

hi aparently I need to patch i2C I found this acpi: error [_sta] namespace lookup failiure which points to ssdt: i2C which after googling around led me to this file https://github.com/jsassu20/OpenCore-HotPatching-Guide

ssdt-I2c.dsl which doesnt compile

DefinitionBlock("", "SSDT", 2, "hack", "I2C-TPXX", 0)
{
    External(_SB.PCI0.I2C0, DeviceObj)
    External(TPDD, FieldUnitObj)
    External(TPDF, FieldUnitObj)
    
    Scope (\)
    {
        If (_OSI ("Darwin"))
        {
            TPDD = 3
        }
    }
    
    //path:_SB.PCI0.I2C0.TPAD
    Scope (_SB.PCI0.I2C0)
    {
        Device (TPXX)
        {
                Name (_ADR, One)  // _ADR: Address
                Name (_UID, One)  // _UID: Unique ID
                Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
                Name (HID2, Zero)
                Name (TPID, Package (0x04)
                {
                    Package (0x05)
                    {
                        0x10, 
                        0x15, 
                        One, 
                        "MSFT0002", 
                        "PNP0C50"
                    }, 

                    Package (0x05)
                    {
                        0x11, 
                        0x2C, 
                        0x20, 
                        "MSFT0004", 
                        "PNP0C50"
                    }, 

                    Package (0x05)
                    {
                        0xFE, 
                        0x2C, 
                        0x20, 
                        "MSFT0001", 
                        "PNP0C50"
                    }, 

                    Package (0x05)
                    {
                        0xFF, 
                        0xFF, 
                        0xFF, 
                        "MSFT0003", 
                        0x030FD041
                    }
                })
                Name (SBFB, ResourceTemplate ()
                {
                    I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
                        AddressingMode7Bit, "\\_SB.PCI0.I2C0",
                        0x00, ResourceConsumer, _Y4B, Exclusive,
                        )
                })
                Name (SBFI, ResourceTemplate ()
                {
                    Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, )
                    {
                        0x00000050,
                    }
                })
                Name (SBFG, ResourceTemplate ()
                {
                    GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000,
                        "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
                        )
                        {   // Pin list
                            0x0038
                        }
                })
                CreateWordField (SBFB, \_SB.PCI0.I2C0.TPXX._Y4B._ADR, ADR0)
                Method (_HID, 0, Serialized)
                {
                    If (~CondRefOf (TPDF))
                    {
                        Name (TPDF, 0xFE)
                    }

                    Switch (One)
                    {
                        Case (Zero)
                        {
                            TPDF = 0xFE
                        }
                        Case (One)
                        {
                        }
                        Default
                        {
                            TPDF = 0xFE
                        }

                    }

                    Return (TPDS (0x03, 0xFE, "MSFT0001"))
                }

                Method (_CID, 0, Serialized)  // _CID: Compatible ID
                {
                    If (~CondRefOf (TPDF))
                    {
                        Name (TPDF, 0xFE)
                    }

                    Switch (One)
                    {
                        Case (Zero)
                        {
                            TPDF = 0xFE
                        }
                        Case (One)
                        {
                        }
                        Default
                        {
                            TPDF = 0xFE
                        }

                    }

                    Return (TPDS (0x04, 0xFE, "PNP0C50"))
                }

                Method (TPDS, 3, NotSerialized)
                {
                    Local0 = Zero
                    Local1 = Zero
                    Local1 = DerefOf (DerefOf (TPID [Local0]) [Zero])
                    While (((Local1 != Arg1) && (Local1 != TPDF)))
                    {
                        Local0++
                        If ((Local0 >= SizeOf (TPID)))
                        {
                            Return (Arg2)
                        }

                        Local1 = DerefOf (DerefOf (TPID [Local0]) [Zero])
                    }

                    Return (DerefOf (DerefOf (TPID [Local0]) [Arg0]))
                }

                Method (_DSM, 4, NotSerialized)
                {
                    If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de")))
                    {
                        If ((Arg2 == Zero))
                        {
                            If ((Arg1 == One))
                            {
                                Return (Buffer (One)
                                {
                                     0x03                      
                                })
                            }
                            Else
                            {
                                Return (Buffer (One)
                                {
                                     0x00                      
                                })
                            }
                        }

                        If ((Arg2 == One))
                        {
                            Return (HID2)
                        }
                    }
                    Else
                    {
                        Return (Buffer (One)
                        {
                             0x00                         
                        })
                    }

                    If ((Arg0 == ToUUID ("ef87eb82-f951-46da-84ec-14871ac6f84b")))
                    {
                        If ((Arg2 == Zero))
                        {
                            If ((Arg1 == One))
                            {
                                Return (Buffer (One)
                                {
                                     0x03                              
                                })
                            }
                            Else
                            {
                                Return (Buffer (One)
                                {
                                     0x00                                       
                                })
                            }
                        }

                        If ((Arg2 == One))
                        {
                            Return (ConcatenateResTemplate (SBFB, SBFG))
                        }
                    }
                    Else
                    {
                        Return (Buffer (One)
                        {
                             0x00                                     
                        })
                    }

                    Return (Buffer (One)
                    {
                         0x00                                
                    })
                }

                Method (_STA, 0, Serialized)
                {
                    If (_OSI ("Darwin"))
                    {
                        Return (0x0F)
                    }
                    Else
                    {
                        Return (Zero)
                    }
                }

                Method (_CRS, 0, Serialized)
                {
                    Local0 = Zero
                    Local1 = Zero
                    Local1 = DerefOf (DerefOf (TPID [Local0]) [Zero])
                    While (((Local1 != 0xFE) && (Local1 != TPDF)))
                    {
                        Local0++
                        If ((Local0 >= SizeOf (TPID)))
                        {
                            Break
                        }

                        Local1 = DerefOf (DerefOf (TPID [Local0]) [Zero])
                    }

                    ADR0 = DerefOf (DerefOf (TPID [Local0]) [One])
                    HID2 = DerefOf (DerefOf (TPID [Local0]) [0x02])

                    //Return (ConcatenateResTemplate (SBFB, SBFG))
                    Return (ConcatenateResTemplate (SBFB, SBFI))
                }
        }
    }
}

but it doesnt compile giving me these errors 

9, 4096, syntax error, unexpected PARSEOP_IF

can you explain or tell me what to do is there some code I have to put in to plist or something

IMG-1255.jpg

Edited by markl18
Link to comment
Share on other sites

Guys, what is your boot time on Catalina 10.15.4? With every new commit, my boot time just increasing and I don't get it why? Don't get any error, everything works great, but boot time really annoying. 20sec boot time now being 50sec. Super fast OpenCore now turned to super slow OpenCore :P I don't know what will happen when I update to with new commit tomorrow. I'm afraid to update OpenCore anymore. :no:

  • Like 1
Link to comment
Share on other sites

×
×
  • Create New...