Hi Mark, > Mark Brown <broonie@xxxxxxxxxx> hat am 29. September 2014 um 19:13 > geschrieben: > > > > This really needs a comment to explain what on earth is going on here - > > > the whole thing with writing the same thing twice with two delays is > > > more than a little odd. It looks like the driver is trying to busy wait > > > in cases where the change happens quickly but the comments about "fast" > > > and "normal" mode make this unclear. > > > The regulator driver polls for the DC_OK bit in the power status register. > > > Quote for reference manual (p. 935): "High when switching DC-DC > > converter control loop has stabilized after a voltage target change." > > > The two loops comes from the different regulator modes > > (REGULATOR_MODE_FAST, REGULATOR_MODE_NORMAL). > > > In REGULATOR_MODE_FAST the voltage steping is disabled and changing > > voltage should be fast. In REGULATOR_MODE_NORMAL voltage steping is > > enabled and it's take a while for reaching the target voltage. > > I don't think you've fully understood what the different modes mean > here, that's not normally how a buck convertor works. The different > modes would typically control the ability of the regulator to respond > quickly to changes in load without drifting off regulation, fast mode > makes the regulator less efficient but more responsive to load changes > (probably marginally with modern regulators). It should have relatively > little to do with the ability to ramp the voltage and certainly not on > the scale there. > thanks for your explanation. Is it better to let the core handles the ramp delay instead of set_voltage_sel with a busy wait? I've found that polling DC_OK is only reliable for increasing voltages. So i think about defining ramp delay in the regulator description. Stefan -- 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