| #
4cc0c573 |
| 13-Sep-2026 |
Tapio Reijonen <tapio.reijonen@vaisala.com> |
regulator: mpq4210: Drop the mod_devicetable.h include
<linux/mod_devicetable.h> is meant to go away, and this driver does not need it: <linux/i2c.h> already supplies struct i2c_device_id and <linux
regulator: mpq4210: Drop the mod_devicetable.h include
<linux/mod_devicetable.h> is meant to go away, and this driver does not need it: <linux/i2c.h> already supplies struct i2c_device_id and <linux/of.h> struct of_device_id, and both are included already.
Suggested-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com> Link: https://lore.kernel.org/r/aqRMb8q7BT3uZ9iF@monoceros Signed-off-by: Tapio Reijonen <tapio.reijonen@vaisala.com> Acked-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com> Link: https://patch.msgid.link/20260913-mpq4210-ohms-fixup-v1-3-dcff627001ff@vaisala.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
| #
69bd71e5 |
| 13-Sep-2026 |
Tapio Reijonen <tapio.reijonen@vaisala.com> |
regulator: mpq4210: Use the -ohms feedback divider property
Follow the binding rename of mps,fb-voltage-divider to mps,fb-voltage-divider-ohms.
The old name was never in a release and this driver i
regulator: mpq4210: Use the -ohms feedback divider property
Follow the binding rename of mps,fb-voltage-divider to mps,fb-voltage-divider-ohms.
The old name was never in a release and this driver is its only reader, so it is dropped rather than kept as a fallback.
Fixes: 61879d561e91 ("regulator: Add MPS MPQ4210 buck-boost regulator driver") Suggested-by: Krzysztof Kozlowski <krzk@kernel.org> Link: https://lore.kernel.org/r/20260911-gaur-of-satisfying-action-1a3b0f@quoll Signed-off-by: Tapio Reijonen <tapio.reijonen@vaisala.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Link: https://patch.msgid.link/20260913-mpq4210-ohms-fixup-v1-2-dcff627001ff@vaisala.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
| #
61879d56 |
| 10-Sep-2026 |
Tapio Reijonen <tapio.reijonen@vaisala.com> |
regulator: Add MPS MPQ4210 buck-boost regulator driver
The MPQ4210 is a 40V synchronous four-switch buck-boost controller with an I2C interface. Add a driver exposing voltage control and enable cont
regulator: Add MPS MPQ4210 buck-boost regulator driver
The MPQ4210 is a 40V synchronous four-switch buck-boost controller with an I2C interface. Add a driver exposing voltage control and enable control through the regulator interface.
The output voltage is programmed by an 11-bit feedback reference DAC with a 1mV step, split across REF_LSB[2:0] and REF_MSB[7:0], and is then scaled by the external feedback divider described in the device tree. Only 0.3V to 2.047V of that range is specified, so linear_min_sel holds the driver to it and the lower selectors are not offered. Scaled by the divider, that floor is not zero: 4.2V on a board with a gain of 14, and the core narrows regulator-min-microvolt to it.
The same divider ratio applies to the slew rate, so the four reference slew rates that the Control 1 SR field selects are scaled into a per-device ramp_delay_table and the field is exposed through regulator_set_ramp_delay_regmap(). ramp_delay is initialised from the rate SR is currently programmed for, so the core waits in proportion to the size of each change; a board that sets regulator-ramp-delay reprograms SR and the core uses that value instead.
Enabling follows the start-up sequence in the datasheet: commit the reference with the GO bit, wait 200ms, then set ENPWR. Control 1 bit 2 is documented as reserved but has to be set before the controller starts up, so probe sets it. The controller does not respond on the bus while EN is deasserted, so the enable GPIO is claimed before the first register access.
Link: https://www.monolithicpower.com/en/mpq4210.html Signed-off-by: Tapio Reijonen <tapio.reijonen@vaisala.com> Link: https://patch.msgid.link/20260910-mpq4210-regulator-v1-2-d37e208dfc8d@vaisala.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|