You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: Manual/FAQ.IntelHD.en.md
+17-5Lines changed: 17 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2358,11 +2358,23 @@ In some cases the EDID dump may be incompatible with macOS and leads to distorti
2358
2358
2359
2359
## HDMI in UHD resolution with 60FPS
2360
2360
2361
-
Add the `enable-hdmi20` property to `IGPU`, otherwise you will get a black screen.
2362
-

2363
-
Or instead of this property use the boot-arg `-cdfon`
2364
-
2365
-
In addtion to HDMI, this should be enabled on some notebooks like ThinkPad P71 / 7700HQ / HD630 / 4K, where gIOScreenLockState3 error may occur.
2361
+
Add the `enable-max-pixel-clock-override` property to `IGPU` or use the `-igfxmpc` boot-arg instead to raise the max pixel clock limit.
2362
+
This is needed for 4K@60Hz on laptops like ThinkPad P71 or XPS 15, otherwise you will get a black screen. It can also be used for 4K@60Hz over HDMI 2.0.
2363
+
2364
+

2365
+
2366
+
The `CheckTimingWithRange` function in CoreDisplay.framework (userspace) is responsible for validating display timings.
2367
+
It reads the IOFBTimingRange property, which contains the IODisplayTimingRange structure with various limits, including the max pixel clock limit.
2368
+
At least on KBL, the framebuffer driver sets the max pixel clock frequency in the IODisplayTimingRange structure to 450 MHz, which is insufficient for 4K@60Hz.
2369
+
`-igfxmpc` modifies the IODisplayTimingRange structure and raises the max pixel clock limit to 675 MHz. This will allow `CheckTimingWithRange` to succeed with 4K@60Hz displays.
2370
+
The default 675 MHz limit can be changed with the `max-pixel-clock-frequency` property in `IGPU`, which overrides the new max pixel clock limit (in hertz).
2371
+
2372
+
Another approach is to patch `CheckTimingWithRange` in CoreDisplay.framework to skip validation of the pixel clock.
2373
+
To use this patch, add the `enable-hdmi20` property to `IGPU` or use the `-cdfon` boot-arg.
2374
+
2375
+

2376
+
2377
+
`-igfxmpc` is the preferred approach to bypass the 450 MHz pixel clock limit, as `-cdfon` depends on the userspace patcher.
0 commit comments