_OSI and Windows version checks
ACPI code can use the _OSI method (implemented by the ACPI host) to check which Windows version it is running on. Most DSDT implementations will vary the USB configuration depending on the version of Windows that is running.
When running OS X, none of the checks DSDT might be doing for _OSI("Windows <version>") will return true because it only responds to "Darwin". This is the reason for the "OS Check Fix" family of DSDT patches. By patching DSDT to simulate a certain version of Windows when running Darwin, we can obtain behavior that would normally happen when running that specific version of Windows.
For 10.11, the correct Windows version simulation is system dependent. Some computers will need "Windows 8" ("Windows 2012" some "Windows 7" ("Windows 2009") and others "Windows Vista" ("Windows 2006"). Experimentation may be necessary.