Contribute
Register

Laptop Internal 4K Display Not Working

Joined
Apr 16, 2020
Messages
14
Motherboard
hp spectre x360
CPU
i7-1065G7
Graphics
intel iris plus
Mac
  1. MacBook
Mobile Phone
  1. iOS
Hello,

I Have a HP Spectre X360 2020
CPU: 1065G7
RAM: 16GB
GPU: Intel Iris Plus G7 Graphics
Display: 13.3" diagonal 4K UWVA BrightView micro-edge AMOLED multitouch (3840 x 2160)

I'm using the OpenCore 0.6.2 config built using Dortania's guide.

I've tried to boot with empty framebuffer and Internal will work, but with laggy graphics and no back light adjustment.
Later I use IceLake's framebuffer patch -igfxcdc -igfxdvmt in boot-args.
I got external monitor work but the internal display won't show anything!
And hackintool just showing external display.
I tried to extract EDID from empty framebuffer macOS then get nothing.

Later I used windows to extract EDID then I get full 128 bytes of EDID but without display's serial number.
I tried inject EDID extracted from windows, but internal display still didn't work.
But hackintool had show the display EDID that I inject.

I don't really know what can I try to resolve this problem.
Can someone help!!

Sorry for my poor English.....
 

Attachments

  • photo_2020-10-27 20.45.49.jpeg
    photo_2020-10-27 20.45.49.jpeg
    124.1 KB · Views: 161
  • スクリーンショット 2020-10-27 20.46.39.png
    スクリーンショット 2020-10-27 20.46.39.png
    232.1 KB · Views: 167
  • スクリーンショット 2020-10-27 21.17.10.png
    スクリーンショット 2020-10-27 21.17.10.png
    288.8 KB · Views: 172

P1LGRIM

Moderator
Joined
Mar 2, 2012
Messages
25,338
Motherboard
Lenovo ThinkStation p700
CPU
2x E5-2620 V3
Graphics
RX 560
Mac
  1. MacBook Pro
  2. Mac mini
Classic Mac
  1. Power Mac
Mobile Phone
  1. iOS

Not a Desktop - Moved to Laptop Support.
 
Joined
Sep 22, 2015
Messages
244
Motherboard
Lenovo Yoga C940
CPU
i7-9750H
Graphics
UHD 630
Mac
  1. MacBook
Mobile Phone
  1. Android
My last post here was deleted, so it looks like, it's not allowed to share code informations here.
So the code tag behind the quote option should be deleted.

Whatevergreens -cdfon pixel clock patch won't work under big sur.

You'll need to research on the internet for a edid patch that limit the panel to 48hz.
This is the only way to get it working.

I posted this script here, but it was deleted so I think this is a disappointment.

So last try, I want to help you:

Python:
# Get and modify laptop 4k display edid for big sur
from subprocess import check_output
from base64 import b64encode
edid = check_output('cat /Users/dan/Documents/edid | grep -i "IODisplayEDID"',
                    shell=True, encoding='utf-8')
edid = edid.split('<')[1].split('>')[0]
print('Display EDID:', edid)
edid = edid[:108] + 'a6a6' + edid[112:] # set refresh rate to 48Hz
data = [int(edid[i:i+2], 16) for i in range(0, len(edid), 2)]
checksum = hex(256 - sum(data[:-1]) % 256)[2:]
print('Modified EDID:', edid[:-2] + checksum)
data[-1] = int(checksum, 16)
print('data:', b64encode(bytes(data)).decode('utf-8'))
print('you need to add data to PciRoot(0x0)/Pci(0x2,0x0)>AAPL00,override-no-connect')


Better way is to dump edid from linux like opensuse kde live with xrandr --props
Create a file that contain this with your edid values and run the script under macos
Note edit also the path to the file in that script.

Python:
"IODisplayEDID" = <00ffffffffffff0006af2b23000000001c1b0104a51d117802ee95a3544c99260f50540000000101010101010101010101010101010152d000a0f0703e803020350025a5100000180000000f0000000000000000000000000020000000fe0041554f0a202020202020202020000000fe00423133335a414e30322e33200a00f2>
 
Last edited:
Joined
Apr 16, 2020
Messages
14
Motherboard
hp spectre x360
CPU
i7-1065G7
Graphics
intel iris plus
Mac
  1. MacBook
Mobile Phone
  1. iOS
This problem happens in Catalina too!
I had never made this internal display work!

Dump EDID from Linux with xrandr --props gave me 256 byte EDID.
The first 128 bytes are identical to the EDID that i get in windows!

I have done the 48Hz patch but still no luck for internal display.

Thanks for helping!
 
Joined
Dec 9, 2018
Messages
85
Motherboard
Dell Inspiron 3793
CPU
I7 1065
Graphics
G7
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Classic Mac
  1. Performa
  2. Power Mac
  3. PowerBook
Mobile Phone
  1. iOS
why is your processor showing like a i5 ?
if you show your EFI someone could throw an eye and maybe help you better ?
 
Joined
Apr 16, 2020
Messages
14
Motherboard
hp spectre x360
CPU
i7-1065G7
Graphics
intel iris plus
Mac
  1. MacBook
Mobile Phone
  1. iOS
why is your processor showing like a i5 ?
if you show your EFI someone could throw an eye and maybe help you better ?
I don't know. I updated OpenCore to 0.6.2 then it turn into i5!

I have a Ryzen hackintosh also really weird.
OC 0.6.0 shows i5, but OC 0.6.2 shows Xeon W.......

Here is my EFI folder!
 

Attachments

  • EFI.zip
    2.8 MB · Views: 100
Joined
Aug 25, 2020
Messages
27
Motherboard
Hasee KingBook X57S1
CPU
i7-1065G7
Graphics
Iris Graphics G7
Mobile Phone
  1. iOS
This problem happens in Catalina too!

4k displays are mess on Ice Lake laptops currently. By googling - you will find many topics in other hackintosh forums. Example: this dell xps. You can check their repository and check their workarounds, that might help you too, but it's still the problem.
 
Joined
Aug 17, 2016
Messages
96
Motherboard
MSI GS73VR 7RF
CPU
i7 7700hq
Graphics
Nvidia GTX1060 6gb
Mobile Phone
  1. Android
This problem happens in Catalina too!
I had never made this internal display work!

Dump EDID from Linux with xrandr --props gave me 256 byte EDID.
The first 128 bytes are identical to the EDID that i get in windows!

I have done the 48Hz patch but still no luck for internal display.

Thanks for helping!
could you explain how have you converted the EDID?
 
Joined
Sep 22, 2015
Messages
244
Motherboard
Lenovo Yoga C940
CPU
i7-9750H
Graphics
UHD 630
Mac
  1. MacBook
Mobile Phone
  1. Android
You need to create a file which contain your edid which you extract from linux with xrandr --props

You'll get something like this:
Code:
00ffffffffffff0006af2b23000000001c1b0104a51d117802ee95a3544c99260f50540000000101010101010101010101010101010152d000a0f0703e803020350025a5100000180000000f0000000000000000000000000020000000fe0041554f0a202020202020202020000000fe00423133335a414e30322e33200a00f2

You create a file where you replace this with your edid.

edid.txt

Code:
"IODisplayEDID" = <00ffffffffffff0006af2b23000000001c1b0104a51d117802ee95a3544c99260f50540000000101010101010101010101010101010152d000a0f0703e803020350025a5100000180000000f0000000000000000000000000020000000fe0041554f0a202020202020202020000000fe00423133335a414e30322e33200a00f2>

Then you create file script.py with this content and change the path to your edid.txt path!

edid = check_output('cat /Users/dan/Documents/edid | grep -i "IODisplayEDID"',


Code:
# Get and modify laptop 4k display edid for big sur
from subprocess import check_output
from base64 import b64encode
edid = check_output('cat /Users/dan/Documents/edid | grep -i "IODisplayEDID"',
                    shell=True, encoding='utf-8')
edid = edid.split('<')[1].split('>')[0]
print('Display EDID:', edid)
edid = edid[:108] + 'a6a6' + edid[112:] # set refresh rate to 48Hz
data = [int(edid[i:i+2], 16) for i in range(0, len(edid), 2)]
checksum = hex(256 - sum(data[:-1]) % 256)[2:]
print('Modified EDID:', edid[:-2] + checksum)
data[-1] = int(checksum, 16)
print('data:', b64encode(bytes(data)).decode('utf-8'))
print('you need to add data to PciRoot(0x0)/Pci(0x2,0x0)>AAPL00,override-no-connect')


to run the command open terminal python3 /path/to/script.py

best regards
 
Joined
Jul 13, 2016
Messages
2,894
Motherboard
Gigabyte Z370 Gaming 5
CPU
I9 9900k
Graphics
Vega 64
Mac
  1. Mac mini
  2. Mac Pro
Mobile Phone
  1. iOS
OC 0.6.0 shows i5, but OC 0.6.2 shows Xeon W.......

Your posts is a little old but if you care you can Remove the processor type number in your platform information and that should correct the processor shown.
 
Top