[PATCH 3/3] regulator: Modify mt6315 regulator mode mask
Chen-Yu Tsai
wenst at chromium.org
Fri Aug 1 00:30:53 PDT 2025
On Fri, Aug 1, 2025 at 3:20 PM niklaus.liu <niklaus.liu at mediatek.com> wrote:
>
> Modify mt6315 regulator mode mask, compatible with all 6315 models
>
> Signed-off-by: niklaus.liu <niklaus.liu at mediatek.com>
> ---
> drivers/regulator/mt6315-regulator.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/regulator/mt6315-regulator.c b/drivers/regulator/mt6315-regulator.c
> index 2608a6652d77..092ff748fe21 100644
> --- a/drivers/regulator/mt6315-regulator.c
> +++ b/drivers/regulator/mt6315-regulator.c
> @@ -218,8 +218,10 @@ static int mt6315_regulator_probe(struct spmi_device *pdev)
> struct regmap *regmap;
> struct mt6315_chip *chip;
> struct mt_regulator_init_data *init_data;
> + struct device_node *node = pdev->dev.of_node;
> struct regulator_config config = {};
> struct regulator_dev *rdev;
> + unsigned int val = 0;
> int i;
>
> regmap = devm_regmap_init_spmi_ext(pdev, &mt6315_regmap_config);
> @@ -247,6 +249,10 @@ static int mt6315_regulator_probe(struct spmi_device *pdev)
> init_data->modeset_mask[MT6315_VBUCK1] = BIT(MT6315_VBUCK1);
> break;
> }
> +
> + if (!of_property_read_u32(node, "buck1-modeset-mask", &val))
> + init_data->modeset_mask[MT6315_VBUCK1] = val;
> +
This needs a matching change to the DT bindings.
However, please take a look at Angelo's recent series [1] for MT8196
PMICs that also adds variants of the MT6316 series regulators and how
it adds compatible strings for various parts to cover 2-phase, 3-phase,
and 4-phase settings.
Now personally I think a better way would be if we could somehow read back
a) the part number, or b) the multi-phase settings from the chip itself,
and derive `modeset_mask` automatically. Is that possible? Can MediaTek
share this information?
ChenYu
[1] https://lore.kernel.org/all/20250715140224.206329-1-angelogioacchino.delregno@collabora.com/
> for (i = MT6315_VBUCK2; i < MT6315_VBUCK_MAX; i++)
> init_data->modeset_mask[i] = BIT(i);
>
> --
> 2.46.0
>
>
More information about the Linux-mediatek
mailing list