lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <941689ad-746c-99fa-a8c5-e98ef769d1c9@c-mauderer.de>
Date:   Fri, 13 Jan 2017 16:54:28 +0100
From:   Christian Mauderer <oss@...auderer.de>
To:     Lee Jones <lee.jones@...aro.org>
Cc:     Chen-Yu Tsai <wens@...e.org>, linux-pm@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mfd: axp20x: Add AXP288 volatile registers.

Am 13.01.2017 um 15:01 schrieb Lee Jones:
> On Wed, 11 Jan 2017, Christian Mauderer wrote:
> 
>> The axp288_fuelgauge driver and some other axp288_xxx are using a number
>> of the registers of the chip that are changed by hardware (for example
>> charge level). Because these registers are not marked as "volatile" in
>> the regmap, a cached version is used instead of the correct register
>> value. In case of the axp288_fuelgauge that leads to a battery level
>> that only changes on reboot. This patch adds the volatile registers of
>> the chip.
>>
>> Signed-off-by: Christian Mauderer <oss@...auderer.de>
>> ---
>>  drivers/mfd/axp20x.c | 3 +++
>>  1 file changed, 3 insertions(+)
> 
> Applied, thanks.

Thank you for applying it.

> 
>> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
>> index ed918de84238..d74b3daca23f 100644
>> --- a/drivers/mfd/axp20x.c
>> +++ b/drivers/mfd/axp20x.c
>> @@ -118,7 +118,10 @@ static const struct regmap_range axp288_writeable_ranges[] = {
>>  };
>>  
>>  static const struct regmap_range axp288_volatile_ranges[] = {
>> +	regmap_reg_range(AXP20X_PWR_INPUT_STATUS, AXP20X_PWR_OP_MODE),
>>  	regmap_reg_range(AXP20X_IRQ1_EN, AXP20X_IPSOUT_V_HIGH_L),
>> +	regmap_reg_range(AXP20X_CC_CTRL, AXP288_FG_OCVL_REG),
>> +	regmap_reg_range(AXP288_FG_DES_CAP1_REG, AXP288_FG_CC_CAP_REG),
>>  };
>>  
>>  static const struct regmap_access_table axp288_writeable_table = {
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ