
I was having some issues with a DM3730 properly reading the card detect on GPIO 127 and attributed it to being related to the pbias register. I have since submitted a patch to enable GPIO_127, but I am not the best approach.
On the HSMMC driver, there are explicit commands to Disable extended drain IO before changing PBIAS, because the MMC driver needs to enable the PBIAS to make the MMC/SD interface operate correctly.
I also submitted a patch to enable pbias driver found in power/regulator/pbias_regulator.c to work on omap3 boards by adding the 'compatible' options. I have been able to test that the pbias driver and it appears to have been setup to work on the omap3, but I have only tried to read the pbias values, I haven't tried to set the pbias values with it.
Two questions:
What I was wondering is if there is some method to get the PBIAS driver to set the PBIAS instead of having the HSMMC driver do it. It seems like one should be able to do this in the device tree, but it's not clear on how.
The pbias driver does not seem to have the same checks for disabling the extended drain IO before changing the PBIAS which seems to be required per the DM3730 technical reference manual. Would it make sense to do this in here, or is it just better to leave it in the MMC Driver?
adam