Recently Browsing 0 members
No registered users viewing this page.
I am looking for tips on how can I patch my FrameBuffer to be able to use mobile ig-platform-id for HD 4600 Intel Graphics. ATM the only way to have recognized full resolution and memory (1,5GB) is to use 0x0d220008 desktop Haswell profile.
Problem is that on this profile backlight patches do not work. I get blank screen during boot instead of apple logo.
As RehabMan suggested in my debug topic, this is possible because of the fact that my laptop uses eDP to connect LCD, and that eDP is not fully supported. But as far as I've found T440 laptop's LCD is also connected via eDP and they work with backlight.
How can I debug / patch such situation?
I am new to hackintosh knowledge but want to make my laptop work so any suggestions and help is much appreciated.
So I got my machine working and boots every time. The only issue is, after I'm up and running I get reboots and freezes on my screen. If I have 1 ifinder window open things are fine, as soon as I open another finder window or safari and move the window around it freezes and crashes. Same when I make video big in youtube.
Does anyone know how to solve this issue?
Any help would be gladly appreciated. My specs are as follow:
Gigabyte z87x-ud7-th with i7-4770k
32gb DDR3 1600mhz
XFX R9 280X Black edition
A side note, I did flash the bios on my GPU to UEFI, not sure why it's crashing and I did try to add the vendor ID and DevID in clover with inject ATI. I also do have lilu and Whatevergreen Kext installed.
hello I am using a laptop and using the ig-platform-id 0x0a260006. I have a intel hd4600 graphics on my intel 17-4710hq cpu and currently I only have 1536mb of ram but the max my graphics can support is 2GB so I need a point in the right direction of how to go about changing this so that I can utilize all 2GB of possible intel integrated graphics. I'm trying to learn some stuff!!!
is there a patch I need to create?
is there some code I need to edit?
anything helps as I am new to hackintosh. I just installed mines like a week ago.
thanks anyone for the help.
HD5750 Framebuffer Sierra (or, what I wish people had told me about patching framebuffers in clover)By Devonavar
Putting this here for posterity in hopes it helps someone else (maybe just my future self).
I just spent 2.5 days getting my previously working HD5750 up and running after a motherboard swap. At the same time, I upgraded to Sierra.
Here's what I wish people had told me about patching your framebuffer in Clover:
Patches only take effect with "WithKexts" in boot args. At least, that was the case for me. Patches don't get recognized if they cross line breaks (yes, even in a binary file there are line breaks). Thus, attempting to patch a multi-line framebuffer fails in a single patch. I believe this is why the official "ATIConnector" patch sometimes fails. If someone had spelled out those things for me, I would have been done in a few hours, not a few days.
That said, here's my working configuration:
Asus HD5750, 1GB vRAM, Mfr ID: 0x1002 (ATI), Device ID: 0x68BE Subsystem ID (useful for matching BIOS): 0x03381043
Card on TechPowerUp: https://www.techpowerup.com/vgabios/79262/asus-hd5750-1024-100331
Working Framebuffer (note the extra 2 bytes at the end of each line compared to most examples ... I believe this is a Sierra quirk):
10 00 00 00 10 00 00 00 00 01 00 00 00 00 00 00 02 12 04 03 00 00 00 00
00 08 00 00 04 02 00 00 00 71 00 00 00 00 00 00 22 05 01 01 00 00 00 00
00 04 00 00 04 06 00 00 00 71 00 00 00 00 00 00 21 03 02 02 00 00 00 00
02 00 00 00 00 01 00 00 00 71 00 00 00 00 00 00 11 02 02 04 00 00 00 00
To get it working in Clover v2.3 r3766 (Use Clover Configurator to make your life easier):
Spoof Device ID as 0x100268B8 ("Fake ID" in "Devices") Check Inject ATI (in "Graphics") FB Name "Alouatta" (in "Graphics") Video Port "4" (in "Graphics") (Setting ports to 4 with the Alouatta personality will initially recognize both the HDMI and DVI outputs, but they will detect with the monitors swapped) Custom Boot Flag: "WithKexts" (in "Boot")
Three separate patches in "Kernel and Kext Patches", one for each output:
Name: AMD5000Controller, Find: 00040000 04060000 00710000 00000000 11020101 00000000, Replace: 00080000 04020000 00710000 00000000 22050101 00000000, Comment: HDMI Name: AMD5000Controller, Find: 00040000 04060000 00710000 00000000 22050404 00000000, Replace: 04000000 14000000 00710000 00000000 11020204 00000000, Comment: DVI Name: AMD5000Controller, Find: 02000000 00010000 19010000 00000000 12040303 00000000, Replace: 10000000 10000000 00010000 00000000 02120403 00000000, Comment: VGA (not tested)
Premade kexts for El Capitan (was working in my previous config): http://www.osx86.net/files/file/4609-hd5750-0x68be-el-capitan/ Official Clover documentation for ATIConnector patching (and the only place where WithKexts boot flag is mentioned. Doesn't mention the issue with multi-line patches: http://www.insanelymac.com/forum/topic/282787-clover-v2-instructions/?do=findComment&comment=1853099 Official Clover documentation for patching any kext (needs to mention WithKexts boot flag): http://www.insanelymac.com/forum/topic/282787-clover-v2-instructions/?do=findComment&comment=1853204 Excellent how-to guide for creating a framebuffer start to finish. Clover section doesn't mention WithKexts or multi-line issues: http://www.insanelymac.com/forum/topic/303186-how-to-modification-of-amd-fb-clover-injection/ Another good guide for framebuffer. Best technical explanation for what each section of the framebuffer means, but lack of consistent endianness gets confusing: http://www.insanelymac.com/forum/topic/273937-guide-getting-xfx-hd6850-connectors-to-work/
OK I know this is a relatively ancient system, but here it is:
I was having some free time in the summer and thought of giving my old Toshiba Satellite A300 (PSAGCE) a second try
in installing Mac OS X El Capitan with Clover. Generally, I think that this is a good hackintosh-candidate laptop, apart from
its Mobility Radeon HD 3650 GPU (DevID 0x9591).
So, I tried to follow-up guides from bcc9, mucha, slice and vlada on ATI kext patching to enable the internal LVDS display
and see what will happen. I started with the two scripts decoding the VGA Bios. My results were the following:
ATOM BIOS Rom:
SubsystemVendorID: 0x1179 SubsystemID: 0xff1c
BIOS Bootup Message:
Tosh_IEC_Potomac_M86_DDR2 M86 GDDR2_16Mx16 128bit 256MB 600e/500m
PCI ID: 1002:9591
Connector at index 0
Type [@offset 45056]: VGA (1)
Encoder [@offset 45060]: INTERNAL_KLDSCP_DAC1 (0x15)
i2cid [@offset 45146]: 0x90, OSX senseid: 0x1
Connector at index 1
Type [@offset 45066]: LVDS (7)
Encoder [@offset 45070]: INTERNAL_KLDSCP_LVTMA (0x1f)
i2cid [@offset 45169]: 0x14, OSX senseid: 0x5
Connector at index 2
Type [@offset 45076]: HDMI-A (11)
Encoder [@offset 45080]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 45192]: 0x91, OSX senseid: 0x2
Connector at index 3
Type [@offset 45086]: 9 pin DIN (9)
Encoder [@offset 45090]: INTERNAL_KLDSCP_DAC2 (0x16)
Tosh_IEC_Potomac_M86_DDR2 M86 GDDR2_16Mx16 128bit 256MB 600e/500m
Subsystem Vendor ID: 1179
Subsystem ID: ff1c
Object Header Structure Size: 266
Connector Object Table Offset: 46
Router Object Table Offset: 0
Encoder Object Table Offset: ce
Display Path Table Offset: 10
Connector Object Id  which is [VGA]
encoder obj id [0x15] which is [iNTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false
Connector Object Id  which is [LVDS]
encoder obj id [0x1f] which is [iNTERNAL_KLDSCP_LVTMA] linkb: false
Connector Object Id  which is [HDMI_TYPE_A]
encoder obj id [0x1e] which is [iNTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false
Connector Object Id  which is [DIN]
encoder obj id [0x16] which is [iNTERNAL_KLDSCP_DAC2] linkb: false
As you can see, the Bios decode scripts point out this structure:
CRTC1>DIG2>UNIPHY_KLDSKP_LVTMA>LVDS (SenseID 05 ???)
CRTC2>DAC>DAC A>VGA (SenseID 01)
CRTC2>DIG1>UNIPHY_A>HDMI (SenseID 02)
So, I tried to create a custom framebuffer string for each output:
I injected the LVDS and VGA strings for AMD3800Controller.kext in Clover. This resulted in black screen in LVDS
(nothing was showing up in system info as well), but the VGA was successfully detected and enabled. [FIRST WIN! ]
I tested it with the single monitor setting in BIOS (in previous tests with Chameleon, the change in this setting gave me
different results, I don’t know why, but they were weird - e.g. LVDS was showing up as a second VGA monitor with the
same characteristics as the VGA monitor connected when both outputs were enabled in BIOS! Apparently, Clover uses
only single monitor setting - even when LVDS+VGA setting is selected in BIOS, when Clover shows up, one monitor is off).
What was strange, was the i2cid value of LVDS (0x14). Doing some search for it, I found a thread from 0xdeadbeef
pointing that Radeon_Bios_Decode script may return wrong values about SenseID.
Also, an old thread from YannickD about this laptop on Leopard suggests that this laptop has a LVDS which behaves like
a DVI in a way (I didn’t actually understand that to be honest). So, I decided to do some trial and error tests on SenseID
and ATY-ControlFlag values of the framebuffer (I was considering Transmitter and Encoder values as well, but on HD3000
these are hardwired, so it wouldn’t make much difference). Also tried to change some settings in Clover
(Rename my GPU from OVGA to IGPU in DSDT and play with Load VBIOS and Inject EDID options in Clover).
After some (not too many to be honest! ) tests (mainly brute-force attack on framebuffer values and change of options)
I found out a setting which successfully worked on LVDS!!! My internal monitor is successfully detected and I can have
the basic 2D functions for it (resolution & colour change)! [sECOND WIN! ]
What did work was the default SenseID of the framebuffer (11 instead of 05) AND the ATY-ControlFlag for DVI
(1402 instead of 4000 - others for DVI might work as well!) PLUS the options in Clover (Rename in IGPU for DSDT,
Load VBIOS and Inject EDID, which are usual Clover settings for laptops). When tried both LVDS and VGA, both
monitors were correctly detected and working! The only strange thing was that the GPU was detected as an
ATI Radeon HD4330M instead of Mobility HD3650.
Now the bad things…
I can’t enable QE/CI acceleration, even though the DevID 9591 is included by default in ATIRadeonX2000.kext.
Apparently, the kext is loaded, but returns zero values. This is the second computer that I cannot enable because
of the damn ATIRadeonX2000.kext - YannickD says that after Snow Leopard Apple removed some
detection routines with fixed values. Has anyone here found any clues about ATI Acceleration kexts and their values?
I tested different controllers as well to see if I can get the acceleration. Results were the same for AMD2400Controller.kext,
AMD2600Controller.kext and AMD3800Controller.kext, but on AMD4600Controller.kext the system crashed and rebooted
before showing anything.
Finally, I tested the HDMI string. The result was that the monitor was successfully detected and its properties were correctly
showed up in Mac OS X, but the monitor was showing nothing (black screen). Since HD3650 can drive up to two different
outputs, maybe a special switch must be enabled for the output, or might be a transmitter-encoder issue (don’t know - didn’t
have the time to search more for it, as I was focused on the internal monitor, but it seems something minor).
This was for the Video only - I have not tested the HDMI Audio
To sum up
The framebuffer working was:
VGA (successfully detected and enabled - no QE/CI)
LVDS (successfully detected and enabled - DIFFERENT VALUES FROM SCRIPTS IN BOLD - no QE/CI)
HDMI (successfully detected but showed nothing in monitor - no QE/CI)
S-Video - not tested
Load VBIOS, Inject EDID and Rename from OVGA to IGPU in DSDT were essential for the monitors to work.
I tested these settings across different versions of Mac OS X as well, and got the same results.
I can try them on Sierra as well, but I think results will be the same.
I think there is a need to do further search about framebuffer string values and their meaning.
- IF they do not function for you DO NOT BLINDLY TRUST THEM - ESPECIALLY IF YOU GET BLACK SCREEN!!!!!!!!!
Also, it would be very good if someone could tear down the acceleration kexts (especially the ATIRadeonX2000.kext)
Thant’s all folks and sorry for my long thread!