FireWolf Pl.

A Place of Freedom

@FireWolf3 years ago

06/15
14:30
OS X OS X El Capitan

[Unofficial] Realtek ALC Audio Script v1.0.5 with OS X El Capitan Supported

So I updated toleda’s audio_RealtekALC script to support OS X El Capitan.

Notes:

  • This is NOT AN OFFICIAL release from toleda.
  • Intel HD Graphics 4600 HDMI Audio currently is not supported. (I have no device to test, so I didn’t change the codes.)
  • Please make sure that you boot OS X El Capitan with the following essential kernel flags:

 

rootless=0 kext-dev-mode=1

Update Logs:

V1.0.5 BETA @ 2015.06.15

Add OS X El Capitan support.

0x11d41983 codec will be disabled by default in OS X 10.11.x

Supported Realtek ALC codec ids:

ALC269 (Brix Only)
ALC283 (Brix Pro & NUC)
ALC885
ALC887
ALC888
ALC889
ALC892
ALC898
ALC1150

Detailed information can be found on toleda’s Github: 

https://github.com/toleda/audio_RealtekALC

Join the discussion on insanelymac:

http://www.insanelymac.com/forum/topic/306562-applehda-for-el-capitan-discussion/

Downloads:

V1.0.5 BETA: UNOFFICIAL_audio_realtekALC-100_v1.0.5.command

[Unofficial] Realtek ALC Audio Script v1.0.5 with OS X El Capitan Supported

@FireWolf3 years ago

06/10
15:35
OS X OS X El Capitan

Realtek ALC888 OS X El Capitan Patched AppleHDA Audio Driver

 

Finally, I made my ALC888 work instead of using old AppleHDA driver.

Apple has changed the AppleHDA binary a lot, so if you are trying to use bcc’s patch-hda or toleda’s audioALC scripts, you will encounter with some issues.

(And of course you can manually modify these script to make them work fine with OS X Capitan)

Apple added a new codec id 0x11D41983 and removed 0x10EC0884, 0x1AEC87FF (or more).

Read More →

Realtek ALC888 OS X El Capitan Patched AppleHDA Audio Driver

@FireWolf3 years ago

06/9
21:17
OS X OS X El Capitan

CX20585 OS X El Capitan Patched AppleHDA Audio Driver

After I finished installing OS X El Capitan 10.11 Developer Beta 1 on my ASUS laptop, it’s time to make a patched audio driver based on native OS X El Capitan AppleHDA to make my CX20585 work.

Since I am using Clover as my bootloader, I will use Clover’s KextsToPatch to apply the binary patch.

 

Introduction:

By using Clover’s KextsToPatch, basically your don’t have to re-create a patched AppleHDA driver after every system update.

So, here is the step-by-step tutorial.

Read More →

CX20585 OS X El Capitan Patched AppleHDA Audio Driver

@FireWolf3 years ago

06/9
08:10
OS X OS X El Capitan

Installation Notes: Install OS X El Capitan 10.11 on Hackintosh

Update @ 2015.06.10

Slice updated Clover to rev3224, I will test whether it supports the first two method.

I will post the feedback later and make a detailed guide.

Thanks for following.


 

After downloading the full installer package from the Mac App Store, I quickly tried to install this new OS X 10.11 system on my hackintosh build.

Brief hardware configurations of this test machine:

CPU: Intel Core i3-530 2.93GHz
RAM: 4GB 1333MHz DDR3
Motherboard: MSI H55M-P32
GPU: MSI GeForce GTX460
LAN: Realtek RTL8111D/8168D
Sound: ALC888 (Legacy)

 

So far, OS X El Capitan 10.11 is working fine on my computer and you can take this post as a short tutorial.

Since it is obvious that Clover cannot fully support or recognize this new OS, we have to place our essential 3rd-party kernel extensions in /EFI/Clover/Kexts/Other.

So first, put the essential kernel extensions such as FakeSMC.kext into Clover’s /EFI/Clover/Kexts/Other

Basically, there are three ways to install the new-released system. However, the first two methods will end up with failure.

(1) Method 1: Upgrade directly from the current OS X.

Directly run the installer “Install OS X 10.11 Developer Beta.app” and select the target disk to begin the first installation stage.

After rebooting the system, you may find that Clover fails to inject 3rd-party kexts such as FakeSMC.kext even though you use boot with injected kexts mode.

(2) Method 2: Create a bootable installer by createinstallmedia command line tool

When using “createinstallmedia” command line tool from the OS X 10.11 installer package to create a bootable OS X 10.11 installer, you will be notified that Failed to copy the PrelinkedKernel because this file does not exist. PrelinkedKernel is just the previous kernel cache file “kernelcache” but located at /System/Library/PrelinkedKernel/ now. You can manually fix this issue by copying PrelinkedKernel to ./IABootFiles directory of your target bootable disk. However, after you reboot to Clover, you will find that Clover cannot find this bootable installer. (aka. Clover needs to be modified to support OS X El Capitan)

(3) Method 3: Create a custom installer

The third method is as usual. Mount the InstallESD.dmg and then mount the BaseSystem.dmg inside it.

Use Disk Utility to restore the BaseSystem.dmg to your USB stick or a hard drive partition and delete the alias named Packages in /System/Installation.

Then copy the Packages folder located at InstallESD.dmg to /System/Installation on your USB stick or hard drive partition.

Finally copy the BaseSystem.dmg BaseSystem.chunklist and Payload folder to the root directory of your USB stick or hard drive partition.

Then reboot to Clover, select your USB stick and boot with injected kexts, and you will see the OS X 10.11 installer.

 

Here are some screenshots during the OS X El Capitan installation:

IMG_3815

IMG_3816

 

IMG_3820

 

And here is my desktop with System Information.

BTW, the new desktop wallpapers are awesome.

 

Snip20150609_3

Snip20150609_4

 

And yes, this is the redesigned Disk Utility, wow, nothing to say……

 

Snip20150609_5

So far, the power management and speed-steps for i3-530 works fine with MacPro3,1 SMBios definition.

GTX460 works great with Clover’s Inject Nvidia = True.

ALC888 legacy version is also working by recreating a patched AppleHDA.

RTL8111D/8168D works with Rehabman’s RTL8111.kext.

 

If you have any questions, feel free to leave comments.

I will approve your comments as quickly as I could.

Also I am considering to create a short video on how to create a custom bootable installer for Hackintosh.

For real Macs users, you can directly upgrade your OS by clicking the installer package downloaded from the Mac App Store or use createinstallmedia to create a bootable usb stick. (Be sure to fix the PrelinkedKernel missing isses!!!)

 

Installation Notes: Install OS X El Capitan 10.11 on Hackintosh

@FireWolf3 years ago

06/7
08:35
OS X

RamDisk Utility for Mac OS X

RamDisk Utility for OS X

Introductions:

Ramdisk Utility is an easy light FREEWARE to create and eject RAM disks.

It also provides a user-friendly RAM disks management interface to eject a RAM disk completely.

(Note that you will be notified to backup your data before ejecting selected RAM disk. You can also disable this warning in my software.)

Designed for OS X Yosemite; Retina display supported; Software written by Swift 1.2.

Compatibility:

OS X 10.9 or later, 64-bit processor.

Also compatible with OS X PE/Recovery environment. (10.9 or later)

Supported Languages:

English, Chinese Simplified, Chinese Traditional, Japanese

Read More →

RamDisk Utility for Mac OS X

@FireWolf3 years ago

06/6
23:53
Announcements

Email Notifications are now supported

Hi,

First of all, thanks for reading and following my blog.

Now you will be notified via emails once

  • Your comments have been approved.
  • Your comments have been replied.

Note that I have been examining and will continue to examine every comments to avoid spam.

Also you have choices to be notified by emails.

 

Regards,

FireWolf

Email Notifications are now supported

@FireWolf4 years ago

04/24
15:54
OS X

[Unofficial] ssdtPRGen.sh v15.7 beta3 with Broadwell CPUs support

Note: This is NOT an official release of Pike’s ssdtPRGen.sh.

After reading Pike’s codes, I manually injected new Board-IDs and Broadwell CPUs data.

So now you can use ssdtPRGen.sh to create a custom CpuPm SSDT and make power management work properly.

(i.e. X86Platform.kext and X86PlatformShim.kext will be loaded; IOPPF: XCPM Mode can be found in Console.app.)

The following Broadwell CPUs are now supported by v15.7 beta3:

Read More →

[Unofficial] ssdtPRGen.sh v15.7 beta3 with Broadwell CPUs support

@FireWolf4 years ago

04/16
19:08
OS X

[GUIDE] Intel HD Graphics 5500 on OS X Yosemite 10.10.3

After several weeks’ work with @lisai9093, now it’s time to post a guide. 😀

GUIDE: Intel HD Graphics 5500 on OS X Yosemite 10.10.3

 Snip20150416_7

Update Logs:

V1.2 @ 2015.06.07

Layout changes due to new themes.

minimum DVMT pre-allocated memory changes to (>=) 64MB

V1.1 @ 2015.04.24

Successful cases and related guides added.

More FAQ added.

V1.0 @ 2015.04.16

initial release

Successful cases so far:

Lenovo Thinkpad Carbon X1 3rd Gen:

Intel i7-5600U with Intel HD Graphics 5500 + 1080P internal display from jcsnider.

Dell XPS 13 Touch 2015:

Intel i7-5500U with Intel HD Graphics 5500 + 3200×1800 internal display (IOKit patch needed to unlock pixel clock frequency) from frizinko.

Dell inspiration 7548:

Intel i5-5200U with Intel HD Graphics 5500 + 1080P internal display from lisai9093.

Dell inspiration 7348/7352:

Intel i5-5200U/i7-5500U with Intel HD Graphics 5500 + 1080P internal display from Frankie.

Hmm, still no response from Intel HD Graphics 5300……

Read More →

[GUIDE] Intel HD Graphics 5500 on OS X Yosemite 10.10.3

@FireWolf4 years ago

04/11
00:26
OS X

Framebuffer data extracted from AppleIntelBDWGraphicsFramebuffer binary

I manually extracted partial raw frame buffer data from Apple’s latest AppleIntelBDWGraphicsFramebuffer binary.

Some hardware ids are still unknown, as Intel only released a few CPU models.

I will try to post every frame buffer data if I have time.

Supported IDs from AppleIntelBDWGraphicsFramebuffer.kext/Contents/Info.plist
0x0BD18086: Intel Broadwell HD Graphics HAS GT1
0x0BD28086: Intel Broadwell HD Graphics HAS GT2
0x0BD38086: Intel Broadwell HD Graphics HAS GT3
0x16068086: Intel HD Graphics
0x160e8086: Intel HD Graphics
0x16168086: Intel HD Graphics 5500
0x161e8086: Intel HD Graphics 5300
0x16268086: Intel HD Graphics 6000
0x16228086: Intel Iris Pro Graphics 6200
0x16128086: Intel HD Graphics 5600
0x162b8086: Intel Iris Graphics 6100
Supported IDs from AppleIntelBDWGraphics.kext/Contents/Info.plist
0x0BD18086: Intel Broadwell HD Graphics HAS GT1
0x0BD28086: Intel Broadwell HD Graphics HAS GT2
0x0BD38086: Intel Broadwell HD Graphics HAS GT3
0x16028086: Intel HD Graphics
0x16068086: Intel HD Graphics
0x160B8086: No data
0x160A8086: No data
0x160D8086: No data
0x160E8086: No data
0x16128086: Intel HD Graphics 5600
0x16168086: Intel HD Graphics 5500
0x161B8086: No data
0x161A8086: No data
0x161D8086: No data
0x161E8086: Intel HD Graphics 5300
0x16228086: Intel Iris Pro Graphics 6200
0x16268086: Intel HD Graphics 6000
0x162B8086: Intel Iris Graphics 6100
0x162A8086: Intel Iris Pro Graphics 6300P
0x162D8086: Intel Iris Pro Graphics 6300P
0x162E8086: No data
0x16328086: No data
0x16368086: No data
0x163B8086: No data
0x163A8086: No data
0x163D8086: No data
0x163E8086: No data
All ig-platform-ids from AppleIntelBDWGraphicsFramebuffer binary

(Reference: Pike R. Alpha’s blog, original post: https://pikeralpha.wordpress.com/2015/03/13/new-ionvmefamily-kext/)

[ 1] : 0x16060000 – Broadwell GT1 (Intel HD Graphics)
[ 2] : 0x160e0000 – Broadwell GT1 (Intel HD Graphics)
[ 3] : 0x16160000 – Broadwell GT2 (Intel HD Graphics 5500)
[ 4] : 0x161e0000 – Broadwell GT2 (MacBook) (Intel HD Graphics 5300)
[ 5] : 0x16260000 – Broadwell GT3 (MacBook Air) (Intel HD Graphics 6000)
[ 6] : 0x162b0000 – Broadwell GT3 (MacBook Pro) (Intel Iris Graphics 6100)
[ 7] : 0x16220000 – Broadwell GT3 (Intel Iris Pro Graphics 6200)
[ 8] : 0x160e0001 – Broadwell GT1 (Intel HD Graphics)
[ 9] : 0x161e0001 – Broadwell GT2 (MacBook) (Intel HD Graphics 5300)
[10] : 0x16060002 – Broadwell GT1 (Intel HD Graphics)
[11] : 0x16160002 – Broadwell GT2 (Intel HD Graphics 5500)
[12] : 0x16260002 – Broadwell GT3 (MacBook Air) (Intel HD Graphics 6000)
[13] : 0x16220002 – Broadwell GT3 (Intel Iris Pro Graphics 6200)
[14] : 0x162b0002 – Broadwell GT3 (MacBook Pro) (Intel Iris Graphics 6100)
[15] : 0x16120003 – Broadwell GT2 (Intel HD Graphics 5600)
[16] : 0x162b0004 – Broadwell GT3 (MacBook Pro) (Intel Iris Graphics 6100)
[17] : 0x16260004 – Broadwell GT3 (MacBook Air) (Intel HD Graphics 6000)
[18] : 0x16260005 – Broadwell GT3 (MacBook Air) (Intel HD Graphics 6000)
[19] : 0x16260006 – Broadwell GT3 (MacBook Air) (Intel HD Graphics 6000)
Ports definitions:

0x01000000 = VGA connector
0x02000000 = LVDS connector
0x04000000 = eDP connector
0x00020000 = DVI connector
0x00040000 = DisplayPort connector
0x00080000 = HDMI connector

So here are ig-platform-ids corresponding to Broadwell-U and Core M series.
Intel HD Graphics 5300 (Device ID: 0x8086161e)
CPUs: Core-M 5Y10/5Y10a/5Y10c/5Y31/5Y51/5Y70/5Y71
ig-platform-id = 0x161e0000
 0000 1e16 0003 0303 0000 0001 0000 f000 // 16MB BIOS-allocated memory, 15MB frame buffer memory
 0000 0040 9914 0000 9914 0000 0000 0000 // 1024MB VRAM
 0000 0000 0000 0000|0000 0800 0200 0000 = LVDS connector
 3002 0000|0105 0900 0400 0000 0400 0000|= eDP connector
 0204 0900 0008 0000 8200 0000|ff00 0000 = HDMI connector
 0100 0000 4000 0000 1607 0000 0000 0800 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x161e0001
 0100 1e16 0102 0202 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 6c05 0000 6c05 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000|0000 0800 0200 0000 = LVDS connector
 3002 0000|0105 0900 0004 0000 0710 0000|= DisplayPort connector
 ff00 0000 0100 0000 4000 0000|0000 0000 = Disabled / unused VGA connector
 0000 0000 0000 0000 0204 0000 0000 0000
 0200 0000 0300 0000 00ef 1c0d 0000 0000
Intel HD Graphics 5500 (Device ID: 0x80861616)
CPUs: i3-5005U/i3-5010U/i3-5015U/i3-5020U/i5-5200U/i5-5300U/i7-5500U/i7-5600U
ig-platform-id = 0x16160000
 0000 1616 0003 0303 0000 0001 0000 f000 // 16MB BIOS-allocated memory, 15MB frame buffer memory
 0000 0040 9914 0000 9914 0000 0000 0000 // 1024MB VRAM
 0000 0000 0000 0000|0000 0800 0200 0000 = LVDS connector
 3002 0000|0105 0900 0400 0000 0400 0000|= eDP connector
 0204 0900 0008 0000 8200 0000|ff00 0000 = HDMI connector
 0100 0000 4000 0000 060b 0000 0000 0800 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x16160002
 0200 1616 0103 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 6c05 0000 6c05 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3002 0000 0105 0900 0004 0000 0705 0000 = DisplayPort connector
 0204 0a00 0004 0000 0705 0000 ff00 0000 = DisplayPort connector
 0100 0000 4000 0000 024b 0000 0505 0600 = Disabled / unused VGA connector
 0200 0000 0400 0000 80df 1710 0000 0000
Intel HD Graphics 6000 (Device ID: 0x80861626)
CPUs: i5-5250U/i5-5350U/i7-5550U/i7-5650U
ig-platform-id = 0x16260004
 0400 2616 0003 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 9914 0000 9914 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 1100 0000 0105 0900 0004 0000 0705 0000 = DisplayPort connector
 0204 0a00 0004 0000 0705 0000 ff00 0000 = DisplayPort connector
 0100 0000 4000 0000 560b 0000 0505 0500 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x16260005
 0500 2616 0103 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 d90a 0000 d90a 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3000 0000 0105 0b00 0004 0000 0705 0000 = DisplayPort connector
 0204 0b00 0004 0000 0705 0000 ff00 0000 = DisplayPort connector
 0100 0000 4000 0000 0f0b 0000 0101 0500 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x16260006 (MacBookAir7,2)
0600 2616 0103 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
0000 0060 d90a 0000 d90a 0000 0000 0000 // 1536MB VRAM
0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
3000 0000 0105 0b00 0004 0000 0705 0000 = DisplayPort connector
0204 0b00 0004 0000 0705 0000 ff00 0000 = DisplayPort connector
0100 0000 4000 0000 0f0b 0000 0101 0500 = Disabled / unused VGA connector
0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x16260002
 0200 2616 0103 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 6c05 0000 6c05 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3002 0000 0105 0900 0004 0000 0705 0000 = DisplayPort connector
 0204 0a00 0004 0000 0705 0000 ff00 0000 = DisplayPort connector
 0100 0000 4000 0000 0a4b 0000 0505 0600 = Disabled / unused VGA connector
 0200 0000 0400 0000 80df 1710 0000 0000
ig-platform-id = 0x16260000
 0000 2616 0003 0303 0000 0001 0000 f000 // 16MB BIOS-allocated memory, 15MB frame buffer memory
 0000 0040 9914 0000 9914 0000 0000 0000 // 1024MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3002 0000 0105 0900 0400 0000 0400 0000 = eDP connector
 0204 0900 0008 0000 8200 0000 ff00 0000 = HDMI connector
 0100 0000 4000 0000 060b 0000 0000 0800 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
Intel Iris Graphics 6100 (Device ID: 0x8086162b)
CPUs: i3-5157U/i5-5257U/i5-5287U/i7-5557U
ig-platform-id = 0x162b0002 ;; MacBookPro12,1
 0200 2b16 0103 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 6c05 0000 6c05 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000|0000 0800 0200 0000 = LVDS connector
 3002 0000|0105 0900 0004 0000 0705 0000|= DisplayPort connector
 0204 0a00 0004 0000 0705 0000|ff00 0000 = DisplayPort connector
 0100 0000 4000 0000 0a4b 0000 0505 0600 = Disabled / unused VGA connector
 0200 0000 0400 0000 80df 1710 0000 0000
ig-platform-id = 0x162b0000
 0000 2b16 0003 0303 0000 0001 0000 f000 // 16MB BIOS-allocated memory, 15MB frame buffer memory
 0000 0040 9914 0000 9914 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3002 0000 0105 0900 0400 0000 0400 0000 = eDP connector
 0204 0900 0008 0000 8200 0000 ff00 0000 = HDMI connector
 0100 0000 4000 0000 060b 0000 0000 0800 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x162b0004
 0400 2b16 0003 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 9914 0000 9914 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 1100 0000 0105 0900 0004 0000 0705 0000 = DisplayPort connector
 0204 0a00 0004 0000 0705 0000 ff00 0000 = DisplayPort connector
 0100 0000 4000 0000 560b 0000 0505 0500 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
Intel Iris Pro Graphics 6200: 0x80861622 (Reference: PCI Database)
CPUs: Unknown
ig-platform-id = 0x16220000
 0000 2216 0003 0303 0000 0001 0000 f000 // 16MB BIOS-allocated memory, 15MB frame buffer memory
 0000 0040 9914 0000 9914 0000 0000 0000 // 1024MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3002 0000 0105 0900 0400 0000 0400 0000 = eDP connector
 0204 0900 0008 0000 8200 0000 ff00 0000 = HDMI connector
 0100 0000 4000 0000 0e11 0000 0000 0800 = Disabled / unused VGA connector
 0000 0000 0500 0000 0000 0000 0400 0000
ig-platform-id = 0x16220002
 0200 2216 0103 0303 0000 2002 0000 5001 // 34MB BIOS-allocated memory, 21MB frame buffer memory
 0000 0060 6c05 0000 6c05 0000 0000 0000 // 1536MB VRAM
 0000 0000 0000 0000 0000 0800 0200 0000 = LVDS connector
 3002 0000 0105 0900 0004 0000 0705 0000 = Displayport connector
 0204 0a00 0004 0000 0705 0000 ff00 0000 = Displayport connector
 0100 0000 4000 0000 0a4b 0000 0505 0600 = Disabled / unused VGA connector
 0200 0000 0400 0000 80df 1710 0000 0000

Framebuffer data extracted from AppleIntelBDWGraphicsFramebuffer binary

@FireWolf4 years ago

04/5
19:28
OS X

Installation Notes: Hackintosh on a new laptop with Intel Broadwell processor [Intel HD Graphics 5500 working but not perfect]

Update 4 @ 2015.04.18 21:30 PM PDT

A full detailed guide on how to make Intel HD Graphics 5500 work is now available.
Please check https://www.firewolf.science/2015/04/guide-intel-hd-graphics-5500-on-os-x-yosemite-10-10-3/

Update 3 @ 2015.04.14 19:20 AM PDT

We somehow fixed the garbled screen issue on Monday simply by enabling Legacy Support in BIOS.
However, now comes a new issue that GPU will randomly stops working. (Kind of like Nvidia Fermi Freeze, but different.)
I have a new hypothesis and will test it later.

Update 2 @ 2015.04.12 01:50 AM PDT

Excited!!! My friend @lisai9093 and I succeeded!!!
We figured out a new and proper way/patch to pass the assertion. And no more kernel panic, no more “black screen”.
But garbled and not built-in internal screen so far. (maybe due to the DVMT in BIOS settings is 32MB; the current conclusion is that we need figure out how to unlock AMI Aptio V UEFI BIOS to access all hidden menus. So we can change DVMT pre-allocated memory size (to 64MB or more) and in theory fix the garbled screen.)
Anyway, Intel HD Graphics 5500 was recognized by OS X, and the screen resolution is correct as usual. Intel Broadwell’s framebuffer drivers were loaded properly with full QE/CI.
I also started new threads (to seek for help) on both insanelymac and tonymacx86 forum two days ago. But I haven’t updated the information in those posts. I will update those threads as soon as I have time.
http://www.insanelymac.com/forum/topic/305597-intel-hd-graphics-5500-need-some-help/
http://www.tonymacx86.com/yosemite-laptop-support/161591-intel-hd-graphics-5500-need-some-help.html

Snip20150412_3Snip20150412_4

Update @ 2015.04.10

First of all, thanks for following this post.

Well, to be honest, I need some help now, cuz I am not familiar with reverse engineering. I also plan to start a topic on insanelymac or/and tonymacx86 forum (seek for help.).

According to the kernel panic log, it is “assertion failed minStolenSize <= fStolenMemorySize” that caused kernel panic.

So basically if we can pass this assertion, kernel panic will not happen and in theory framebuffer drivers will be loaded and our graphics cards will be happy. And actually it do work in this way.

On Wednesday midnight, I read the disassemble code of AppleIntelBDWGraphicsFramebuffer binary and tried to patch it to pass the assertion.

And to my surprise, it worked. lisai9093 used my patched drivers and successfully pass the assertion. (i.e. no more kernel panic)

However, the screen just shows nothing but a mouse pointer. According to lisai9093, the movement of mouse is very smooth. The screen resolution is correct and there is no distortion.

We tried to change ig-platform-id, checked the pixel clock frequency, even changed the port, but still “black screen”.

On Thursday, I started to doubt whether I patched the binary in a right way, and the answer is definitely “NO, I WAS WRONG.”

Indeed, my patch passed the assertion, but in a wrong way. To be more specific, it seems that I accidentally changed the stolenMemory constant to 0. (not sure) (I should modify the function part to let the assertion always return true but not change the constant.)

So that’s why lisai9093’s screen showed nothing, because there is no stolen memory for the integrated graphics card to show something.

But according to his latest ioreg, we can make sure that the graphics card really works, as the framebuffer driver was loaded properly; screen resolution is correct; the internal screen was recognized correctly, the graphics card was recognized successfully (We used FakeID, hence the model in ioreg below shows Intel Iris Graphics 6100) And the verbose boot logs also prove this. [IGPU] xxxxxx showing below. (Graphics Accelerator is running and working fine.)

BDWFBLoadedSnip20150410_1Snip20150410_2Again, I am not familiar with disassemble and reverse engineering. (This is way beyond my current knowledge.)

So we need someone who is familiar with disassemble code and figure out which part of code is corresponding to the FBMemory assertion.

Here is a quicklook of partial disassemble code of AppleIntelBDWGraphicsFramebuffer binary.

And I guess offset 0x01a02c 0x01a02e OR 0x01a081 0x01a087 may be related to the FBMemory assertion.

Snip20150410_3

Last but not least, I added a new post about the framebuffer data from AppleIntelBDWGraphicsFramebuffer binary on my blog.

If you are interested in that, please have a look. 🙂

https://www.firewolf.science/2015/04/framebuffer-data-extracted-from-appleintelbdwgraphicsframebuffer-binary/


 

Recently, I worked with @lisai9093 on his new Dell Inspiron 7548 laptop with Intel’s Broadwell processor. The detailed hardware configurations are as follows.

Processor: Intel Core i5-5200U @ 2.20GHz TBF: 2.70GHz
RAM: 8GB 1600MHz
Graphics Card: Intel HD Graphics 5500 (0x80861616)
Sound Card: ALC3234 (= ALC255) (AppleHDA.kext)
Wireless: BCM94352Z (NGFF) (DSDT+FakePCIID.kext)
Screen Resolution: 1920×1080
Current OS X Version: 10.10.3 Final Version (14D131)
Current Bootloader: Clover rev3193

So far, the sound card, wireless card and battery percentage are working fine. Broadwell’s i5-5200U cannot be recognized properly (Showing Unknown in About This Mac) before injecting CPU Type by Clover. ACPI_SMC_PlatformPlugin.kext will be loaded and CPU power management cannot work properly before creating a custom CpuPm SSDT. Intel’s new integrated graphics card is problematic. Kernel panic will happen once AppleIntelBDWGraphicsFramebuffer.kext is loaded. (i.e. ig-platform-id is injected.)

For the installation part, we first used 10.10.2 (14C109) installer with enabling Haswell-E patch (KernelHaswellE) in Clover to skip the kernel check, then upgraded to 10.10.3 Beta 5, 6, 7. By injecting CPUType = 0x0606 in Clover, i5-5200U can be recognized as “Intel Core i5” with correct frequency in “About This Mac”.

BDWUAboutThisMac

After reading Pike’s ssdtPRGen.sh (v15.6), I generated a custom CpuPm SSDT by injecting new Board-IDs and information of Broadwell CPUs in his code. Now X86PlatformPlugin.kext and X86PlatformShim.kext can be loaded properly and “IOPPF: XCPM Mode” apprears in the console. However, “XCPM: P-state tables mismatch” also appears in the console due to the inappropriate SMBios(?)(not sure).

BDWCPUPM

 

Previous: (Before placing custom SSDT.aml)

Snip20150408_1

After:

BDWX86

For the graphics card, just panic if ig-platform-id is injected. We still keep trying.

FYI, here are some information related to Intel’s new integrated graphics cards.

Intel HD Graphics 5300: 0x8086161E

Intel HD Graphics 5500: 0x80861616

Intel HD Graphics 6000: 0x80861626 (MacBook Air ig-platform-id = 0x16260006)

Intel Iris Graphics 6100: 0x8086162b (MacBook Pro ig-platform-id = 0x162b0002)

Intel Iris Pro Graphics 6200: 0x80861622???

Well, this is just a quick note. As Apple released two betas this week, I guess b7 will be the final one.

Special thanks to Pike R Alpha for his amazing ssdtPRGen script.

Installation Notes: Hackintosh on a new laptop with Intel Broadwell processor [Intel HD Graphics 5500 working but not perfect]