Jump to content
Kogen Mantis

Lenovo ThinkPad T420 with UEFI Only

4,138 posts in this topic

Recommended Posts

Guys, mind testing this please? 

https://www.dropbox.com/s/mgz6jvcmx8eq6v5/T420-4236AT9.zip

Please remove your AppleACPIPlatform roll back (which comes from 10.6.2, are you kidding me?) and install the one enclosed in the archive, it's a genuine one from 10.8.5. I've patched your EC RAM registers to support new ACPI interpreter and thus you no longer require the rollback for battery to work properly. This will make the test in regards to shutdown more cleaner!


I basically split your registers into 8 bit ones down from 16, 32 and 128. Then rejoined them by appropriate methods so that the integrity would remain. Only those registers that are actually used in ACPI were changed:

 

                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBR1,   8, 
                        SBR2,   8, 
                        SBF1,   8, 
                        SBF2,   8, 
                        SBAE,   16, 
                        SBRS,   16, 
                        SBA1,   8, 
                        SBA2,   8, 
                        SBV1,   8, 
                        SBV2,   8, 
                        SBAF,   16, 
                        SBBS,   16
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBB1,   8, 
                        SBB2,   8, 
                        SBMD,   16, 
                        SBCC,   16
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBD1,   8, 
                        SBD2,   8, 
                        SBDA,   8, 
                        SBDB,   8, 
                        SBOM,   16, 
                        SBSI,   16, 
                        SBDT,   16, 
                        SBS1,   8, 
                        SBS2,   8
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBC1,   8, 
                        SBC2,   8, 
                        SBC3,   8, 
                        SBC4,   8
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBM1,   32, 
                        SBM2,   32, 
                        SBM3,   32, 
                        SBM4,   32
                    }
 
 

                    Method (B1B2, 2, NotSerialized)
                    {
                        Or (ShiftLeft (Arg1, 0x08), Arg0, Local0)
                        Return (Local0)
                    }
 
                    Method (B1B4, 4, NotSerialized)
                    {
                        Or (ShiftLeft (Arg1, 0x08), Arg0, Local0)
                        Or (ShiftLeft (Arg2, 0x10), Local0, Local0)
                        Or (ShiftLeft (Arg3, 0x18), Local0, Local0)
                        Return (Local0)
                    }
 
                    Method (L1L4, 4, NotSerialized)
                    {
                        Or (ShiftLeft (Arg1, 0x20), Arg0, Local0)
                        Or (ShiftLeft (Arg2, 0x40), Local0, Local0)
                        Or (ShiftLeft (Arg3, 0x60), Local0, Local0)
                        Return (Local0)
                    }

Share this post


Link to post
Share on other sites
Advertisement

@TimeWalker75a 

 

well - my latest bundle posted had us using ErmaC's patch for AppleACPIPlatform (v1.7) (10.8.4 i believe?) + Rehabmans battery stuff.

i switched over this newer version ACPI when i found that rehabmans AppleSmartBatteryManager was found to work with DSDT unchanged. 

previously yes was using a very old snow leopard 1.3.5 ACPIPlatform since VoodooBattery required it.

 

but sure, i will implement/test your package. hang on.

Share this post


Link to post
Share on other sites

Guys, mind testing this please? 

https://www.dropbox.com/s/mgz6jvcmx8eq6v5/T420-4236AT9.zip

Please remove your AppleACPIPlatform roll back (which comes from 10.6.2, are you kidding me?) and install the one enclosed in the archive, it's a genuine one from 10.8.5. I've patched your EC RAM registers to support new ACPI interpreter and thus you no longer require the rollback for battery to work properly. This will make the test in regards to shutdown more cleaner!

I basically split your registers into 8 bit ones down from 16, 32 and 128. Then rejoined them by appropriate methods so that the integrity would remain. Only those registers that are actually used in ACPI were changed:

 

                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBR1,   8, 
                        SBR2,   8, 
                        SBF1,   8, 
                        SBF2,   8, 
                        SBAE,   16, 
                        SBRS,   16, 
                        SBA1,   8, 
                        SBA2,   8, 
                        SBV1,   8, 
                        SBV2,   8, 
                        SBAF,   16, 
                        SBBS,   16
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBB1,   8, 
                        SBB2,   8, 
                        SBMD,   16, 
                        SBCC,   16
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBD1,   8, 
                        SBD2,   8, 
                        SBDA,   8, 
                        SBDB,   8, 
                        SBOM,   16, 
                        SBSI,   16, 
                        SBDT,   16, 
                        SBS1,   8, 
                        SBS2,   8
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBC1,   8, 
                        SBC2,   8, 
                        SBC3,   8, 
                        SBC4,   8
                    }
 
                    Field (ECOR, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0xA0), 
                        SBM1,   32, 
                        SBM2,   32, 
                        SBM3,   32, 
                        SBM4,   32
                    }
 
 

                    Method (B1B2, 2, NotSerialized)
                    {
                        Or (ShiftLeft (Arg1, 0x08), Arg0, Local0)
                        Return (Local0)
                    }
 
                    Method (B1B4, 4, NotSerialized)
                    {
                        Or (ShiftLeft (Arg1, 0x08), Arg0, Local0)
                        Or (ShiftLeft (Arg2, 0x10), Local0, Local0)
                        Or (ShiftLeft (Arg3, 0x18), Local0, Local0)
                        Return (Local0)
                    }
 
                    Method (L1L4, 4, NotSerialized)
                    {
                        Or (ShiftLeft (Arg1, 0x20), Arg0, Local0)
                        Or (ShiftLeft (Arg2, 0x40), Local0, Local0)
                        Or (ShiftLeft (Arg3, 0x60), Local0, Local0)
                        Return (Local0)
                    }

Thanks à lot

Report : Boot error smcreadkeyaction errorr

 

Fall back error to old smc :-(

Share this post


Link to post
Share on other sites

Thanks à lot

Report : Boot error smcreadkeyaction errorr

 

Fall back error to old smc :-(

Has nothing to do with what you were testing. If you want this error gone patch AppleSMC binary

4885c075 10488d3d 7d50 to 4885c0eb 6e488d3d 7d50, this will make it fall back to old mode right away without trying the new one. This error is even present on genuine Apple hardware.

Share this post


Link to post
Share on other sites

It seems _BIF is not properly parsed. The easiest way to debug would be to compile the debug version of the kext. 

Also I still see you haven't disabled the "UseExtraBatteryInformation" key .. your laptop doesn't have a register to store cycle count as far as I can see, so approximation has to happen.. 

Please install this: http://puu.sh/4BttQ.zip

And see Console for errors..

Share this post


Link to post
Share on other sites

Yeah, pretty much _BIF method fails to be evaluated.. gonna look into that.

 AppleSmartBatteryManager::getBatteryBIF called
 AppleSmartBatteryManager::getBatteryBIF: validateObject return 0x0
 AppleSmartBatteryManager::getBatteryBIF: evaluateObject error 0xe00002bc

Share this post


Link to post
Share on other sites

Ok, i've simplified the thing for testing a little bit.. so lets see if it works: http://puu.sh/4BvBq.zip

                    Method (GBIF, 3, NotSerialized)
                    {
                        Acquire (BATM, 0xFFFF)
                        If (Arg2)
                        {
                            Store (B1B2 (SBB1, SBB2), Local7)
                            ShiftRight (Local7, 0x0F, Local7)
                            XOr (Local7, One, Index (Arg1, Zero))                 // Power Units 
                            Store (B1B2 (SBD1, SBD2), Index (Arg1, One))          // Design Capacity
                            Store (B1B2 (SBF1, SBF2), Index (Arg1, 0x02))         // Last Full Charge Capacity
                            Store (B1B2 (SBDA, SBDB), Index (Arg1, 0x04))         // Design Voltage
                            Divide (B1B2 (SBF1, SBF2), 0x14, Local2, Index (Arg1, 0x05)) // Design Capacity of Warning
                            Divide (0x00030D40, B1B2 (SBDA, SBDB), Local2, Index (Arg1, 0x06)) // Design Capacity of Low
                            Store (B1B2 (SBD1, SBD2), Index (Arg1, 0x09))         // Model Number
                            Store (B1B2 (SBS1, SBS2), Local0)
                            Name (SERN, Buffer (0x06)
                            {
                                "     "
                            })
                            Store (0x04, Local2)
                            While (Local0)
                            {
                                Divide (Local0, 0x0A, Local1, Local0)
                                Add (Local1, 0x30, Index (SERN, Local2))
                                Decrement (Local2)
                            }
 
                            Store (SERN, Index (Arg1, 0x0A))                      // Serial Number
                            Store (B1B4 (SBC1, SBC2, SBC3, SBC4), Index (Arg1, 0x0B)) // Battery Type
                            Store (L1L4 (SBM1, SBM2, SBM3, SBM4), Index (Arg1, 0x0C)) // OEM Information
                        }
                        Else
                        {
                            Store (Ones, Index (Arg1, One))
                            Store (Zero, Index (Arg1, 0x05))
                            Store (Zero, Index (Arg1, 0x06))
                            Store (Ones, Index (Arg1, 0x02))
                        }
 
                        Release (BATM)
                        Return (Arg1)
                    }

Edit: 

ok I see the issue ...

 

Store (SBDN, Index (Arg1, 0x09))

I forgot to split the register and mistakenly used design capacity register there!! Gonna fix that now!

 

Edit2:

 

done.. please give this a test - > http://puu.sh/4BvRa.zip

Share this post


Link to post
Share on other sites

What a stubborn piece of code.. let's try the simplified one, with model number registers properly coded in:

http://puu.sh/4BxU3.zip


If it fails to evaluate _BIF again we are just going brutal for sakes of testing - not using any registers what so ever, just defining values based on the screenshots you had shown. It's only for the sakes of testing whether the issue is inside the algo in general or it's register fault (my fault, hehe).

http://puu.sh/4Byi2.zip

 

 

                        If (Arg2)
                        {
                            Store (0x00, Index (Arg1, 0x00))
                            Store (0xb9a0, Index (Arg1, 0x01))
                            Store (0xa474, Index (Arg1, 0x02))
                            Store (0x2a30, Index (Arg1, 0x04))
                            Store (0x839, Index (Arg1, 0x05))
                            Store (0xc8, Index (Arg1, 0x06))
                            Store ("45N1001", Index (Arg1, 0x09))
                            Store ("17832", Index (Arg1, 0x0A))
                            Store ("LION", Index (Arg1, 0x0B))
                            Store ("SANYO", Index (Arg1, 0x0C))
                        }

Share this post


Link to post
Share on other sites

If you want this error gone patch AppleSMC binary

replace 4885c075 10488d3d 7d50 to 4885c0eb 6e488d3d 7d50,

this will make it fall back to old mode right away without trying the new one.

This error is even present on genuine Apple hardware.

sorry could you please give more detail to do so

 

i thought about add this in clover config

KextsToPatch

Find

Replace

but not sure 

tlucj surely understood but i did not and i would like to learn from what i read

Share this post


Link to post
Share on other sites

tluck, 

give this a shot.. I have avoided using L1L4 and B1B4 for now, let's see if plain 8 to 16 bit registers would work.

http://puu.sh/4BCFp.zip

 

 



sorry could you please give more detail to do so

 

i thought about add this in clover config

KextsToPatch

Find

Replace

but not sure 

tlucj surely understood but i did not and i would like to learn from what i read

 

Here you go:

	<key>KernelAndKextPatches</key>
	<dict>
		<key>Debug</key>
		<false/>
		<key>KextsToPatch</key>
		<array>
			<dict>
				<key>Comment</key>
				<string>Fall back to old SMC mode right away</string>
				<key>Name</key>
				<string>AppleSMC</string>
				<key>Find</key>
				<data>SIXAdRBIjT19UA==</data>
				<key>Replace</key>
				<data>SIXA625IjT19UA==</data>
			</dict>
		</array>
	</dict>

Share this post


Link to post
Share on other sites

It is hard coded for sakes of testing, as I've said already. I've purposely replaced every B1B4 and L1L4 conversions with hardcoded strings to see if it ends up working. But I fail to see how this is possible that it is reporting current state as capacity of warning.. unless it reads the values from SBFC and dividing it by 0x14 ends up lower as the actual current capacity reported from _BST.. 

This Lenovo unit is a mess :S

 

Can you jump to IRC for live chit chat ? 

/join irc.nspwn.com

/query timewalker

Share this post


Link to post
Share on other sites

ok. we have another break through of sorts. on top of the shutdown hang mixup,  a further rewrite of the DSDT by TimeWalker75a has provided a way to eliminate the ACPIPlatform rollback - so we can have one less custom kext to deal with.

 

Note: Rehabman updated and renamed AppleSmartBatteryManager to ACPIBatteryManager.kext so it does not conflict with the native one. anyway ... Huge thanks to Timewalker75a on helping making the T420 practically a perfect Hack!

 

will repackage and post ASAP with new DSDT so hang on and wait if you have not upgraded to the bundle from yesterday.

 

FakeSMC + Plugins

VoodooPS2

ACPIBatteryManager

$ kextstat |grep -v apple
Index Refs Address            Size       Wired      Name (Version) <Linked Against>
   16    2 0xffffff7f8119f000 0x16000    0x16000    org.netkas.driver.FakeSMC (873) <9 7 5 4 3 1>
   17    0 0xffffff7f811b5000 0x4000     0x4000     org.hwsensors.driver.CPUSensors (873) <16 7 5 4 3>
   30    2 0xffffff7f80811000 0xe000     0xe000     org.rehabman.voodoo.driver.PS2Controller (1.8.8) <9 7 5 4 3 1>
   32    0 0xffffff7f811bc000 0x6000     0x6000     org.hwsensors.driver.ACPISensors (873) <16 9 7 5 4 3>
   35    0 0xffffff7f81d14000 0x6000     0x6000     org.rehabman.driver.AppleSmartBatteryManager (1.40) <9 4 3>
   38    0 0xffffff7f80e72000 0x19000    0x19000    com.insanelymac.driver.AppleIntelE1000e (2.4.14) <37 10 5 4 3 1>
   52    0 0xffffff7f80834000 0x5000     0x5000     org.rehabman.voodoo.driver.PS2Keyboard (1.8.8) <30 28 7 6 5 4 3 1>
   53    0 0xffffff7f8081f000 0xb000     0xb000     org.rehabman.voodoo.driver.PS2Trackpad (1.8.8) <30 28 7 6 5 4 3 1>

Share this post


Link to post
Share on other sites

limited testing so far points toward goodness on dsdt shutdown fix. seems very consistent when i only have 1 disk.

 

but i have an esata and usb3 PCI express. And these extra disks seem to introduce same old random problem.

Share this post


Link to post
Share on other sites

limited testing so far points toward goodness on dsdt shutdown fix.

Good to know, hope it's fixed for good!

What is the custom ssdt that you were referring to in Clover's thread that gives you more P-States on your i5? I'm wondering because I'm not really happy about how things are on my i3.. I get 8 11 15 19 and 22 (whilst the highest one should be 23, really). Care to share what was the origin of that ssdt or just the table itself?

Share this post


Link to post
Share on other sites

just posted Clover b2165 for T420 at post #397

 

Update 29-Sep-2013

  • Revised DSDT (again!)
    • for Shutdown hang (thanks to TimeWalker75a)
    • for native AppleACPIPlatform kext - no need to rollback or patch this kext - use unmodified v1.8 from 10.8.5
  • Updated Clover to b2165
    • minor tweaks/refinements to config.plist (e.g. dont think darkwake is needed anymore)
    • has 2 OEM configs - 1 for high-res and 1 for low-res
    • Note: recommend use of ssdt.aml if it fits your cpu - seems to get a bit more out turbo mode (get 32x at times instead of 30x with just Clover Generate P/C states)
  • Updated FakeSMC
    • includes modified ACPI/Plugin Info.plist to remove DISABLED features so FAN speed shows up in HWMonitor (with stock AppleACPIPlatform.kext ) 

post-954945-0-08309900-1380505687_thumb.png

Share this post


Link to post
Share on other sites

verhleinix was the one who created the ssdt.aml table. I recall he may have used revo girls ssdtPRgen script? the ssdt.aml is in the clover bundle i posted in             #397            .

Hi tluck,

the script is based on RevoGirl's script modified for i-core mobile processors found at tony's side.

Mobile_ssdtPRGen.sh.zip

Share this post


Link to post
Share on other sites

Update - if you downloaded the zip bundle before now.... please redo it! I found a mistake in the DSDT.

 

(re-)posted Clover b2165 for T420 at post #397

 

Update 30-Sep-2013

  • Revised DSDT (again!)
    • for Shutdown hang (thanks to TimeWalker75a)
    • for native AppleACPIPlatform kext - no need to rollback or patch this kext - use unmodified v1.8 from 10.8.5
  • Updated Clover to b2165
    • minor tweaks/refinements to config.plist (e.g. dont think darkwake is needed anymore)
    • has 2 OEM configs - 1 for high-res and 1 for low-res
    • Note: recommend use of ssdt.aml if it fits your cpu - seems to get a bit more out turbo mode (get 32x at times instead of 30x with just Clover Generate P/C states)
  • Updated FakeSMC
    • includes modified ACPI/Plugin Info.plist to remove DISABLED features so FAN speed shows up in HWMonitor (with stock AppleACPIPlatform.kext ) 

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 fusion71au
      Clover r4542 ISO compiled with GCC and minimal config.plist compatible for use in VMWare Workstation.
       
      Tested with unlocked Workstation 14 running OSX 10.9 -->10.14 guest in Windows X64 host.
       
      Installation
      1. Download and unzip "EFI_Clover_r4542 for VMware.zip". Mount Clover-v2.4k-4542-X64.iso by double clicking on it.
      2. Mount your VM's EFI System Partition eg in terminal
      sudo diskutil mount disk0s1   3. Copy EFI folder from step 1 into the EFI partition
      4. Shutdown the VM, add bios.bootDelay = "3000" to your VM's vmx file
      5. Reboot your VM, press <F2> to access the VMware Boot Manager and add CLOVERX64.efi to the boot menu.
       
      Substitute your own unique and valid MLB and ROM variables in the /EFI/CLOVER/config.plist (Rt Variables section) to activate iMessage/Facetime on your VM.
    • By nysander
      I start this topic to make my Lenovo Thinkpad W540 usable with High Sierra
       
      I followed many guides but this one started by @tluck made me most progress: 
      My setup as in signature
       
      I will update first post with statuses of working features:
       
      Graphics:
      Nvidia Quadro - disabled
      Intel HD 4600 - working @ 1920x1080 and 1,5GB RAM (had to set ig-plaform-id as Haswell desktop, mobile do not work)
      using intelGraphicsFixUp.kext
       
      Sound:
      internal speakers and mic works with AppleACL.kext and profile 28

      USB:
      i boot MacOS from USB drive and it works, mouse and pendrive also works
      USB power not work yet, so USB WiFi dongle and iPhone connection not work (no power @ USB)
      IOReq finds only USB 3.0 controller not USB 2.0 even though I have 2 ports USB 3.0 and 2 ports USB 2.0
       
       
      Integrated Camera:
      recognised in IOReq but not working now (probably due to USB)
       
      Bluetooth:
      as USB but works without problem

      Ethernet:
      works with intelMausiEthernet.kext

      Keyboard:
      internal is PS2 so VoodooPS2Controller.kext is needed - some mappings I would like to have different but works

      Touchpad:
      works with VoodooPS2Controller.kext from @tluck topic
       
      Trackpoint:
      One time works mostly not - debugging in progress
       
      Batery Status:
      not working
       
      Integrated WiFi:
      intel -  not working
       
      Sleep / Hibernate:
      not working
       
      Backlight:
      not working
       
      Other found issues:
      besides that graphics works @ 1920x1080 and have a lots of ram window shadows (especially dock shadow) looks bad
       
      External VGA:
      not tested yet
       
      External Mini Display Port / Thunderbolt:
      not tested yet
       
      I will post my clover / debug config later
       
       
    • By MaLd0n
      First... If you need DSDT edits for SkyLake, KabyLake or CoffeeLake... -Post your full Clover folder with original tables in Origin folder(Extract with F4 in Clover boot screen) -Run it, post files generated in your desktop RunMe.app  Installation   --Create a bootable copy of macOS Sierra Check out the link http://www.insanelymac.com/forum/files/file/559-flash-drive-maker/   --Create a bootable copy of macOS HighSierra Check out the link http://diskmakerx.com/   --Install Clover in USB stick https://sourceforge.net/projects/cloverefiboot/files/Installer/   --Replace with my Clover folder  CLOVER.zip   --Install Sierra/High Sierra and boot into system!   Post Installation   --Install Clover in HDD/SSD and replace with my folder CLOVER.zip   --Reboot and activate video!   -Nvidia WebDriver Sierra http://www.insanelymac.com/forum/topic/312525-nvidia-web-driver-updates-for-macos-sierra-update-07212017/ -Nvidia WebDriver High Sierra http://www.insanelymac.com/forum/topic/324195-nvidia-web-driver-updates-for-macos-high-sierra-update-10162017/ -Cuda http://www.insanelymac.com/forum/topic/302795-cuda-90214-is-out-update-10162017/   --DSDT My DSDT with patches for Skylake DSDT.MaLd0n ASUS Z170M PLUS.zip   Patches -FIX ERRORS AND WARNINGS -HPET -SATA -SLPB -DMAC -DARWIN -LPC -XHCI -PLUGIN TYPE -HDAS to HDEF -HDEF -RTC -IRQs -SBUS -BUS1 -MCHC -ALS0 -SHUTDOWN -LAN -USBX -PMCR -EC -IMEI -PNLF -HDMI --FakeSMC
      http://www.hwsensors.com/releases   --Audio https://github.com/vit9696/AppleALC   --USB https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads   --LAN https://github.com/Mieze/IntelMausiEthernet   -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!   Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad and many, many, many others!   We're all here to have fun and learn from each other!   ENJOY!
    • By zebity
      Hi Hypervisors,
       
      EDITED - 9 JUNE 2018 - as all other issues resolved but am now stuck with QEMU Error: "PFLASH: Possible BUG - Write Block Confirm" details on testing lower in thread (to follow).
       
      I have been working to move my Late 2009 Xserve MacOS Server onto Ubuntu 18.04 LTS QEMU/KVM based virtual machine using OVMF and Clover.
       
      After much effort and testing based on the following information from: Kraxel's, Kholia, Gordon Turner and Clover site:
      https://www.kraxel.org/blog/2017/09/running-macos-as-guest-in-kvm/
      https://github.com/kholia/OSX-KVM
      https://gist.github.com/gordonturner/2a2e5ecde5e7860b52e2
      https://clover-wiki.zetam.org/Home
       
      I have now managed to get OVMF/Clover boot and install of MacOS Sierra.
       
      I started with Ubuntu 16.04 initially but this required download and compile of QEMU to get update of machines to: pc-q35-2.9 or better, so I moved to Ubuntu 18.04, which has pc-q35.2.11 available as standard.
       
      So I am now working with standard Ubuntu 18.04 LTS based systems with following packages: kvm/qemu/libvirt/bridge-utils/ovmf/virt-manager
       
      As I want to use PCIe Passthrough for a number of PCIe card currently installed in the server (SmallTree 10GbE & Areca ARC-1883 SAS RAID) I set up my machine with linux kernel boot configuration (/etc/default/grub) of: 
      GRUB_CMDLINE_LINUX_DEFAULT="iommu=1 intel_iommu=on" (as my machine is intel VT-d based HW virtualisation)
       
      This resulted in creation of a number of iommu groups (see /sys/kernel/iommu_group directory for this and this posting for information: https://forum.level1techs.com/t/ubuntu-17-04-vfio-pcie-passthrough-kernel-update-4-14-rc1/119639 , noting that Ubuntu 18.04 LTS has kernel version: 4.15.0-22-generic so there is no need to do kernel update for iommu to work).
       
      Using bare minimal Clover config.plist:
       
       
      And following Clover UEFI drivers:
       
      I can boot MacOS, but it is very very slow... it sits on the apple boot logo for over a minutes before finally moving onto the progress bar.
      The other problem I have is that no PCI or Network devices appear in the "About This Mac" System Information Report and I cannot get any network connectivity from bridged E1000 network device.
       
      Here is my virtlib.xml dump for the virtual machine:
       

      Can any one advise of whether I need to update the CLOVER config.plist to add extra items in to allow network and PCI Passthrough to work.
       
      Thank you.
       
      Regards,
       
      Zebity
       
×