Rafael, Doug Anderson <dianders@xxxxxxxxxxxx> writes: > From: Heiko Stübner <heiko@xxxxxxxxx> > > IO domain voltages on some Rockchip SoCs are variable but need to be > kept in sync between the regulators and the SoC using a special > register. > > A specific example using rk3288: > - If the regulator hooked up to a pin like SDMMC0_VDD is 3.3V then > bit 7 of GRF_IO_VSEL needs to be 0. If the regulator hooked up to > that same pin is 1.8V then bit 7 of GRF_IO_VSEL needs to be 1. > > Said another way, this driver simply handles keeping bits in the SoC's > general register file (GRF) in sync with the actual value of a voltage > hooked up to the pins. > > Note that this driver specifically doesn't include: > - any logic for deciding what voltage we should set regulators to > - any logic for deciding whether regulators (or internal SoC blocks) > should have power or not have power > > If there were some other software that had the smarts of making > decisions about regulators, it would work in conjunction with this > driver. When that other software adjusted a regulator's voltage then > this driver would handle telling the SoC about it. A good example is > vqmmc for SD. In that case the dw_mmc driver simply is told about a > regulator. It changes the regulator between 3.3V and 1.8V at the > right time. This driver notices the change and makes sure that the > SoC is on the same page. > > Signed-off-by: Heiko Stübner <heiko@xxxxxxxxx> > Signed-off-by: Doug Anderson <dianders@xxxxxxxxxxxx> > Reviewed-by: Santosh Shilimkar <santosh.shilimkar@xxxxxx> > --- > Changes in v3: > - Changed compatible string as per Santosh. Thanks, I like the new string better. > - Added code docs about the slop in 1.8V and 3.3V as per Santosh. > - Moved some #defines to the top as per Santosh. All nice changes, thanks Santosh! Reviewed-by: Kevin Hilman <khilman@xxxxxxxxxx> Rafael, how do you want to handle drivers/avs/* ? Along with Nishanth, I'm maintaining everything there currently (only one driver :)), and since I recommended $SUBJECT driver go into drivers/avs[1], I'm happy to queue it for you and update MAINTAINERS to cover drivers/avs/* instead of just smartreflex.c. Let me know how you'd like to proceed. Kevin [1] http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/286276.html -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html