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
| ||
|
Date: Wed, 14 Mar 2012 02:05:29 +0000 (GMT) From: ÇÔ¸íÁÖ <myungjoo.ham@...sung.com> To: bruce robertson <bruce.e.robertson@...el.com>, Anton Vorontsov <cbouatmailru@...il.com> Cc: "dirk.brandewie@...il.com" <dirk.brandewie@...il.com>, "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, ¹Ú°æ¹Î <kyungmin.park@...sung.com>, "Jason.Wortham@...im-ic.com" <Jason.Wortham@...im-ic.com> Subject: Re: Re: [PATCH 4/5] max17042: Fix value scaling for VCELL and avgVCELL bruce robertson<bruce.e.robertson@...el.com>, 2012-03-14 06:00 (GMT+09:00) > > Anton Vorontsov writes: > > > On Tue, Jan 24, 2012 at 09:26:07AM -0800, dirk.brandewie@...il.com wrote: > >> From: Bruce Robertson > >> > >> The bottom three bits of the register are don't care bits. The LSB > >> value is 625 uV. Adjust the returned values appropriately > >> > >> Signed-off-by: Bruce Robertson > >> Signed-off-by: Dirk Brandewie > >> Acked-by: MyungJoo Ham > > > > I guess this was fixed long ago by the following patch: > > > > commit cf7a8c03db792894f436db5f3ffc44d947b9b068 > > Author: MyungJoo Ham > > Date: Wed Aug 17 10:18:34 2011 +0900 > > > > max17042_battery: Bugfix of incorrect voltage register value interpretation > > > > The calculation had error in getting voltage values from > > MAX17042 registers. The least bit denotes 78.125uV (625/8). > > The multipliers I see in the patch are 83 making the voltages somewhat > high and the low 3 bits are not masked off. I'm probably misreading the code. The patch, commit cf7a8c03db, uses 78.125uV/bit, not 83uV/bit. The code before that patch uses 83uV/bit. $ git show cf7a8c03db792894f436db5f3ffc44d947b9b068 [...] diff --git a/drivers/power/max17042_battery.c b/drivers/power/max17042_battery.c index 61fb6d7..a6dc9c7 100644 --- a/drivers/power/max17042_battery.c +++ b/drivers/power/max17042_battery.c @@ -111,12 +111,12 @@ static int max17042_get_property(struct power_supply *psy, val->intval *= 10000; /* Units of LSB = 10mV */ break; case POWER_SUPPLY_PROP_VOLTAGE_NOW: - val->intval = max17042_read_reg(chip->client, - MAX17042_VCELL) * 83; /* 1000 / 12 = 83 */ + val->intval = max17042_read_reg(chip->client, MAX17042_VCELL) + * 625 / 8; break; case POWER_SUPPLY_PROP_VOLTAGE_AVG: - val->intval = max17042_read_reg(chip->client, - MAX17042_AvgVCELL) * 83; + val->intval = max17042_read_reg(chip->client, MAX17042_AvgVCELL) + * 625 / 8; break; case POWER_SUPPLY_PROP_CAPACITY: val->intval = max17042_read_reg(chip->client, > > > > > Signed-off-by: MyungJoo Ham > > Signed-off-by: Philip Rakity > > Signed-off-by: Kyungmin Park > > Signed-off-by: Anton Vorontsov > > > > Thanks, > > > -- MyungJoo Ham (ÇÔ¸íÁÖ), PHD System S/W Lab, S/W Platform Team, Software Center Samsung Electronics Cell: +82-10-6714-2858
Powered by blists - more mailing lists