Contribute
Register

Laptop screen goes blank when plugging in external monitor.

Status
Not open for further replies.
i know i gave you my problem reporting files already but i try again :lol:

is my ssdt-script correct? or am i doing sth wrong (it didnt do anything)

(yes I know USB is not configured, yes I know USB-wifi not recommendet)

i think seinfeld4u and mine problem reporting files should (almost) be the same
 

Attachments

  • CLOVER.zip
    2.1 MB · Views: 83
  • command.txt
    4 KB · Views: 173
  • ioregcopy.zip
    970.3 KB · Views: 80
  • RehabMan.zip
    46.4 KB · Views: 84
  • ioJonesNoHdmi.zip
    1.4 MB · Views: 77
  • ioJonesWithHdmi.zip
    1.4 MB · Views: 74
i know i gave you my problem reporting files already but i try again :lol:

is my ssdt-script correct? or am i doing sth wrong (it didnt do anything)

(yes I know USB is not configured, yes I know USB-wifi not recommendet)

i think seinfeld4u and mine problem reporting files should (almost) be the same

You should try setting correct connector-type for each framebuffer connector.
It will require appropriate ACPI/_DSM injections...
 
You should try setting correct connector-type for each framebuffer connector.
It will require appropriate ACPI/_DSM injections...
When i ioreg with hdmi plugged in it shows connector 1 and 3 connected. Did you read my post an code snipped in prev posts? It explains behaviour and what i did
 
When i ioreg with hdmi plugged in it shows connector 1 and 3 connected. Did you read my post an code snipped in prev posts? It explains behaviour and what i did

I see no attempt in your files to inject the properties necessary to set correct connector-type values...
 
I re
I see no attempt in your files to inject the properties necessary to set correct connector-type values...
I removed ssdt from clover. Did not work. Look at code snippet in posts before. Correct attempt?
 
I re

I removed ssdt from clover. Did not work. Look at code snippet in posts before. Correct attempt?

LVDS is <02 00 00 00>

But I'm not sure what hardware you actually have... your profile and signature are providing conflicting details (Profile says Nvidia only, and signature says Nvidia + Intel).
 
LVDS is <02 00 00 00>

But I'm not sure what hardware you actually have... your profile and signature are providing conflicting details (Profile says Nvidia only, and signature says Nvidia + Intel).

Nvidia only. Intel was there in previous models but switched off by factory. Not even bios settings
 
Nvidia only. Intel was there in previous models but switched off by factory. Not even bios settings

Please fix the incorrect/misleading info in your signature.
 
ok, tried again

was trying this SSDT code because in IOJones i see that i have displays at C@2 with HDMI plugged and D@3 with DP plugged in

can i use this as reference for connector types?

https://pikeralpha.wordpress.com/2013/06/27/appleintelframebufferazul-kext/

new problem reporting files attached with HDMI plugged in

Code:
// Add HDMI audio support for Nvidia device at _SB.PCI0.PEG0.GFX0 (PEGP renamed to GFX0 by config.plist)
DefinitionBlock("", "SSDT", 2, "hack", "NV", 0)
{
    External(\_SB.PCI0.PEG0, DeviceObj)
    External(\_SB.PCI0.PEG0.GFX0, DeviceObj)

    Scope(\_SB.PCI0.PEG0)
    {
        Scope(GFX0)
        {
            Name(_SUN, 1)
            Method(_DSM, 4)
            {
                If (!Arg2) { Return (Buffer() { 0x03 } ) }
                Return (Package()
                {
                    "hda-gfx", Buffer() { "onboard-2" },
                    "@0,connector-type", Buffer() { 0x02, 0x00, 0x00, 0x00 }, //LVDS
                    "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 }, //HDMI
                    "@3,connector-type", Buffer() { 0x04, 0x00, 0x00, 0x00 }, //DP
                    #if 0
                    "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },
                    "@4,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },
                    "@5,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },
                    #endif
                })
            }
        }
        Device(HDAU)
        {
            Name(_ADR, 1)
            Method(_DSM, 4)
            {
                If (!Arg2) { Return (Buffer() { 0x03 } ) }
                Return (Package()
                {
                    "hda-gfx", Buffer() { "onboard-2" },
                    "layout-id", Buffer() { 1, 0, 0, 0 },
                })
            }
        }
    }
}
 

Attachments

  • CLOVER.zip
    2.1 MB · Views: 78
  • command.txt
    4 KB · Views: 133
  • ioreg.zip
    976.6 KB · Views: 79
  • ioJonesWithHdmi.zip
    1.4 MB · Views: 67
  • RehabMan.zip
    46.7 KB · Views: 70
ok, tried again

was trying this SSDT code because in IOJones i see that i have displays at C@2 with HDMI plugged and D@3 with DP plugged in

can i use this as reference for connector types?

https://pikeralpha.wordpress.com/2013/06/27/appleintelframebufferazul-kext/

new problem reporting files attached with HDMI plugged in

Code:
// Add HDMI audio support for Nvidia device at _SB.PCI0.PEG0.GFX0 (PEGP renamed to GFX0 by config.plist)
DefinitionBlock("", "SSDT", 2, "hack", "NV", 0)
{
    External(\_SB.PCI0.PEG0, DeviceObj)
    External(\_SB.PCI0.PEG0.GFX0, DeviceObj)

    Scope(\_SB.PCI0.PEG0)
    {
        Scope(GFX0)
        {
            Name(_SUN, 1)
            Method(_DSM, 4)
            {
                If (!Arg2) { Return (Buffer() { 0x03 } ) }
                Return (Package()
                {
                    "hda-gfx", Buffer() { "onboard-2" },
                    "@0,connector-type", Buffer() { 0x02, 0x00, 0x00, 0x00 }, //LVDS
                    "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 }, //HDMI
                    "@3,connector-type", Buffer() { 0x04, 0x00, 0x00, 0x00 }, //DP
                    #if 0
                    "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },
                    "@4,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },
                    "@5,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },
                    #endif
                })
            }
        }
        Device(HDAU)
        {
            Name(_ADR, 1)
            Method(_DSM, 4)
            {
                If (!Arg2) { Return (Buffer() { 0x03 } ) }
                Return (Package()
                {
                    "hda-gfx", Buffer() { "onboard-2" },
                    "layout-id", Buffer() { 1, 0, 0, 0 },
                })
            }
        }
    }
}

Your ACPI configuration is wrong. Injections via _DSM are not working.
First problem:
- SSDT.aml and SSDT-1.aml have duplicate content. Remove one of them.

Second problem (after you fix that):
- disassembly of your patchmatic output shows duplicate _DSM (iasl -da -dl *.aml)
- look at SSDT-4.aml in your patchmatic output, search for 'Method (_DSM'... you will find a duplicate _DSM at _SB.PCI0.PEG0.GFX0._DSM (same path as you're trying to inject a _DSM into).
- result: your SSDT-2.aml content in ACPI/patched is ignored
Solution: Use _DSM->XDSM patch

FYI: Bad practice to use names such as SSDT-2.aml for add-on SSDTs. Use meaningful names, such as SSDT-Nvidia.aml or SSDT-GFX0.
 
Status
Not open for further replies.
Back
Top