-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better support for the Broadcom eMMC2 controller #20
Comments
Work in progress on an sdport-based miniport "SdHostBCME88C" that addresses these issues. UHS-1 is working. I'll probably be able to add support for DMA this week, and then I'll send a PR. There would still be some open issues to be resolved before switching to SdHostBCME88C over the existing sdbus driver.
|
Since DMA works out-of-the-box on the C0 stepping with sdbus, it's possible to add the Intel-specific _DSM method in ACPI for voltage switching, set the _CID accordingly and drop bcmemmc2. (B0 will still need it) |
Intel-specific _DSM is controlled by setting CompatType registry value, not by _CID. CompatType=7 means Medfield. CompatType=11 means BayTrail. I do not know what other side effects are introduced with these settings. |
If we give it an Intel _CID, the inbox INF will set the CompatType for us. |
One additional issue that needs some investigation is how to handle RPi's support for 8-bit data bus. I don't have solid info on this, so I may be misguided, but here is what I know:
|
The sequential R/W speeds max out at around 23-24 MB/s with a SanDisk Ultra UHS-I A1 card.
The chip can do much better than this, but it is currently constrained by the following issues:
DMA is disabled because sdbus doesn't honor the _DMA method in ACPI, so it's not able to do the required address translation without a lower filter driver.
UHS-I support is disabled because the controller can't switch the voltage in a standard way, so it's always running at 3.3V.
The text was updated successfully, but these errors were encountered: