diff mbox series

mfd: bd9571mwv: add volatile register to make DVFS work

Message ID 20181003135841.4984-1-wsa+renesas@sang-engineering.com (mailing list archive)
State Accepted
Delegated to: Geert Uytterhoeven
Headers show
Series mfd: bd9571mwv: add volatile register to make DVFS work | expand

Commit Message

Wolfram Sang Oct. 3, 2018, 1:58 p.m. UTC
From: Dien Pham <dien.pham.ry@renesas.com>

Because BD9571MWV_DVFS_MONIVDAC is not defined in the volatile table,
the physical register value is not updated by regmap and DVFS doesn't
work as expected. Fix it!

Signed-off-by: Dien Pham <dien.pham.ry@renesas.com>
[wsa: rebase, add 'Fixes', reword commit message]
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Fixes: d3ea21272094 ("mfd: Add ROHM BD9571MWV-M MFD PMIC driver")
---

Grabbed from the BSP and confirmed by the datasheet. The register is RO
and reflecting states depending on other registers.

 drivers/mfd/bd9571mwv.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Wolfram Sang Nov. 9, 2018, 11:04 a.m. UTC | #1
On Wed, Oct 03, 2018 at 03:58:41PM +0200, Wolfram Sang wrote:
> From: Dien Pham <dien.pham.ry@renesas.com>
> 
> Because BD9571MWV_DVFS_MONIVDAC is not defined in the volatile table,
> the physical register value is not updated by regmap and DVFS doesn't
> work as expected. Fix it!
> 
> Signed-off-by: Dien Pham <dien.pham.ry@renesas.com>
> [wsa: rebase, add 'Fixes', reword commit message]
> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Fixes: d3ea21272094 ("mfd: Add ROHM BD9571MWV-M MFD PMIC driver")
> ---

Any blockers for this one?

> 
> Grabbed from the BSP and confirmed by the datasheet. The register is RO
> and reflecting states depending on other registers.
> 
>  drivers/mfd/bd9571mwv.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/mfd/bd9571mwv.c b/drivers/mfd/bd9571mwv.c
> index 503979c81dae..fab3cdc27ed6 100644
> --- a/drivers/mfd/bd9571mwv.c
> +++ b/drivers/mfd/bd9571mwv.c
> @@ -59,6 +59,7 @@ static const struct regmap_access_table bd9571mwv_writable_table = {
>  };
>  
>  static const struct regmap_range bd9571mwv_volatile_yes_ranges[] = {
> +	regmap_reg_range(BD9571MWV_DVFS_MONIVDAC, BD9571MWV_DVFS_MONIVDAC),
>  	regmap_reg_range(BD9571MWV_GPIO_IN, BD9571MWV_GPIO_IN),
>  	regmap_reg_range(BD9571MWV_GPIO_INT, BD9571MWV_GPIO_INT),
>  	regmap_reg_range(BD9571MWV_INT_INTREQ, BD9571MWV_INT_INTREQ),
> -- 
> 2.19.0
>
Marek Vasut Nov. 11, 2018, 1:26 p.m. UTC | #2
On 11/09/2018 12:04 PM, Wolfram Sang wrote:
> On Wed, Oct 03, 2018 at 03:58:41PM +0200, Wolfram Sang wrote:
>> From: Dien Pham <dien.pham.ry@renesas.com>
>>
>> Because BD9571MWV_DVFS_MONIVDAC is not defined in the volatile table,
>> the physical register value is not updated by regmap and DVFS doesn't
>> work as expected. Fix it!
>>
>> Signed-off-by: Dien Pham <dien.pham.ry@renesas.com>
>> [wsa: rebase, add 'Fixes', reword commit message]
>> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
>> Fixes: d3ea21272094 ("mfd: Add ROHM BD9571MWV-M MFD PMIC driver")
>> ---
> 
> Any blockers for this one?
> 
>>
>> Grabbed from the BSP and confirmed by the datasheet. The register is RO
>> and reflecting states depending on other registers.
>>
>>  drivers/mfd/bd9571mwv.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/mfd/bd9571mwv.c b/drivers/mfd/bd9571mwv.c
>> index 503979c81dae..fab3cdc27ed6 100644
>> --- a/drivers/mfd/bd9571mwv.c
>> +++ b/drivers/mfd/bd9571mwv.c
>> @@ -59,6 +59,7 @@ static const struct regmap_access_table bd9571mwv_writable_table = {
>>  };
>>  
>>  static const struct regmap_range bd9571mwv_volatile_yes_ranges[] = {
>> +	regmap_reg_range(BD9571MWV_DVFS_MONIVDAC, BD9571MWV_DVFS_MONIVDAC),
>>  	regmap_reg_range(BD9571MWV_GPIO_IN, BD9571MWV_GPIO_IN),
>>  	regmap_reg_range(BD9571MWV_GPIO_INT, BD9571MWV_GPIO_INT),
>>  	regmap_reg_range(BD9571MWV_INT_INTREQ, BD9571MWV_INT_INTREQ),
>> -- 

Makes sense,

Reviewed-by: Marek Vasut <marek.vasut@gmail.com>
Lee Jones Nov. 13, 2018, 8 a.m. UTC | #3
On Wed, 03 Oct 2018, Wolfram Sang wrote:

> From: Dien Pham <dien.pham.ry@renesas.com>
> 
> Because BD9571MWV_DVFS_MONIVDAC is not defined in the volatile table,
> the physical register value is not updated by regmap and DVFS doesn't
> work as expected. Fix it!
> 
> Signed-off-by: Dien Pham <dien.pham.ry@renesas.com>
> [wsa: rebase, add 'Fixes', reword commit message]
> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Fixes: d3ea21272094 ("mfd: Add ROHM BD9571MWV-M MFD PMIC driver")
> ---
> 
> Grabbed from the BSP and confirmed by the datasheet. The register is RO
> and reflecting states depending on other registers.
> 
>  drivers/mfd/bd9571mwv.c | 1 +
>  1 file changed, 1 insertion(+)

Applied, thanks.
diff mbox series

Patch

diff --git a/drivers/mfd/bd9571mwv.c b/drivers/mfd/bd9571mwv.c
index 503979c81dae..fab3cdc27ed6 100644
--- a/drivers/mfd/bd9571mwv.c
+++ b/drivers/mfd/bd9571mwv.c
@@ -59,6 +59,7 @@  static const struct regmap_access_table bd9571mwv_writable_table = {
 };
 
 static const struct regmap_range bd9571mwv_volatile_yes_ranges[] = {
+	regmap_reg_range(BD9571MWV_DVFS_MONIVDAC, BD9571MWV_DVFS_MONIVDAC),
 	regmap_reg_range(BD9571MWV_GPIO_IN, BD9571MWV_GPIO_IN),
 	regmap_reg_range(BD9571MWV_GPIO_INT, BD9571MWV_GPIO_INT),
 	regmap_reg_range(BD9571MWV_INT_INTREQ, BD9571MWV_INT_INTREQ),