On Thu, Sep 09, 2010 at 03:56:31PM +0300, Adrian Hunter wrote:Mark Brown wrote:
What do you mean when you say that you would like boards to "hook
directly into the regulator" - what do you want to be able to do?
Is this the notifiers? Do you need more of them?
There would need to be notifiers before and after any change to the
voltage. However the notifiers would have to be set up before or
during regulator initialisation because initialisation already can
change the voltage e.g. in set_machine_constraints.
Why do you believe these notifiers are needed?
I would expect that
anything that needs pre and post change notifications like this is
actually changing the configuration itself (since if it's that sensitive
to changes it seems likely that it wouldn't be enthused about having the
configuration changed while it's trying to do stuff).
I can't parse this at all I'm afraid. Could you be more specific about
what you mean by using enable and disable independantly of the board -
clearly the consumer drivers are already able to be board independant?
For OMAP3 (and OMAP2 in some cases) the 1st SD/SDIO/MMC controller
can operate at either 1.8V or 3V, however at 3V the board must apply
voltage level shifting (PBIAS configuation). Currently the
level-shifting is done by board code that must be called before and
after the voltage changes. The omap_hsmmc driver calls the board
code via callbacks in platform data (.before_set_reg and
.after_set_reg).
This really sounds like something that's internal to the MMC controller
driver - based on your description I'm very surprised that boards even
get visibility of this. Surely the MMC controller driver should be
taking care of configuring PBIAS itself, assuming it's something
internal to the chip?
Adding code to the regulator API so that the OMAP
MMC driver can be notified of the configuration it has applied to itself
(and any failures that ensue) feels baroque.
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html