polyzargone Posted June 21, 2015 Share Posted June 21, 2015 (edited) Hello dear Latitude D830 owners ! UPDATED FOR El Capitan Final Release : WORKS 100% ! UPDATED FOR macOS Sierra 10.12 Developer Preview ! See post #9 For those who tried to install 10.11 DP1, you may have problem booting your USB stick on your system and actually end up with a "still waiting for root device" error. After some research, I finally managed to successfully boot and install El Capitan on it by patching the DSDT from original bootpack for D830 Nvidia series. The patch is quite simple and you'll just need to edit your DSDT and apply PJAlms "Basic Apple Device Renames" available here. (just follow instructions). Basically, it will change this : Device (USB2) { Name (_ADR, 0x001D0001) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake to this : Device (UHC3) { Name (_ADR, 0x001D0001) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake Also, you must change device (ECHI) to device (EHC1). Actually, this the most important edit. Renaming USBx to UHCx doesn't really matters. However on my system, I still have 1 of the 3 ports that isn't working at all (they all works fine on Yosemite). It could be related to some errors in the proposed DSDT so if you see any, please report ! Fixed ! see below. Sleep/wake don't work on the other hand . Forgot to set Hibernate mode to 0 : sudo pmset -a hibernatemode 0 [EDIT] Thanks to Pokenguyen, stinga111 & VCH888, there's a guide to fix all USB related issues. However, DSDT edits may still be usefull. [EDIT 2] Attached is customized DummyUSBEHCIPCI.kext thanks to the mentioned Guide above and updated DSDT. Also : I found out that using a MacBookPro3,1 SMBios eliminates the need of using any extra kext since all ports are already configured for use with D830 hardware : - 6 PRT in EHC1 and 4 PRT in EHC2 in OS X 10.11 IOUSBHostFamily.kext vanilla kext. So it's up to you. Note that DSDT editing from ECHI to EHC1 is still mandatory in every case. You can use the attached DSDT, it's already patched and works fine whith both Clover and Chameleon. Works with Dell Latitude D830 Nvidia QUADRO NVS 135M & Nvidia QUADRO NVS 140M Note : Files removed. Complete new set in post #9 Edited July 4, 2016 by polyzargone 1 Link to comment Share on other sites More sharing options...
polyzargone Posted September 12, 2015 Author Share Posted September 12, 2015 (edited) Now the GM is out and chances are it will be the final release, I can confirm that the DummyUSBEHCI.kext is working perfect. All USB ports are recognized and all devices mount and eject with no issue. Attached is the final version with updated dependencies (version number set to 900 so we should be fine with next updates). Make sure SIP is disabled by setting CsrActiveConfig value to 0x1 (minimum) in Clover's config.plist and Chameleon's org.chameleon.Boot.plist. For Clover users : <key>RtVariables</key> <dict> <key>BooterConfig</key> <string>0x28</string> <key>CsrActiveConfig</key> <string>0x1</string> </dict> For Chameleon (Enoch branch) users : <key>CsrActiveConfig</key> <string>1</string> Note : File removed. Complete new set in post #9 Edited October 4, 2015 by polyzargone Link to comment Share on other sites More sharing options...
Administrators Hervé Posted September 14, 2015 Administrators Share Posted September 14, 2015 I guess that setting CsrActiveConfig to 1 only disables kext signing but not FileSystem protection, i.e. if you delete a kext from /S/L/E, you still have trouble emptying the trash, right? There should be no such restrictions if you set CsrActiveConfig to 3 or 7 for instance. Having played around with various values after noticing the verbose 7bit info when booting with Enoch r2760, I believe SIP configuration is arranged as follows (sorry, I have not done much reading or research on this yet): nibble: (4) 3 2 1 | (4) 3 2 1 bits: (X) - - - | (X) - - - N/A | | | N/A | | | | | | | | | | | | | | | | | \ | | | | \ Apple Int. | | \ \ DTrace Rest. | \ Kext Sig. NVRAM Prot. \ FS Prot. Debug Rest. On the basis/assumption that Apple Internal seems disabled by default (bit set to 0) and that 4th bit of each nibble is unused, you would therefore set CsrActiveConfig to: -000x011 in binary (where x is set to 0 or 1), i.e. 0x03, i.e 3 in decimal to disable kext signing and filesystem protection -110x111 in binary (where x is set to 0 or 1), i.e. 0x63 or 0x6F, i.e 103 or 111 in decimal to disable everything If I boot 10.11DB8 with CsrActiveConfig=103, here's the result in Terminal:E6440:~ admin$ sudo csrutil statusSystem Integrity Protection status: enabled (Custom Configuration). Configuration:Apple Internal: disabledKext Signing: disabledFilesystem Protections: disabledDebugging Restrictions: disabledDTrace Restrictions: disabledNVRAM Protections: disabled This is an unsupported configuration, likely to break in the future and leave your machine in an unknown state. Link to comment Share on other sites More sharing options...
polyzargone Posted September 14, 2015 Author Share Posted September 14, 2015 Correct ! For my part, CsrActiveConfig is set to 0x3 using Clover and 103 3 using Chameleon. I believe 0x67 or 103 is not necessary for the rest of us as it disables things that probably most users doesn't even know what they are meant for (i.e. nvram protection, DTrace etc.). I think 0x3 or 3 is a good compromise. There's a good sum up of what is is what in this post at InsanelyMac (don't get me wrong, yours is very instructive too ). That said, I'm not entirely sure this post is up to date . Booting OS X 10.11GM (15A282a) with 0x3 (Clover) : MacBook-Pro:~ polyzargone$ csrutil status System Integrity Protection status: enabled (Custom Configuration). Configuration: Apple Internal: disabled Kext Signing: disabled Filesystem Protections: disabled Debugging Restrictions: enabled DTrace Restrictions: enabled NVRAM Protections: enabled This is an unsupported configuration, likely to break in the future and leave your machine in an unknown state. 1 Link to comment Share on other sites More sharing options...
Administrators Hervé Posted September 14, 2015 Administrators Share Posted September 14, 2015 I've hardly looked into this actually... I just played with CsrActiveConfig on my freshly updated E6440 this afternoon, having noticed your previous post and installed Enoch r2760 on my E6220 last night. Indeed, a value of 1 would be the absolute minimum -to disable kext signing- and a value of 3 probably preferred to support kexts full deletion/easy replacement from/in /S/L/E. cDock works much better with FileSystem protection disabled! 2 Link to comment Share on other sites More sharing options...
polyzargone Posted September 14, 2015 Author Share Posted September 14, 2015 Well now, I'm looking for a working way to install OS X 10.11 GM on the D830 using solely Chameleon (Enoch branch) and I must confess I didn't had any success so far. I tried everything and for some unknown reason, none of the kexts seems to be injected whenever I place them in Extra or E/L in the USB pen. I didn't tried in S/L/E though but I would be very surprised that's the only way to make it work… Using various revs of Enoch from r2737 to r2760 didn't change anything at all even if I can clearly see that SIP is disabled in verbose. But I will open another topic for that . Link to comment Share on other sites More sharing options...
Administrators Hervé Posted September 14, 2015 Administrators Share Posted September 14, 2015 You can possibly follow and adapt the method I used on the D630. Details posted here. Link to comment Share on other sites More sharing options...
polyzargone Posted September 14, 2015 Author Share Posted September 14, 2015 I'll give it a try, thanks ! Link to comment Share on other sites More sharing options...
polyzargone Posted October 4, 2015 Author Share Posted October 4, 2015 OK Guys ! Here's the ultimate update for D830 Nvidia users on El Capitan 10.11.1 Beta (15B22c). Fixed a weird behavior when plugging USB device in the back port as you can see here. Actually, the fix is really simple as you just have to set UsbConnector from 255 (internal) to 3 (standard USB connector) as explained in this thread. Also, I changed DummyUSBEHCIPCI.kext to USB_Injector.kext because it can be installed in EFI/CLOVER/kexts/10.11 (and most likely in Extra/Extensions though I did not test it) instead of Library/Extensions or S/L/E and is update proof and doesn't require to increase Bundle version number in info.plist as it is with Dummies.kext. Not a big deal but seems a little bit more flexible way to fix USB on El Capitan to me . Consequently, you now have to delete any DummyUSBEHCIPCI.kext wherever it is and rebuild cache in order to use the USB_Injector.kext ! This is a very important thing. Do not forget it . Finally, I also added a patch in config.plist to find any EHC1/EHC2 occurrences in DSDT and replace them by EH01/EH02 to match IONameMatch in USB_Injector.kext. You'll have to edit the DSDT by yourself in case you're using Chameleon's branch Enoch cause AFAIK, there's no way to do this with this bootlader. Patched DSDT attached in new Extra.zip, see above. Here it is : <key>Name</key> <string>DSDT.aml</string> <key>Patches</key> <array> <dict> <key>Comment</key> <string>EHC2 to EH02</string> <key>Find</key> <data> RUhDMg== </data> <key>Replace</key> <data> RUgwMg== </data> </dict> <dict> <key>Comment</key> <string>EHC1 to EH01</string> <key>Find</key> <data> RUhDMQ== </data> <key>Replace</key> <data> RUgwMQ== </data> </dict> </array> That's it. Everything should now be 100% working. Enjoy NB : The Extra.zip attached already contains a new patched DSDT with EHC1/EHC2 to EH01/EH02 for Enoch users (latest revision is strongly advised). [uPDATE] New USB_Injector.kext_v2 attached ! Hopefully, it should fix the last issue : lack of power when connecting some devices. [uPDATE 2] New simplified set of files : • CLOVER.zip file with everything configured and ready to use "as it". • Extra.zip with everything configured and ready to use "as it" (patched DSDT with renamed EHC1/EHC2 to EH01/EH02 included). Both with USB_Injector.kext_v2. [uPDATE 3] Now macOS Sierra 10.12 Ready (with some edits) : • CLOVER_Sierra.zip file with everything configured and ready to use "as it". • Extra_Sierra.zip with everything configured and ready to use "as it" (patched DSDT with renamed EHC1/EHC2 to EH01/EH02 included). SMBios changed to MacBookPro7,1 to bypass Apple's limitation for unsupported models. Your CPU must support SSE4,1 instructions ! Do NOT use any other SMBios or it will not work. Also, please note that the USBInjector.kext provided is designed for this particular SMBios so again, do not use any other one or you won"t have full USB support (most likely no USB at all). You'll need the latest version of Clover or Enoch r2839. Extra.zip CLOVER.zip Extra_Sierra.zip CLOVER_Sierra.zip 2 Link to comment Share on other sites More sharing options...
Guest Jief Posted October 14, 2015 Share Posted October 14, 2015 Hi, Thanks for how to replace DummyUSBEHCIPCI.kext by USB_Injector.kext. I spent an hour trying to make DummyUSBEHCIPCI.kext work from EFI/CLOVER/kexts/10.11... Works also on D630. Thanks a million. Jief 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