From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E0E12C433E2 for ; Tue, 8 Sep 2020 20:14:09 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A4A46208FE for ; Tue, 8 Sep 2020 20:14:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1599596049; bh=kH3ZX6jeXwk/tHvglsarvks10HBChwFrU/V3tKKYUOU=; h=From:To:Subject:Date:In-Reply-To:References:List-ID:From; b=pZwQw5JIQSKQcUI6kwNRHwD+U0+Mz/dXnaxtcValV7Oc+SInLqPiy6Do0tlHYg7HD nvnzXG91XaLd7gHOXjHY/Ib4y/9ppWq6hH0nJYRCl/xMrtpEdcyl/trZDikQ5zTIY7 HwRS9ghPeajK2BsP5dPjc9KSlpQ6bxJ7aSE5G9yM= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730780AbgIHUNo (ORCPT ); Tue, 8 Sep 2020 16:13:44 -0400 Received: from mail.kernel.org ([198.145.29.99]:34156 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731791AbgIHUNk (ORCPT ); Tue, 8 Sep 2020 16:13:40 -0400 Received: from localhost.localdomain (unknown [194.230.155.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0C59A2145D; Tue, 8 Sep 2020 20:13:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1599596020; bh=kH3ZX6jeXwk/tHvglsarvks10HBChwFrU/V3tKKYUOU=; h=From:To:Subject:Date:In-Reply-To:References:From; b=eGBpo/kDj+x7uQmdnDxrmflNsylVVSNk0nUvRhgbbWVgUTF8RMVydYEXkft+4N1xN cl+Ky/Y71wJH8kf4KFeU5QW0q5/40VmsaHkc5vYlrpyPlT3joWWl9eZ5prfVvAHejP SUrQL5DxVZYRGZn/lj/3lgIU8oLbsRn9d3nAJv3k= From: Krzysztof Kozlowski To: Sebastian Reichel , Rob Herring , "Andrew F. Davis" , =?UTF-8?q?Pali=20Roh=C3=A1r?= , Dan Murphy , Krzysztof Kozlowski , linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 6/7] power: supply: bq27xxx: add separate flag for capacity inaccurate Date: Tue, 8 Sep 2020 22:13:18 +0200 Message-Id: <20200908201319.3567-6-krzk@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200908201319.3567-1-krzk@kernel.org> References: <20200908201319.3567-1-krzk@kernel.org> Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org bq27000, bq27010 and upcoming bq34z100 have a Capacity Inaccurate flag. However except this similarity, bq34z100 is quite different than bq27000/bq27010, so flag BQ27XXX_O_ZERO cannot be reused here. Add a new bit flag describing this capability. No functional change for bq27000 and bq27010. Signed-off-by: Krzysztof Kozlowski --- drivers/power/supply/bq27xxx_battery.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c index 88cdad0ecb08..cda03e1f9586 100644 --- a/drivers/power/supply/bq27xxx_battery.c +++ b/drivers/power/supply/bq27xxx_battery.c @@ -856,6 +856,7 @@ static struct bq27xxx_dm_reg bq27621_dm_regs[] = { #define BQ27XXX_O_RAM BIT(4) #define BQ27Z561_O_BITS BIT(5) #define BQ27XXX_O_SOC_SI BIT(6) /* SoC is single register */ +#define BQ27XXX_O_HAS_CI BIT(7) /* has Capacity Inaccurate flag */ #define BQ27XXX_DATA(ref, key, opt) { \ .opts = (opt), \ @@ -873,8 +874,8 @@ static struct { enum power_supply_property *props; size_t props_size; } bq27xxx_chip_data[] = { - [BQ27000] = BQ27XXX_DATA(bq27000, 0 , BQ27XXX_O_ZERO | BQ27XXX_O_SOC_SI), - [BQ27010] = BQ27XXX_DATA(bq27010, 0 , BQ27XXX_O_ZERO | BQ27XXX_O_SOC_SI), + [BQ27000] = BQ27XXX_DATA(bq27000, 0 , BQ27XXX_O_ZERO | BQ27XXX_O_SOC_SI | BQ27XXX_O_HAS_CI), + [BQ27010] = BQ27XXX_DATA(bq27010, 0 , BQ27XXX_O_ZERO | BQ27XXX_O_SOC_SI | BQ27XXX_O_HAS_CI), [BQ2750X] = BQ27XXX_DATA(bq2750x, 0 , BQ27XXX_O_OTDC), [BQ2751X] = BQ27XXX_DATA(bq2751x, 0 , BQ27XXX_O_OTDC), [BQ2752X] = BQ27XXX_DATA(bq2752x, 0 , BQ27XXX_O_OTDC), @@ -1659,7 +1660,7 @@ static int bq27xxx_battery_read_health(struct bq27xxx_device_info *di) void bq27xxx_battery_update(struct bq27xxx_device_info *di) { struct bq27xxx_reg_cache cache = {0, }; - bool has_ci_flag = di->opts & BQ27XXX_O_ZERO; + bool has_ci_flag = di->opts & BQ27XXX_O_HAS_CI; bool has_singe_flag = di->opts & BQ27XXX_O_ZERO; cache.flags = bq27xxx_read(di, BQ27XXX_REG_FLAGS, has_singe_flag); -- 2.17.1