Jump to content
anor4k

No graphics / USB / Audio after wake

586 posts in this topic

Recommended Posts

Not sure if this is a known side effect of the current understanding of the problem, but wake works properly if booting in safe mode.

Share this post


Link to post
Share on other sites
Advertisement

Do you have any link to original source?

That would be me, since it was I who discovered a workaround for the black screen issues people where having, and blogged about it (on 17 April 2014 https://pikeralpha.wordpress.com/2014/04/17/os-x-mavericks-10-9-3-build-13d43-seeded/).

Share this post


Link to post
Share on other sites

What AMD kexts do/don't load in safe mode?

Using a HD7xxx Card the Kext which loads in normal boot and not in safe mode is AMDRadeonX4000.kext.

On HD6xxx Cards it is AMDRadeonX3000.kext, but we knew this since a while, it is also mentioned in this thread.

 

What would be great is, if someone with reverse engineering knowledge could take a look at the differences between the current X4000 and the Yosemite X4000 (or the equivalent X3000).

Share this post


Link to post
Share on other sites

I give a try, thanks!  :thumbsup_anim:

 

EDIT: Nop not working on my hack...my hdd is 1-2 year old. i dont have older disk right now to check. 

 

Old disk connected to sata2 or sata3 port? can you please connect your ssd to sata2 port and check sleep again?

Wake works every time?

I've connected the drive to the last port and that makes the difference, it's not working every time but on 80-90% wake is successfull.

Share this post


Link to post
Share on other sites

I've connected the drive to the last port and that makes the difference, it's not working every time but on 80-90% wake is successfull.

I cant now verify because i swap my amd card with my friends nvidia card. 750ti (wake working now.)

Can you upload an ioreg export?

Motherboard model?

Share this post


Link to post
Share on other sites

I've connected the drive to the last port and that makes the difference, it's not working every time but on 80-90% wake is successfull.

 

Can you please post a complete ACPI dump of your machine (with patched DSDT in place in case you are using a patched DSDT).

 

Mieze

Share this post


Link to post
Share on other sites

7950glviewer.png

I just checked my setup in OpenGL viewer, dunno if its still relevant.

 

Clover 3280 with no gfx injection.

FakeSMC.kext is 6.11.1328

FakePCIID.kext & FakePCIID_XHCIMux.kext along with .ssdt for usb3

Intel disabled in UEFI.

7950 Sapphire, reference layout ( 810MHz) in PCIe slot 1

7950 Sapphire boost ( 925MHz), 4 port layout (2xDVI,hdmi,DP) PCIe slot 2 monitors connected to DVI and DP. This card is set as first boot in UEFI.

 

Last posts in kernel log before sleep:

26. okt. 2015, 18.27.21 kernel[0]: PM response took 3070 ms (61, powerd)
26. okt. 2015, 18.27.21 kernel[0]: kern_open_file_for_direct_io(0)
26. okt. 2015, 18.27.21 kernel[0]: kern_open_file_for_direct_io took 0 ms
26. okt. 2015, 18.27.21 kernel[0]: Opened file /var/log/SleepWakeStacks.bin, size 172032, extents 1, maxio 2000000 ssd 1
26. okt. 2015, 18.27.21 kernel[0]: polled file major 1, minor 3, blocksize 4096, pollers 5

 

It's instant wake with black screens.

after powerdown and booting this is kernelog:

26. okt. 2015, 18.28.38 kernel[0]: Sleep failure code 0x00000000 0x27006700

26. okt. 2015, 18.28.57 kernel[0]: AMDRadeonX4000_AMDAccelDevice: IOUserClient outputCount count mismatch
26. okt. 2015, 18.28.57 kernel[0]: AMDRadeonX4000_AMDAccelDevice: IOUserClient outputCount count mismatch

Share this post


Link to post
Share on other sites

Anybody knows why does the Radeon framebuffer work well on El Capitán while it makes my screen flicker continuously on Yosemite?

Share this post


Link to post
Share on other sites

Anybody knows why does the Radeon framebuffer work well on El Capitán while it makes my screen flicker continuously on Yosemite?

Because Apple improve it?

Share this post


Link to post
Share on other sites

Can you please post a complete ACPI dump of your machine (with patched DSDT in place in case you are using a patched DSDT).

 

Mieze

Here are my ACPI Tables ACPI Tables.zip

 

@ KonstantinosNks, my mainboard is a dinosaur GA-EP45-DS4   :) , ioreg @ #108

Share this post


Link to post
Share on other sites

Hey guys,

 

I've been tinkering with this issue for a while now, before I found this thread. Here's what I can share hoping it may be helpful:

 

When booting with Intel Graphics as first graphics device to initialize, wake works just fine (as mentioned here before, but for UEFI - confirmed for legacy!).

Even if I connect HDMI from onboard (Intel) to external (Radeon) graphics card, I have dual screen (DVI & HDMI, both on Radeon) and system still wakes flawlessly. I can even reboot with this configuration (not seeing anything during boot until monitors turn on at login screen) and still works fine. In this scenario OSX sees both graphics devices. I wasn't able to boot with PCI-E as first to initialize (so I'm not "blind-booting") and still having Intel Graphics activated - to see what difference that makes.

 

Hope this finding helps somehow to narrow down the cause. Without being a developer, it does not make much sense to me, that the problem is gone only with additional hardware activated (or maybe it does? Maybe something necessary not loading when on PEG?). Also thought of something HDMI-Audio-related being the cause, though error messages indicate framebuffer issues - which on the other hand does not explain why it works well with additional intel graphics active... 

 

Let me know if I can do anything to help resolve this.

 

Cheers,

Reno

Share this post


Link to post
Share on other sites

Hey guys,

 

I've been tinkering with this issue for a while now, before I found this thread. Here's what I can share hoping it may be helpful:

 

When booting with Intel Graphics as first graphics device to initialize, wake works just fine (as mentioned here before, but for UEFI - confirmed for legacy!).

Even if I connect HDMI from onboard (Intel) to external (Radeon) graphics card, I have dual screen (DVI & HDMI, both on Radeon) and system still wakes flawlessly. I can even reboot with this configuration (not seeing anything during boot until monitors turn on at login screen) and still works fine. In this scenario OSX sees both graphics devices. I wasn't able to boot with PCI-E as first to initialize (so I'm not "blind-booting") and still having Intel Graphics activated - to see what difference that makes.

 

Hope this finding helps somehow to narrow down the cause. Without being a developer, it does not make much sense to me, that the problem is gone only with additional hardware activated (or maybe it does? Maybe something necessary not loading when on PEG?). Also thought of something HDMI-Audio-related being the cause, though error messages indicate framebuffer issues - which on the other hand does not explain why it works well with additional intel graphics active... 

 

Let me know if I can do anything to help resolve this.

 

Cheers,

Reno

 

That's really interesting news. Well, it might be the case that the activated onboard graphics causes something to load which doesn't load when using AMD graphics only. On the other hand the power management routines in the DSDT depend on the selected primary graphics device, e.g. the execution paths are different if you have a discrete graphics card as the primary device than those for a system with onboard graphics as the primary device.

 

It would be interesting to know if the system still wakes up properly when you set ig-platform-id to a value which defines 0 ports.

 

@wern apfel: Thank you very much. I will examine it carefully. Maybe it gives us a hint. The fact that it wakes up most of the times could be an indication for a race condition in the wakeup procedure.

 

Mieze

Edited by Mieze

Share this post


Link to post
Share on other sites

I think the problem is not in ACPI/PowerManagement.

If no QE/CI then Radeon will wake up.

 

There is interesting observation about invalid client count. Looks like the system can't wake a non-existing connector. In the case of additional Intel card it can.  :huh:

Share this post


Link to post
Share on other sites

 

It would be interesting to know if the system still wakes up properly when you set ig-platform-id to a value which defines 0 ports.

 

Hi Mieze,

 

just tried it, set ig-platform-id to 0x01620006. System boots with Intel Graphics active (monitor@onboardHDMI) works normally, though "System Report" now only shows Radeon, no Intel gfx. But system still wakes normally. What does this mean? 

Share this post


Link to post
Share on other sites

@Ren

 

Hi Mieze,

 

just tried it, set ig-platform-id to 0x01620006. System boots with Intel Graphics active (monitor@onboardHDMI) works normally, though "System Report" now only shows Radeon, no Intel gfx. But system still wakes normally. What does this mean? 

 

Ah, my fault! I didn't read your specs and forgot that your machine has got HD3000 graphics, not HD4000 as I assumed. Well, my original iMac12,1 doesn't have this property for the IGPU at all. Try to disable injection for onboard graphics completely and try again. This should disable onboard graphics output within OS X.

 

Mieze

Share this post


Link to post
Share on other sites

Thanks for your response Mieze,

 

without injection in Clover it still works well, no matter if 0 or 1 ports is set. Only difference is that without injection, the Onboard graphics is correctly detected as HD3000, while Clover injection showed HD2000 - why ever...

Therefore, as long as IGPU is active, sleep/wake works well... No matter with what settings. Again the question: what does this tell us? Do you have an assumption you are trying to confirm?

Share this post


Link to post
Share on other sites

Thanks for your response Mieze,

 

without injection in Clover it still works well, no matter if 0 or 1 ports is set. Only difference is that without injection, the Onboard graphics is correctly detected as HD3000, while Clover injection showed HD2000 - why ever...

Therefore, as long as IGPU is active, sleep/wake works well... No matter with what settings. Again the question: what does this tell us? Do you have an assumption you are trying to confirm?

On recent iMacs with discrete graphics the IGPU isn't disabled, but it's configured to have 0 ports. That's the major difference between hacks and Apple machines with regard to graphics. My theory is that we have to leave it enabled and in a certain way you already confirmed that. The problem is now that we need to find the configuration which works best.

 

Mieze

Share this post


Link to post
Share on other sites

Ok, apparently everything is fine as long as Intel Gfx is active. Problem is, I only get it working, when it is set as the primary Gfx. In that case, no matter with what settings (0or1 port, inject or not..) wake works just fine. 

As soon as I set PEG to primary, IGPU is not recognized by Clover. Under "Graphics" in Options in Clover Bootmenu, there is only the Radeon Card detected. When IGPU is set as primary Clover detects both. 

Also, when not set primary, IGPU does not work correctly. On the according monitor, there are only colored lines, only the mouse pointer is displayed correctly, everything else is totally messed up. I remember this worked well under Chameleon and ML/Yosemite... And wake does not work again.

I wonder if - should Clover correctly detect Intel Gfx although not primary - this might resolve our problems. I would happily spare 32 Mb of RAM for Intel Gfx, if in return I could have working sleep/wake :)

@Slice: Are there known issues with Clover and IGPU+dedicatedGPU configurations? Or is this a local problem with my hardware?

 

Thanks

Reno

Share this post


Link to post
Share on other sites

@Slice: Are there known issues with Clover and IGPU+dedicatedGPU configurations? Or is this a local problem with my hardware?

 

Thanks

Reno

 

This is a known issue. I think there was a patch posted in either the Clover general discussion/Clover issue reporting threads that initialized the IGPU before the PCIe GPU so you could inject both when PEG is set to primary.

Share this post


Link to post
Share on other sites

On recent iMacs with discrete graphics the IGPU isn't disabled, but it's configured to have 0 ports. That's the major difference between hacks and Apple machines with regard to graphics. My theory is that we have to leave it enabled and in a certain way you already confirmed that. The problem is now that we need to find the configuration which works best.

 

Mieze

As I posted a few days ago (#91), my MacPro3,1 is the living proof that the problem doesn't affect real Macs even if they don't have an iGPU, so it must be possible to solve that issue in a more generic way  :)

ioreg dumps are there, too, maybe you can read more from them than I can...

Share this post


Link to post
Share on other sites

This is a known issue. I think there was a patch posted in either the Clover general discussion/Clover issue reporting threads that initialized the IGPU before the PCIe GPU so you could inject both when PEG is set to primary.

Clover did no graphics initialization. Pause.... It is BIOS work.

Injection is a set of pairs / and the set is not ordered.

 

I can't make Radeon wake with any Intel injections and initializations. I want another way.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By rxfx
      So I’ve been working at trying to get the wifey’s [HP Envy Recline 23-k310 All-in-One]’s display to properly wake from sleep for months now. I’m kinda at my wits end; It’s probably something so simple and I’m overthinking it.
       
      The computer sleeps properly, but when it wakes, I get no display (no backlight either). The keyboard and peripherals seem to work after wake; able to key in the passcode/password and sound works when I use the volume up/down buttons. But I get absolutely no display. I’ve done 3 other successful hackintoshes (though, none had any dGPUs/eGPUs). But I’m somewhat confident that I’ve disabled the Nvidia Optimus (NVIDIA GeForce 830A)/N15S-GM) I couldn’t find any _ini when I poll the SSDT’s and no signs of Nvidia In System Report, Hackintosh, or IOReg. It’s disabled via the Frame Buffer patch in clover (I use 0x0D220003 for platform ID. I definitely have the Lilu and Whatevergreen kexts in L/E. I’ve tried a plethora of Clover settings, changing SMBIOS’s, darkwake bootflags, and AppleBacklightfixup.kext in both Clover/Kexts and L/E to no avail. Power management has been set using the Pike R. Alpha ssdtPRGen implementation. I’ve gone through and setup the proper SSDTs for the USB patching. Besides adding the HDMI audio output patch (which I don’t use/or have anything plugged into since its an AIO), everything else works on point. But…
       
      “Help me Obi-Wan[’s], you’re my only hope!!”
       
      I’ve attached an “Error Report.zip” including an IOReg report, config.plist, and a generated report form black.dragon74’s tool. I would love any recommendations or possible fixes/files/patches to these files to resolve this issue that has been stumping me for months.
       
      HP Envy Recline 23-k310 AIO
      Intel i3-4330T
      Intel HD Graphics 4400
      8GB 1600 MHz RAM
      Intel H87 Chipset [HP/Quanta Laurel2-1G mainboard]
      macOS Catalina 10.15.3 (with iMac 14,3 SMBIOS)
      Error Report.zip
    • By Trung_Nguyen
      Hi, I'm using a Dell laptop, modeled Latitude E6230, bios version A11(I don't have any batteries to update :'( ).
      I'm using Catalina with OpenCore boot loader. 
      Everything is good, fast boot time.
      But when comes to sleeping there's 2 issues that randomly happen when the sleeping time is long enough:
      - Kernel Panic when sleep: panic log: panic
         This should have something to do with bluetooth, right? I'm using DW380 with BrcmPatchRam3 & BrcmBluetoothInjector.
      - Darkscreen when wakeup:
         After I open the lid, the screen have no backlight, although the UI barely shown.
         All I could do is to use keyboard to enter my password and use hotkey to shutdown the machine and then restart normally.
       
      The EFI/OC folder is attached below, with serial numbers removed.
      Sorry for using .txz format but with .zip, I couldn't get it fit in 10MB. Sorry for any inconvenience.
       
      P/s:If anybody try boot this in the future, please bear in mind that if you inject IO80211Family and AirportBrcm4331 (the one from 10.14.6) to any Recovery or installation media, it will panic the kernel, please disable those 2 before-hand.
       
      Thank you very much
       
      OC.txz
    • By superdooper71
      Hi I wonder if you can help me out guys.
      I have few issues here
      • First
      when I boot the clover entry screen do not show the disk icons until i press enter
      (If I disconnect the keybord all is smooth, clover start, shows disk icons and boot from Mojave)
      • Second
      Randomly the keyboard and mouse become pretty unstable. The mouse cursor start flashing or the keyboard start to type repetedly <<<<<<<<<<< when i Press the spacebar or some other button
      (this behaviour is applied to all keyboard I have tried, actually 3 different ones)
      --------------------------------------------------------------------
      KB and Mouse are plugged on a USB 3.0 ports
      I have tried to reset the keyboard Pref but NO LUCK
      I have changed Keyboard - Same error
      --------------------------------------------------------------------
      I enclose IOREGregistry and config.plist
       
      MY CURRENT BUILD
      ASROCK Z270 PRO4
      i7 7700K
      32GB DDR4
      Gigabyte GTX 760
       
      I believe that there is some code conflict but I have no idea what is wrong
       
      Please HELP
      Cheers
      Franco
      config.plist
      iMac di imac27.ioreg.zip
    • By KNNSpeed
      NOTICE: The official AppleALC now contains layout-id 72. There's no more need to download the AppleALC.kext.zip file from this post.
       
      NEW!
       
      After several weeks of toiling (it's July already?!), here's a new audio solution for perfect working audio. I basically ported the linux driver and created a GUI popup menu to configure the combo jack (see screenshot).
       
      Features:
      Fully working Combo Jack! (Heaphones, headset, AND line-in!) New verb sending kext (no more need for CodecCommander on systems without EAPD troubles; VerbStub is simply a direct port of hda-verb for Linux) Launchdaemon with Windows-like pop-up menu monitors the jack for insertion Automatic OMTP (Nokia)/CTIA (iPhone) detection for headsets! Fully commented sources Notes:
      Line-in mode disables audio output. I haven't been able to re-enable the speakers when the jack is purely an input, but that's the only "issue" Zero "no audio after sleep" issues so far Make sure to turn off "Use ambient noise reduction" when using an input that isn't the internal Mic (unless you find that it helps) How does it work?
       
      Simple! Due to the way the Realtek codec is set up on this machine, the ComboJack program watches the jack and switches the codec selector (node 0x22) to the correct input after applying all the requisite processing coefficients and pin widgets. This means that Mac OS only sees a built-in mic, but behind the scenes it actually is connecting to the headset and line-in ports. This works because all input paths lead through selector node  0x22 and into capture node 0x09, and the OS only acknowledges the capture node.
       
      How to install (uses modded AppleALC):
      Disable SIP (I use 0x67 for CSRActiveConfig and 0xEE for booterconfig) Remove ALCPlugFix from /usr/bin (may need to kill with Activity Monitor first) Remove good.win.ALCPlugFix.plist from /Library/LaunchAgents (may need to launchctl unload first) Remove CodecCommander from Clover/kexts/Other (unless you need it, but it looks like the 9560 doesn't) Copy VerbStub.kext to EFI/Clover/kexts/Other Copy AppleALC** to EFI/Clover/kexts/Other Change layout-id to 72 (in SSDT-Config -- 0x48 is hex) Run install.sh and read what it says Reboot (and enable SIP if you want)! Download "ComboJack Installer.zip" and "AppleALC.kext.zip" for everything. The other zips are sources.
      (Also included in "ComboJack Installer" is a folder containing the platform, layout, and pinconfigs used.)
       
      **AppleALC now includes this layout (layout-id 72) in the official release.
      ComboJack Installer.zip

      VerbStub Source.zip
      Combo Jack Source.zip
      AppleALC.kext.zip
    • By jamesxxx1997
      Hi everyone !
      I have a laptop thinkpad x1 yoga 2018 , the sound device is realtek alc285.
      My friend and I spend numerous time on patching its layout-id , however either the headphone jack or laptop audio recording have noises.
      Any help is appreciated , thank you !!!
       
      HdaCodec#0 (Realtek ALC285).bin
      HdaCodec#0 (Realtek ALC285).txt
      HdaCodec#1 (Realtek ALC285).bin
      HdaCodec#1 (Realtek ALC285).bin.cpgz
      HdaCodec#1 (Realtek ALC285).txt
      HdaCodec#2 (Intel Kaby Lake HDMI).bin
      HdaCodec#2 (Intel Kaby Lake HDMI).txt
×