Giter Club home page Giter Club logo

Comments (38)

EETagent avatar EETagent commented on May 18, 2024 2

Hi @zombillano, can you please test latest patches in new-acpi? I cleaned it little bit and fixed renames in config.plist. I recompiled and edited every patch from .dsl source and battery status is now fixed. Previously it showed that battery is charged 3% over it's actual capacity, now it is same compared to Linux.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024 1

Has anyone figured this out? I can't boot windows at all - using same ssd for both OSes

In the F12 boot menu, there should be two OS entries. Otherwise you can use rEFInd or GRUB, etc.

I would like to solve problems with Windows/Linux boot, but I do not know where to start. As I stated above, everything should be correct in this EFI.

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024 1

I'm being unable to put my computer to sleep closing the lid, can you confirm the same behaviour?

Putting computer to sleep using lid works for me even without using mentioned hotpatch. Please retest with SSDT-Lid enabled/disabled.

As I said earlier my problem was that I only replaced the ACPI folder and rebuild my config.plist file with ProperTree which doesn't seems to rebuild ACPI submenu. Putting the config.plist file from the new ACPI patches repo solved my issue. Thanks for taking the time to confirm, mate :)

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024 1

Fixed SSDT-PNLF in 3953f42

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

I believe this is something related to OpenCore itself, not with this specific config. I'm doing dualboot using the same SSD for both windows and MacOS. I use refind to solve this problem, but would be nice to have bootcamp-like behaviour. I tried to install Windows 10 using bootcamp, without any success, even after modifying config.plist file acording to opencore manual.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

Do not know where is the problem. With ACPI patches probably not, as those that could be the cause are already patched withIf (_OSI ("Darwin")) {} check.

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

Do not know where is the problem. With ACPI patches probably not, as those that could be the cause are already patched withIf (_OSI ("Darwin")) {} check.

Yup. There's also an option on config.plist that supossely disable ACPI patches when booting on a OS that isn't macOS, but that didn't work to me. I wasn't able to even load the USB installer from OpenCore picker. What I didn't tried was to erase NVRAM before loading the installer. You can give it a try, maybe NVRAM values make windows crash.

from t480-opencore-hackintosh.

richardphan01 avatar richardphan01 commented on May 18, 2024

Has anyone figured this out? I can't boot windows at all - using same ssd for both OSes

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

Has anyone figured this out? I can't boot windows at all - using same ssd for both OSes

I didn't but I'm using refind to select which OS to boot. Just install macOS, then windows and then refind, works well on a single SSD.

from t480-opencore-hackintosh.

knee41 avatar knee41 commented on May 18, 2024

I have successfully (so far) multi-booted my PC using this tool. Windows initially complained about ACPI, but after a reinstall it booted from open core fine. I tried to switch off the ACPI by chain loading grub from open core and then having ACPI turned off by the grub parameters, but I don't think that did anything all all. I don't think I did anything special.

from t480-opencore-hackintosh.

knee41 avatar knee41 commented on May 18, 2024

The ACPI_BIOS_ERROR returned again, so I shouldn't have spoken so soon
Installing rEFInd seems to have fixed it (for now at least) - installing it was as simple as installing the package in my linux distro from the repository. My BIOS was not seeing the rEFInd entry but using the opencore bootloader to clear the NVRAM and then reinstalling rEFInd fixed that.

from t480-opencore-hackintosh.

richardphan01 avatar richardphan01 commented on May 18, 2024

Has anyone figured this out? I can't boot windows at all - using same ssd for both OSes

In the F12 boot menu, there should be two OS entries. Otherwise you can use rEFInd or GRUB, etc.

I would like to solve problems with Windows/Linux boot, but I do not know where to start. As I stated above, everything should be correct in this EFI.

There are two entries, but after booting up MacOS after my Windows install, selecting the Windows Partition shows it loading after without the windows logo, then the system restarts. I'm also loading through a single ssd so boot menu doesn't work since it sends me to the opencore menu

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

Has anyone figured this out? I can't boot windows at all - using same ssd for both OSes

In the F12 boot menu, there should be two OS entries. Otherwise you can use rEFInd or GRUB, etc.
I would like to solve problems with Windows/Linux boot, but I do not know where to start. As I stated above, everything should be correct in this EFI.

There are two entries, but after booting up MacOS after my Windows install, selecting the Windows Partition shows it loading after without the windows logo, then the system restarts. I'm also loading through a single ssd so boot menu doesn't work since it sends me to the opencore menu

Don't use opencore to load Windows. Support for that isn't that great from part of acidanthera's group.

You can use refind which is very customizable (you can use different themes, hide unwanted bootable partitions, etc, etc) to choose between loading windows or opencore to load MacOS. On the opencore side you can disable the menu picker on config.plist, just make sure to select your macOS partition as bootable on System Preferences because opencore uses that setting to decide which OS to boot as default.

Because of that I don't think that trying to boot windows from opencore worths the time involved in finding the exact configuration that'll allow it.

My own personal setup makes refind boot directly to opencore unless there's a key stroke before refind boots, so in that case it shows me a menu to choose between OS. Opencore boots directly to macOS. Takes something around 25-30 seconds to boot all the way to the login screen, which might seems like a lot of time but it isn't that big deal.

This should change in the future when acidanthera's group decides to focus on loading other OS with opencore. 'Till then I think this would keep unsolved in prior of other bugs that we are still trying to solve.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

@zombillano @knee41 @richardphan01

The ACPI_BIOS_ERROR returned again

Because there is definitely something wrong with current ACPI patches, I created new branch with ACPI patches from X1C6. As T480 is almost the same machine as a X1C6 ( Except battery stuff ), macOS booted fine. What is important though, Linux booted fine from OC boot menu too! ( I do not have currently Windows installed ). Can you please try to boot with EFI from this specific branch so we will see if it works and then try to find what is wrong with current ACPI setup? Thanks.

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

I tried the OC setup that you posted on that branch. I'm unable to boot neither my macOS install or Windows Install. Are you sure that you fixed the battery related ACPI files before pushing that release? It's strange that I'm unable to boot macOS. I tried to boot with those ACPI patches before, do you remember?

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

@zombillano
Nope, I did not change anything as I did not have to ( Removed TB3 stuff though ). Battery patches there are not a problem as we use BAT0 too, there is just not NTFY and BATT for the second battery. As Tyler's config is probably able to boot other operating systems I want to keep it pure for further debugging.

UPDATE: Just double checked that I am really booting new patches. Simple check is that Tyler has command key mapped to super instead of alt
image

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

I found my issue: I suppose that BAT0 is the internal battery and BAT1 is the external one. My T480 lacks internal battery from factory, so deleting the BAT0 SSDT allowed me to boot successfully on macOS. Windows is still unable to boot. Does this ACPI config has any other "improvement" over the ones we are already using? If so to keep them on my main EFI partition. If not then I'll go back to the 4.0.0 release

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

Does this ACPI config has any other "improvement" over the ones we are already using? If so to keep them on my main EFI partition. If not then I'll go back to the 4.0.0 release

No, I just wanted to check if it is possible to boot Windows.

I think this has really something to do with our ACPI setup. Maybe something like this is what we are missing

Actually, previously I did not fully know what these battery patches do. I recommend to read every description of included patches in MSzturc repo

TLDR: BATT.aml is for battery info management, BATC.aml merges BAT0 and BAT1 into virtual BATC, NTFY.aml is to signalize battery removal to BATC.

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

I can boot to macOS just fine without changing anything, and can confirm that now battery level is pretty accurate. Congrats about it! I can't boot my windows 10 partition, though. I'm using windows LSTC so I'm unsure if it can be the source of this issue (it shouldn't but with this hacks we never know). I will try to create different windows 10 USB installers later today, unfortunately I didn't bring any USB drive with me today, so it will have to wait till I get home. I think that achieving to boot a windows 10 installer from opencore is the first step, because I wasn't even able to do so before.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

That's sad. I thought that it would work now. At least battery is fixed and Linux boots now. I am out of ideas, this would need updated N-D-K OpenCore fork or some skilled ACPI engineer

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

I'm being unable to put my computer to sleep closing the lid, can you confirm the same behaviour?

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

I think this ACPI patches needs some polishing. Right now I came to my computer after an hour or so of leaving it sleeping and now it doesn't want to increase or reduce the brightness level because it recognizes the display as an external display.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

I'm being unable to put my computer to sleep closing the lid, can you confirm the same behaviour?

Oops, I removed patch which enable this as I did not found it in any other polished repos ( X1C6, T480 ) and thought it would work without it.

I think this ACPI patches needs some polishing. Right now I came to my computer after an hour or so of leaving it sleeping and now it doesn't want to increase or reduce the brightness level because it recognizes the display as an external display.

That is weird as there are no changes with PNLF. It is true though, that it's now possible to fully turn off screen using brightness keys which from what I currently remember was not previously possible. It is same SSDT-PNLF-SKL_KBL.aml as before, just recompiled from source.

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

That is weird as there are no changes with PNLF. It is true though, that it's now possible to fully turn off screen using brightness keys which from what I currently remember was not previously possible. It is same SSDT-PNLF-SKL_KBL.aml as before, just recompiled from source.

Strange, then. I've always been able to turn off the screen when lowering the brightness :p So I don't think it is a new feature. I will do some more testing and report back later

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

Yes, the issue is caused by the new ACPI patches. With the old ACPI patches I can modify brightness just right. For some reason I have a tv on the same network that allows airplay, might be related?

Edit: Forget about it. I was only replacing the ACPI folder without replacing the config.plist file (because I dind't want to pass my serial to the new one, I was being lazy...) and cmd+R on propertree doesn't rebuild that part of the file. Putting the one that cames with the new repo maked it work.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

I'm being unable to put my computer to sleep closing the lid, can you confirm the same behaviour?

Putting computer to sleep using lid works for me even without using mentioned hotpatch. Please retest with SSDT-Lid enabled/disabled.

from t480-opencore-hackintosh.

UA3 avatar UA3 commented on May 18, 2024

I got windows to work from OC menu by changing SSDT-PNLF.aml with this one.

I'm not sure this is the correct implementation or not, probably someone can check and confirm.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

Great to hear that there is some progress. Are Windows stable enough? It didn't worked with SSDT-PNLF.aml in master branch? As both are exactly the same ( Return (Zero) in current version, but that is definitely not source of this issue )

DefinitionBlock ("", "SSDT", 2, "T480", "PNLF", 0x00000000)
{
    Scope (_SB)
    {
        Device (PNLF)
        {
            Name (_ADR, Zero)  // _ADR: Address
            Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
            Name (_CID, "backlight")  // _CID: Compatible ID
            Name (_UID, 0x10)  // _UID: Unique ID
            Method (_STA, 0, NotSerialized)  // _STA: Status
            {
                If (_OSI ("Darwin"))
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (Zero)
                }
            }
        }
    }
}

Master branch

DefinitionBlock ("", "SSDT", 2, "T480", "PNLF", 0x00000000)
{
    If (_OSI ("Darwin"))
    {
        Scope (_SB)
        {
            Device (PNLF)
            {
                Name (_ADR, Zero)  // _ADR: Address
                Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
                Name (_CID, "backlight")  // _CID: Compatible ID
                Name (_UID, 0x10)  // _UID: Unique ID
                Method (_STA, 0, NotSerialized)  // _STA: Status
                {
                    Return (0x0B)
                }
            }
        }
    }
}

Version above

from t480-opencore-hackintosh.

UA3 avatar UA3 commented on May 18, 2024

I was using the master branch, the only ACPI prevented windows from booting was PNLF, so I moved "If (_OSI ("Darwin")" to include the whole function, maybe the return value should be 0x0 instead of Zero? I'm not familiar with ACPI patches, probably further testing will be required.

As of now, I booted windows from OC several times in the last hours, and used it for couple of hours with no issues.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

@UA3 Thanks, it is always the one you suspect the least. It’s really weird that Return(Zero) has such devastating effect. Probably some weird Windows thing.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

Can @zombillano try these changes?

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

Can @zombillano try these changes?

Yes, it works. Boots as normal. @knee41 please give it a try, so we can have enough proofs in order to close this issue. I don't think it would cause any instability. @EETagent Can you confirm that you are still able to boot into linux with this new change? I suspect that "return(Zero)" might be needed for something, but I'm still unsure for what. Maybe the best approach would be to modify the function and add an else-if sentence that returns nothing if windows is being loaded.

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

That’s great. This little change is a major milestone in the history of this repo. No, I can not boot Linux currently from OC but that is issue on my Linux EFI side ( In the UEFI boot menu, there is ubuntu and NVMe entry. It is possible to boot Linux from ubuntu entry but not from NVMe one, which is what OC finds. I recently compiled and installed 5.9 rc1 kernel and messed with /boot partition ... so that might be reason why it don’t work now ) That is not point of this issue though.

Also, just keep in mind that it might not be a good idea to perform firmware upgrades ( No fwupdmgr nor Vantage ) when booting from OC as TP thinks that he is a MBP, etc. I will put this disclaimer in the README when changes for Windows are pushed

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

AFAIK it doesn't think it is a MBP because we have configurated it to be that way on config.plist file, right?

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

AFAIK it doesn't think it is a MBP because we have configurated it to be that way on config.plist file, right?

Yes, it thinks it is MBP because it's configured in config.plist. OC injects SMBIOS on all platforms ( I think, it is for more native Bootcamp experience but I am not exactly sure )

Please try these commands in CMD:
wmic computersystem get model,name,manufacturer,systemtype
wmic csproduct get vendor, version

There should be at least acidanthera as a vendor or something like that

from t480-opencore-hackintosh.

zombillano avatar zombillano commented on May 18, 2024

Yes, it thinks it is MBP because it's configured in config.plist. OC injects SMBIOS on all platforms ( I think, it is for more native Bootcamp experience but I am not exactly sure )

You are right. I tried configuring OC to stop creating a new SMBIOS on each boot which seems to make windows recognize the computer as a T480 BUT battery and some other devices are not being detected properly. I cannot set battery threshold if I boot via OC.

If someone needs to update its firmware/BIOS/etc just boot windows through the F12 boot menu. Otherwise you may encounter issues.

Said that, if you want to use lenovo vantage you will need to boot either with the F12 boot menu or any other external loader (reFind, for example). If you prefer to get bootcamp like features like choosing which OS to boot from Apple's bootcamp software, while loosing lenovo vantage features, then use OC to load windows.

I think we can close this issue now. Thanks everyone for your help :) 👍

from t480-opencore-hackintosh.

EETagent avatar EETagent commented on May 18, 2024

OK, feel free to reopen if there would be some issues again.

Thanks everyone for your effort.

from t480-opencore-hackintosh.

aleixsr avatar aleixsr commented on May 18, 2024

Hello, I'm getting ACPI_BIOS_ERROR when I try to boot Windows 10, can you please help ?

from t480-opencore-hackintosh.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.