Jump to content
8755 posts in this topic

Recommended Posts

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.

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

 

 

 

 

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

 

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

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 

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

17 hours ago, markl18 said:

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

```
\ is used to specify root path.
_ is part of the symbol name.
```
check

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

_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

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

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

@telepati well, OpenCore itself surely does not take 20 seconds to fulfill its own tasks out of the sudden, so this must be kernel time... OC can barely even influence this. Please roll back to older versions and check whether boot times actually decrease.

  • Like 1
On 4/2/2020 at 4:29 PM, Morpheus NS said:

I have working Clover installation, but I am trying to get Opencore (0.5.6) working with my setup. But there is a problem, I get a very non-descriptive kernel panic if I try to boot without Cpuid1Mask and Cpuid1Data (Clover somehow works without it):

 

IMG_0189.png.c9daa06f91ac8780dfa87ec82e3d8172.png

 

If I try any FakeCPUID, the only thing I get is a black screen after boot picker.

 

Am I doing the FakeCPUID wrong?

For example, if I try FakeCPUID 0x0306A0 that would be:

A0060300 00000000 00000000 00000000

FFFFFFFF 00000000 00000000 00000000 ?

 

This is my config:

config.plist

 

Any ideas/suggestions? Thanks in advance.

 

Your black screen problem might be related to VBoxHfs.efi, takes time to kick in.(15-20s) I'd recommend switching to HfsPlus.efi, try from OcBinaryData(which gives me black screen, but might work for you), or try mine. You might also find helpful info here.

CPU.png.52b0455b52e946a0fecd599d968735af.png

HfsPlus.efi.zip

  • Like 2
2 hours ago, hardcorehenry said:

Your black screen problem might be related to VBoxHfs.efi, takes time to kick in.(15-20s) I'd recommend switching to HfsPlus.efi, try from OcBinaryData(which gives me black screen, but might work for you), or try mine. You might also find helpful info here.

 

HfsPlus.efi.zip

 

OK, I've now tested every possible scenario (I think)...

 

 

1. Your HfsPlus.efi and VBoxHfs.efi give me exactly the same results:

a) no FakeCPUID - boot picker - choice of partition - kernel panic from the picture below

b) with ANY FakeCPUID (most of the time 0x0306A0 and 0x0106E0 (which is the only one that ever worked for me), but others too) - boot picker - choice of partition - black screen no matter how much time I wait

 

2. HfsPlus.efi that I was using previously (from OCBuilder, much larger in size):

a) with OR without FakeCPUID it gives me my motherboard logo on a dark background and nothing else, no picker

 

This is the kernel panic I get with your HfsPlus.efi and VBoxfs.efi without FakeCPUID:

151582818_Screenshot2020-04-05at15_02_55.thumb.png.b676a261e9ec9f13621c85afcc6181b4.png

 

I've included bootstrap and AVX patch from the link you provided, tested with and without them but nothing changes. This is the current version of my config.plist, I switched to OpenCore 0.5.7: config.plist (I enable/disable patches depending on whether I use FakeCPUID or not, but I tried othe combinations as well).

 

Everything works with Clover, even Power Management is fine without FakeCPUID

 

1628784496_Screenshot2020-04-05at15_15_45.thumb.png.b262cc9fc7f84e765697e4312f1ca4a3.png

Edited by Morpheus NS
additional info
  • Like 1
×
×
  • Create New...