[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ab27db32a8da1486e14722831da947d37bbdcf7d.camel@fi.rohmeurope.com>
Date: Fri, 11 Dec 2020 12:34:27 +0000
From: "Vaittinen, Matti" <Matti.Vaittinen@...rohmeurope.com>
To: "lgirdwood@...il.com" <lgirdwood@...il.com>,
"marek.vasut+renesas@...il.com" <marek.vasut+renesas@...il.com>,
"yoshihiro.shimoda.uh@...esas.com" <yoshihiro.shimoda.uh@...esas.com>,
"broonie@...nel.org" <broonie@...nel.org>,
"bgolaszewski@...libre.com" <bgolaszewski@...libre.com>,
"lee.jones@...aro.org" <lee.jones@...aro.org>,
"linus.walleij@...aro.org" <linus.walleij@...aro.org>
CC: linux-power <linux-power@...rohmeurope.com>,
"linux-gpio@...r.kernel.org" <linux-gpio@...r.kernel.org>,
"khiem.nguyen.xt@...esas.com" <khiem.nguyen.xt@...esas.com>,
"linux-renesas-soc@...r.kernel.org"
<linux-renesas-soc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 04/10] regulator: bd9571mwv: Add BD9574MWF support
Hello again Shimada-san,
On Fri, 2020-12-11 at 20:27 +0900, Yoshihiro Shimoda wrote:
> Add support for BD9574MWF which is silimar chip with BD9571MWV.
> Note that BD9574MWF doesn't support AVS and VID.
I'd like to understand what is VID?
>
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@...esas.com>
> ---
> drivers/regulator/bd9571mwv-regulator.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/regulator/bd9571mwv-regulator.c
> b/drivers/regulator/bd9571mwv-regulator.c
> index 02120b0..041339b 100644
> --- a/drivers/regulator/bd9571mwv-regulator.c
> +++ b/drivers/regulator/bd9571mwv-regulator.c
> @@ -1,6 +1,6 @@
> // SPDX-License-Identifier: GPL-2.0
> /*
> - * ROHM BD9571MWV-M regulator driver
> + * ROHM BD9571MWV-M and BD9574MWF-M regulator driver
> *
> * Copyright (C) 2017 Marek Vasut <marek.vasut+renesas@...il.com>
> *
> @@ -9,6 +9,7 @@
> * NOTE: VD09 is missing
> */
>
> +#include <linux/mfd/rohm-generic.h>
> #include <linux/module.h>
> #include <linux/of.h>
> #include <linux/platform_device.h>
> @@ -277,6 +278,7 @@ static int bd9571mwv_regulator_probe(struct
> platform_device *pdev)
> struct regulator_dev *rdev;
> unsigned int val;
> int i;
> + enum rohm_chip_type chip = platform_get_device_id(pdev)-
> >driver_data;
>
> bdreg = devm_kzalloc(&pdev->dev, sizeof(*bdreg), GFP_KERNEL);
> if (!bdreg)
> @@ -292,6 +294,9 @@ static int bd9571mwv_regulator_probe(struct
> platform_device *pdev)
> config.regmap = bdreg->regmap;
>
> for (i = 0; i < ARRAY_SIZE(regulators); i++) {
> + /* BD9574MWF supports DVFS only */
> + if (chip == ROHM_CHIP_TYPE_BD9574 && regulators[i].id
> != DVFS)
> + continue;
Does this mean that reading VD09 voltage is not supported by driver? (I
assumed VD09 initial voltage can be set from eeprom(?) and read by
driver - I may be wrong though). Perhaps it is worth mentioning in the
commit message as a driver restriction?
And just asking out of the curiosity - are the other voltage rails
listed in data-sheet (VD18, DDR0, VD33, VD09 and LDO1,...,LDO4) set-up
from DT as fixed-regulators? Any reason why they are not set-up here?
> rdev = devm_regulator_register(&pdev->dev,
> ®ulators[i],
> &config);
> if (IS_ERR(rdev)) {
> @@ -339,7 +344,8 @@ static int bd9571mwv_regulator_probe(struct
> platform_device *pdev)
> }
>
> static const struct platform_device_id
> bd9571mwv_regulator_id_table[] = {
> - { "bd9571mwv-regulator", },
> + { "bd9571mwv-regulator", ROHM_CHIP_TYPE_BD9571 },
> + { "bd9574mwf-regulator", ROHM_CHIP_TYPE_BD9574 },
> { /* sentinel */ }
> };
> MODULE_DEVICE_TABLE(platform, bd9571mwv_regulator_id_table);
Powered by blists - more mailing lists