EMlyDinEsH Posted November 30, 2012 Share Posted November 30, 2012 Hi, This is a short guide for enabling the ports VGA and HDMI(audio) in the Notebooks equipped with Intel HD3000 GPU, but I'm gonna provide details as clearly as possible to apply and understand this patch. Needed: AppleIntelSNBGraphicsFB.kext from SLE Hex fiend application to patch the kext: http://ridiculousfish.com/hexfiend/ Patched DSDT with platform id (or) SMBios of MacBookPro8,1 DSDT patch of platform id is: "AAPL,snb-platform-id", Buffer (0x04) { 0x00, 0x00, 0x01, 0x00 } Add this to the _DSM method of GFX0/IGPU or other named device found at address 0x00020000. Here is the entire DSDT patch for HD3000: Method (_DSM, 4, Serialized) { Store (Package (0x0E) { "AAPL00,backlight-control", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "AAPL00,DualLink", Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }, "graphic-options", Buffer (0x04) { 0x04, 0x00, 0x00, 0x00 }, "device-id", Buffer (0x04) { 0x16, 0x01, 0x00, 0x00 }, "hda-gfx", Buffer (0x0A) { "onboard-1" }, "AAPL,snb-platform-id", Buffer (0x04) { 0x00, 0x00, 0x01, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } DETAILS ABOUT THE CONNECTORS: Lets have a look at the connectors information table before we try to patch and enable ports.This is the Original Connectors information provided by apple in the above kext for MacBookPro8,1. 0102 0400 1007 0000 1007 0000 // No of Connectors 0503 0000 0200 0000 3000 0000 // Laptop Display Port 0205 0000 0004 0000 0700 0000 // 0304 0000 0004 0000 0900 0000 // All 3 of them are Display Ports 0406 0000 0004 0000 0900 0000 // Let me explain the above values line by line... Line #1: 01 02 04 00 10 07 00 00 10 07 00 00 In the above line, we have information regarding the number of Connectors(Ports) and that number is 4, edit this number according to your number of ports/Connectors exist in your notebook and its optional, but doing so you can have only the ports active and rest removed. Line #2: 0503 0000 0200 0000 3000 0000 This is Laptop built in screen display value where it gets detected, so we don't need to change anything here. Line #3 to #5: 0205 0000 0004 0000 0700 0000 // 0304 0000 0004 0000 0900 0000 // All 3 of them are Display Ports DVI 0406 0000 0004 0000 0900 0000 // The above 3 lines are Display ports (DVI) which can work for both DVI & HDMI, but for HDMI the audio won't work because it needs a patch like below: 0205/0304/0406 00 00 00 08 00 00 06 00 00 00 Basically, the above line applies to all 3 possible HDMI connectors that are 0205, 0304 and 0406. VGA port: Apple Mac computers do not have a VGA port, so we won't find the connector info in Apple connectors table. But the Hackintosh community has figured out the VGA code that works [found by RevoGirl (R.I.P) and bcc9 from other non-Intel GPU connectors table]. 06 02 00 00 00 01 00 00 XX 00 00 00 //VGA, xx is port number The VGA port number can be identified through Intel Registry dump (in Linux for instance). The following lines provide a sample edited connectors table with VGA and HDMI ports (HDMI configured with 0304 connector): 01 02 03 00 10 07 00 00 10 07 00 00 // 3 Connectors (built-in LVDS + HDMI + VGA) 05 03 00 00 02 00 00 00 30 00 00 00 // LVDS 03 04 00 00 00 08 00 00 06 00 00 00 // HDMI 06 02 00 00 00 01 00 00 09 00 00 00 // VGA (port number set to 09) 00 00 00 00 00 00 00 00 00 00 00 00 // NONE The above set of lines will basically enable built-in LCD + HDMI + VGA on the laptop. Note the number of connectors set to 3 in the 1st line and the last/4th connector line nulled (all set to 0) NOTE: For HDMI, you have to try each value 0205/0304/0406 to find out which connector your notebook actually uses. STEPS FOR PATCHING THE CONNECTORS: Get the File "AppleIntelSNBGraphicsFB" from AppleIntelSNBGraphicsFB.kext/Contents/MacOS folder and place it in some place for patching Open the above file from the Hex fiend application Press Command + F for Find/Replace utility Enter the following values in "find" field 0102 0400 1007 0000 1007 0000 0503 0000 0200 0000 3000 0000 0205 0000 0004 0000 0700 0000 0304 0000 0004 0000 0900 0000 0406 0000 0004 0000 0900 0000 and enter the following values in "replace" field 01 02 03 00 10 07 00 00 10 07 00 00 05 03 00 00 02 00 00 00 30 00 00 00 03 04 00 00 00 08 00 00 06 00 00 00 06 02 00 00 00 01 00 00 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 As stated in above note, sometimes your HDMI might be on a connector other than "03 04" which I've used here. In that case, try either of the following values instead of "03 04 00 00 00 08 00 00 06 00 00 00" to get HDMI working. 02 05 00 00 00 08 00 00 06 00 00 (OR) 04 06 00 00 00 08 00 00 06 00 00 and Click on Replace all button Now save the file and copy back the file to the Folder AppleIntelSNBGraphicsFB.kext/Contents/MacOS Install the patched Kext and reboot & check For HDMI Audio:We need DSDT edit and Patched AppleHDA for HDMI audio. For this, follow my guide for patching AppleHDA from here: https://osxlatitude.com/index.php?/topic/1946-complete-applehda-patching-guide/ I hope this guide helps for the people trying to get VGA and HDMI with audio. NOTE:*External display (VGA mostly) won't get detected automatically if we plug after Mac is booted, so we have to perform manual display detection through the Display Preferences panel and click on Detect Display button. *From Mountain Lion or later, we don't see Detect Display button in the Display Preferences panel. Hold the ALT or Win key (=Option) at Display Preferences panel to get the Detect Displays button. Credits go to RevoGirl(R.I.P), bcc9, toldeda and others who contributed. Link to comment Share on other sites More sharing options...
fcoldrain Posted April 23, 2014 Share Posted April 23, 2014 I made a small app by AppleScript to detect the display automatically, so that people do not need to go to Display, press the option on keyboard and detect displays every time. The method is from http://raviudeshi.com/2011/03/automatically-detect-displays, which does not work properly on OS X 10.9.2 now. I fixed this script and have made it work again. Please download it here: Detect Displays.app.zip I recommend anyone who use it to put it on desktop to make it handy. To use it you just plug in the monitor to your VGA, and click this app to detect the display. Then you should see your monitor being detected, like how you used to detect it manually. Please note: You will need to refer to http://support.apple.com/kb/HT5914 to sign this app 'so that it works without requiring repeated re-authorization' of your Accessibility permissions every time you reboot and run it. Hope this will be a life saver for everyone who needs it. Link to comment Share on other sites More sharing options...
ericw12 Posted April 23, 2014 Share Posted April 23, 2014 Why has it to be set MacBookPro8,1? Will MacBookPro8,2 or MacBookPro8,3 works? Thanks Link to comment Share on other sites More sharing options...
Administrators Hervé Posted April 23, 2014 Administrators Share Posted April 23, 2014 Because MBP8,1 is based on HD3000 GPU, unlike the MBP8,2/MBP8,3 which are based on dual GPU with ATI Radeon discrete graphics card + HD3000. Use Chameleon Wizard SMBIOS tab to check that up. Link to comment Share on other sites More sharing options...
ericw12 Posted April 24, 2014 Share Posted April 24, 2014 I see. I am using Clover to load the system, and it automatically set this to be 8.3. Do I need just change it to 8.1 in my config.plist? Thanks! Link to comment Share on other sites More sharing options...
Administrators Hervé Posted April 24, 2014 Administrators Share Posted April 24, 2014 You should always try to choose a profile that resembles your own hardware. Link to comment Share on other sites More sharing options...
ericw12 Posted April 24, 2014 Share Posted April 24, 2014 Thanks! Used chameleon wizard generated the values, and it works. Thanks! Link to comment Share on other sites More sharing options...
Administrators Hervé Posted August 19, 2015 Administrators Share Posted August 19, 2015 It pays to experiment! Following a request from a forum member, I spent some time on this for the Dell Latitude E6220 video output when laptop is docked. Result is that we can now get all output ports supported: VGA, DVI and HDMI. Full details are here. In the case of the E6220 -and this should work for all other E6x20-, the following revised patch enables all video output ports: 01 02 04 00 10 07 00 00 10 07 00 00 // vanilla: nb of connectors -> "04" 05 03 00 00 02 00 00 00 30 00 00 00 // vanilla: laptop's own LCD display 02 05 00 00 00 08 00 00 05 00 00 00 // patched: HDMI display port (built-in port) 06 02 00 00 00 04 00 00 08 00 00 00 // patched: VGA display port (built-in + docking-station port) 04 06 00 00 00 04 00 00 07 00 00 00 // patched: DVI display port (docking-station port) For DisplayPort (DP) output, any of the following will do: 02 05 00 00 00 08 00 00 06 00 00 00 // patched: DP display port (docking station); tested with DP-HDMI adapter or 04 06 00 00 00 04 00 00 06 00 00 00 // vanilla: DP display port (docking-station); tested with DP-HDMI adapter or 03 04 00 00 00 04 00 00 06 00 00 00 // vanilla: DP display port (docking-station); tested with DP screen Link to comment Share on other sites More sharing options...
DiscoDools Posted December 6, 2016 Share Posted December 6, 2016 Thanks, that fixed my HP 6460b. And I didn't need to detect display, it detected it by itself on reboot into 10.9.5. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now