Lenovo E420 HD 3000 black screen (Framebuffer patching?)

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
Hello!

I have been struggling with this since 2014, and although this old laptop is no longer my main computer, I never figured out why it doesn't work while it SHOULD, and it's driving me nuts. =(
Model: Lenovo Thinkpad E420
Motherboard: 1141BTF
CPU: Intel Core i3-2540m (Sandy Bridge - 2nd Gen) 1366x768
Graphics: Intel HD 3000 Graphics (6-series)
RAM: 2 x 4 GB
OS: High Sierra (Same problem since... Mavericks? Lol. I started with Chimera at the time, then Clover, then OpenCore as of now)
OpenCore 0.6.4-DEBUG
SMBIOS: MacbookPro8,1
boot-args -v keepsyms=1 debug=0x100 alcid=1

macOS is bootable with device-id <00000000> which disable the HD 3000 iGPU, however stuck @ 1024x768 with no QE/CI. If we remove the line, we get a black screen on boot on the internal display or any other option (Laptop has VGA and HDMI. I only care for the internal display by now lol). However, we are able to TeamViewer inside the OS and we can see that the system is functional at full resolution 1366x768 (It's glitch but not sure if it's the old laptop and/or TeamViewer on Android - Using Clover back then, TeamViewer was fluid).

Using TeamViewer, I managed to dump a log of IOREG and "System Informations" at full resolution and attached it here hoping this may help troubleshooting.
Pretty sure the solution is related to WhateverGreen framebuffer patching ( https://github.com/acidanthera/What...-hd-graphics-20003000-sandy-bridge-processors ) and/or patching bus IDs ( https://dortania.github.io/OpenCore...l-patching/busid.html#parsing-the-framebuffer ) but try as I might, I never pulled it off since years =(

Apparently, someone actually succeeded as he provided his SSDT ( https://dsdt-database.monster/thinkpad-edge-e420-opencore/ ) . No use without a functional Config.plist however huh.

Appreciate the help,
Regards
 

Attachments

  • IOREG.zip
    674.9 KB · Views: 3

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,259
Post a copy of the OpenCore EFI you are using for this Sandy Bridge system, so we can see what you are using.

Which version of macOS are running on this system?
Which version of OpenCore are you using?

I assume you know support was dropped for the HD3000 when Mojave was released.

If you are using a newer version of macOS then you need to be using a Legacy Graphics Patcher created by Chris1111 - https://github.com/chris1111/Fix-Graphics-HD-3000-Mojave-10.14
 

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
Post a copy of the OpenCore EFI you are using for this Sandy Bridge system, so we can see what you are using.

Which version of macOS are running on this system?
Which version of OpenCore are you using?

I assume you know support was dropped for the HD3000 when Mojave was released.

If you are using a newer version of macOS then you need to be using a Legacy Graphics Patcher created by Chris1111 - https://github.com/chris1111/Fix-Graphics-HD-3000-Mojave-10.14

Hello :)

I attached my EFI.

As soon as we remove: DeviceProperties --> Add --> PciRoot(0x0)/Pci(0x2,0x0) --> device-id <00000000> , this is when the black screen happens (On all displays. I only care for internal screen for now). However the system doesn't kernel panic as we can access it via TeamViewer in full-resolution.

I use OpenCore-0.6.4-DEBUG. I installed it in January 2021, so obviously it's long outdated by now. And using macOS High Sierra 10.13.6 - Aware it's unsupported (so does Mojave) and it's also the latest version officially supported by HD 3000 (As I said, it's no longer my main computer, I installed Monterey on my AMD in my signature).

It's a long-term challenge that has never been resolved for me, wish I understood at least what's going on (Should work but doesn't lol) :(

Last year, I forcefully installed Big Sur on this laptop using a different SMBIOS MacBookPro11,2 (Haswell(HQ) haha). It ran like crap and fan was spinning like crazy haha understandably, and again, I had to put device-id <00000000> to skip the black screen and disable HD 3000 on purpose, making the system even slower haha.

Figured I'll get High Sierra up and running first, then and only if I succeed I could experiment with Legacy Graphics Patcher later on.

Thank you for your help :)
 

Attachments

  • EFI.zip
    35.6 MB · Views: 11

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,259
Here is a revised OC EFI for your Lenovo laptop.
  • It has been created using OpenCore 0.7.6 and by following the Sandy Bridge Laptop guide.
  • I changed the SMBIOS to MacBookPro8,1 to better match your 2-core CPU.
  • I added two IGPU framebuffer patches, and removed the device-id patch. (try it!)
  • I added a number of ACPI patches for USB and other devices.
  • I changed and removed some of the SSDT's in the /OC/ACPI folder.
  • I have updated the kexts in the /OC/Kexts folder.
I used the Specifications for your system based on this page - https://support.lenovo.com/ec/en/solutions/pd015731

Your laptop uses the Conexant 20671 codec for built-in Audio. This is not a codec that is included in the AppleALC.kext setup. But there are a couple that are similar. The config.plist uses alcid=11 boot argument for Audio, this may need to be changed to 13.

Copy this EFI folder to a spare USB pen drive's EFI partition, along with the OC legacy Boot file.

Make sure you ClearNvram and reboot the system BEFORE you boot from the USB. If you don't see the ClearNvram tool press the 'Spacebar' when on the OC GUI boot screen. This will display the tools etc.

Post a photo of the Verbose text if the system Kernel Panic's, so I can see what caused the KP.
 

Attachments

  • EFI-0.7.6-Legacy.zip
    11.3 MB · Views: 14

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
Huh wow - Thank you for the effort and detailed reply!
It includes the OpenCanopy GUI too hehe nice, I was working on it yesterday but was unsuccessful because of the old OpenCore version (It can easily be done tho I probably missed something, I got it working on my other AMD system). :)

I actually forgot to clear the NVRAM and unfortunately KP very quickly (it's a work-in-progress after all).



Then I shutdown, removed USB, cleared NVRAM (just to be clear, from the original OpenCore on the SSD, mine without a GUI), inserted USB, rebooted into the USB (Yours with OpenCanopy GUI) and booted the installer, got KP again, I think it's the same message.



Thank you!
 

Attachments

  • 20220110_130006.jpg
    20220110_130006.jpg
    2.8 MB · Views: 2

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,259
KP - Intel CPU Power Management issue.

Have you created a custom SSDT.aml for CPU power management for your Lenovo laptop?
 

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
No, I just followed the OpenCore guides at the time, using prebuilt required SSDT but I never customized any of these tbh.
 

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,259
I meant a custom SSDT.aml from following PikerA's power management method, for Pre-Haswell CPU's - # Sandy and Ivy Bridge Power Management

I have made a couple of edits to the config.plist, see if this v2 folder works any better and gets past that KP.
 

Attachments

  • EFI-0.7.6-Legacy-v2.zip
    11.3 MB · Views: 20

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
I meant a custom SSDT.aml from following PikerA's power management method, for Pre-Haswell CPU's - # Sandy and Ivy Bridge Power Management

I have made a couple of edits to the config.plist, see if this v2 folder works any better and gets past that KP.
Sorry - I think I did those patches, considering before your reply I checked and ACPI -> Delete entries were indeed "Enabled" different than yours. That would have been ~ a year ago by now o_O

But the good thing is, I actually did not forgot to clear NVRAM on first boot this time, and then booted from USB next, and now we don't have KP :) However, we still have the blackscreen lol.

Attached is a photo of the verbose JUST before the black screen:


Here's a video of the full boot too, just-in-case (Slow - Obviously plist is on USB so) : https://mega.nz/file/BA42VRYA#9IbueeMaojb1AMMsEHflQBY05srYMwpi74LMk4QIHAE

From my Android, I saw that TeamViewer is showing Monterey connected/green, when I clicked it says "Unable to connect" lol, and minutes later says it was offline (FYI the Wi-Fi never worked on this laptop, I think it might be impossible as per SPECs (Unless I used a USB WiFi drive) so I have to use wired Internet, which I did in this case, I have TeamViewer autostart with autologin). I wouldn't worry too much as sometimes TeamViewer just doesn't log me in automatically for some reason (Would NVRAM wiping also wipe credentials? Idk).

If this help, last time I tried it (not on this plist but on my past attempts yesterday), using TeamViewer I was able to access the monitor settings and manually increase/lower the brightness, noticing the brightness was maxed out and not at the minimum (Changing brightness with the GUI slider worked, but the keyboard function keys never did, no biggie for now).

Oh, also attaching an HDMI display after the black screen has no effect (Well, unless you count a 1px white line that flashed on the laptop display and dissapeared right after connection. Unplugged the display, replugged it, and couldn't replicate the line. Nothing of interest much). Other than HDMI, this laptop has VGA but that's it, no DP or anything else (Aware VGA is unsupported I think).
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
On your GPU device properties try setting the following,

AAPL,snb-platform-id = 00000200
device-id = 16010000

Both values should be set to Data. Along with MacBookPro8,1 SMBios.
 

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
On your GPU device properties try setting the following,

AAPL,snb-platform-id = 00000200
device-id = 16010000

Both values should be set to Data. Along with MacBookPro8,1 SMBios.
Thank you. Keeping the previous plist untouched, I modified the 2 values per instructed.

1641855014073.png

SMBIOS is also correct:

1641855108040.png

Cleared NVRAM from disk and booted from USB again, with no external display attached.

So we got the black screen again at the same time in the verbose, but now the display FADE (as it should) to black instead of crashing to black. Here's a video: https://www.dropbox.com/s/eivx48j4b0sjqmk/20220110_174004.mp4?dl=0

For comparison purpose, here's the old boot before: https://mega.nz/file/BA42VRYA#9IbueeMaojb1AMMsEHflQBY05srYMwpi74LMk4QIHAE

I changed device-id back to 00000000 and got into the system @ 1024x768 resolution, figured TeamViewer was being dumb again and wasn't logged in to my account and logged myself in. Also noticed battery indicator is working, audio is not (no audio device whatever's) - no big deal, not the priority ATM and off-topic (I'm sure I could pull it off with some time, with Clover I succeeded. FYI, Lenovo SPECs says Conexant 20671 but Linux cat /proc/asound/card0/codec#0 | less return Conexant CX20590 (just tried it again) :) I tried all the alcid bootargs yesterday and no one worked lol)
Anyway got TeamViewer fixed, then changed the device-id back to 16010000, rebooted and black screen but TeamViewer was definitely working and viewable this time @ 1366c768 still. HD 3000 report 512 MB too instead of 4 MB (TeamViewer laggy and glitchy still but idk, High Sierra TeamViewer is outdated anyway and using it on an Android phone too).

Also played with the brightness slider again, confirming that the screen brightness is maxed out indeed and not at zero.

Hope this helps!
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
Ok after a bit more research the device ID is correct in my previous message. The Platform should be 00010000. Assuming you've got Whatevergreen also add these boot args, igfxonln=1 agdpmod=vit9696

I've never done an Intel build before so this is a bit outside my wheelhouse. You may get a more detailed response on InsanelyMac.com

Just noticed there's information for the HD 3000 series on the WEG FAQ, https://github.com/acidanthera/What...-hd-graphics-20003000-sandy-bridge-processors
 
Last edited:

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
Ok after a bit more research the device ID is correct in my previous message. The Platform should be 00010000. Assuming you've got Whatevergreen also add these boot args, igfxonln=1 agdpmod=vit9696

I've never done an Intel build before so this is a bit outside my wheelhouse. You may get a more detailed response on InsanelyMac.com

Just noticed there's information for the HD 3000 series on the WEG FAQ, https://github.com/acidanthera/What...-hd-graphics-20003000-sandy-bridge-processors

Resetted NVRAM, tried just the PlatformID changed to 00010000, still black screen. Keeping the PlatformID as 00010000 and adding the 2 extra bootargs, black screen as well.

Did saw the link couple of days ago, pretty sure it's the solution, but it's super technical, I tried but I feel like I'm guessing more than I should :(
Could this be related to BusID patching perhaps? https://dortania.github.io/OpenCore-Post-Install/gpu-patching/intel-patching/busid.html
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
Specifying the Framebuffer isn't required from what I can see assuming you're using a Sandy-Bridge SMBios. Device ID is indeed correct 0x0106 (It's flipped in the config). Again MacBookPro8,1 seems to be the best fit here I think as it uses a i7-2620M.

BusID patching might help but it's way beyond me lol
 

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
Specifying the Framebuffer isn't required from what I can see assuming you're using a Sandy-Bridge SMBios. Device ID is indeed correct 0x0106 (It's flipped in the config). Again MacBookPro8,1 seems to be the best fit here I think as it uses a i7-2620M.

BusID patching might help but it's way beyond me lol

Correct yes, I think most people use MacBookPro8,1 as well on this computer (I followed multiple threads over the years since 2013 with this laptop, but no definitive success lol, unless you count this one, which doesn't provide a config.plist (And SSDT-PM.aml is missing from download link wtf). https://dsdt-database.monster/thinkpad-edge-e420-opencore/

Interesting fact is that this laptop CPU can be upgraded, I had i3-2350M and upgraded to i5-2540M like 4 years ago (The best compatible i5). i7-2620M is apparently compatible as well and is the most performant option just above i5-2540M (Didn't bought it because the price was over 100$ even thought this CPU is long obsolete by today's standard, according to CPU-Benchmark the increase in performance was very minimal compared to my i5 lol).

Just for the lol, here's the chart

1641861046724.png
 
Last edited:

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
Are you using SSDT-PNLF.aml from that download? It would seem it's from part of the Dortania Guide,

OEM ID "DRTNIA"
 

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
Are you using SSDT-PNLF.aml from that download? It would seem it's from part of the Dortania Guide,

OEM ID "DRTNIA"
Ah nice spotting.
I didn't used it as I thought best to trust Edhawk on his EFI, since he already included a SSDT-PNLF.aml himself.
Just tried backing up the original config.plist and original SSDT-PNLF.aml, replacing the SSDT, ProperTree OC Clean Snapshot just-in-case, save, reset NVRAM, boot from USB, black screen again.

Here's a video close to the black screen itself.
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
Looks like Lilu + WEG are having some issues. Are you using the latest versions?
 

Attachments

  • Screenshot 2022-01-11 at 01.16.31.png
    Screenshot 2022-01-11 at 01.16.31.png
    192.9 KB · Views: 5

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,259
They should be the latest versions of those kexts.
 

XgamesMFZB

New member
AMD OS X Member
Joined
Jan 1, 2022
Messages
18
They should be the latest versions of those kexts.Capture d’écran, le 2022-01-10 à 20.39.03.png

Kinda? They were updated 3 hours and 6 hours ago respectively LOL amazing

1641865745519.jpeg

:)
 
Last edited:
Top Bottom
  AdBlock Detected
Sure, ad-blocking software does a great job at blocking ads, but it also blocks some useful and important features of our website. For the best possible site experience please take a moment to disable your AdBlocker.