From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f42.google.com (mail-ej1-f42.google.com [209.85.218.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D9C37318ECE for ; Thu, 26 Feb 2026 13:11:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111502; cv=none; b=ZOTqLbPkoboXJiJ6I3FHAiQqkGHXNBKRnTJwFD9mvZOaLBI5Q9gkgoguOb/p9V02rX7CnbBZ6rAAmK3hJVifrnPLVIqsvf1PSIzLAz3V4qd1CqAp40BgcxsZvwSdBcq4mIDy6k2vtGIjpWTNC3z7qWzn+D2/Ca5DncApe8qsdjk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111502; c=relaxed/simple; bh=CV8yI1R1vxaepaMKQg2pU15I1IQGq4B2d1c5Q8TyfT8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YYFRhYrWy69XQku0WFtDsd12822Uz4WUdyCbQ/T3Y9L+0jzgfLTV6vDAbBHGRTV5+Cml+6dVYVmfe2SYUcROYLQnnLnPuMU8yqikUTJz8MVaxLE091HBx2IEij/nSdcg+xC2BS66LotUKNq1e3mafjO7T7vEfJs8h+aNduHc2vI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=z0Q6RFkn; arc=none smtp.client-ip=209.85.218.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="z0Q6RFkn" Received: by mail-ej1-f42.google.com with SMTP id a640c23a62f3a-b9358dd7f79so105972966b.1 for ; Thu, 26 Feb 2026 05:11:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111498; x=1772716298; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=7dxIGuour1z+2vBwoz711z9H7XQ3u+zJtn7J7jgmZus=; b=z0Q6RFknwVQTzky8yekM0kmYficmX6Okzh06jDL6iPQOCqbaDqitDg6B8wR6qp49xU +Cx0zYwcTHowe4Qi3tjldRqsJ5msDpSMQlYjyf/v/LQB9RtqHdpnHMbidYi8HYYxgTC4 +sNc0fZyGDCs8A1mpPUWAN6+V/TyjkTxfUQlZUYBMvf/r6bbuY04laHVuu+U3jnJ6TGR MJf0en4q1kEw+hLC/fZvOFfuLVVynyyW6CeG9nqJs8agotBqgl8SC20o/LBW/Z1b2IoQ NNVp9i8K5heFGYsL8M/vcKZD5MimBf/DWfZgUtrMmJkjo8sirQ/JDhfDio1UfVZu7DAn rjRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111498; x=1772716298; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=7dxIGuour1z+2vBwoz711z9H7XQ3u+zJtn7J7jgmZus=; b=XkRow8hTvcV45yol4PnJ77/QW0JDJDJtyxTupX9bJ/C6B0kTp6uIEFuF0qSOX0+BuG r/kLH5w/1mZ1tKuEpYgqRlIJcY8aA6iNR6TATl4wnS6MO3T5p+fw60yOWFY3q1NGyrBS IQ8KHjoIzw7dJxdPJfBxyIKAMW2RI1sxNLpoe1Kd+E+BUkoUq/F4S2Th3aYmbmytrIiV Rj7rTDEzNA4XwMd7jRrrM2RshLtk1CpiMEOD4G/LufMSWEgjm2KhIKUbzsuM92trWqAg LEhskiggNCY23sFwHJZx6tgT1ssFFw2RWuH/+5U4qnIcGXm2q1o2ldDpk4Hogl2i8r4m aBeQ== X-Forwarded-Encrypted: i=1; AJvYcCV7PilPevgEgm3uDfjy9rBI7lvQmcUK1NvBuL1+GgNZXc1jA1eDEs8B0IJy658N7Rw8bDL6jtnG99J+LAw=@vger.kernel.org X-Gm-Message-State: AOJu0YzuBVCwP85lWK/O51upmCUUIGRc6PH5jQFrGI3PBsXaUEu2I6hO BLhRy8kg0zNRKoRWa82Eg4ck3yBtIxMWd+n1K0nJ9sxdXm7KFgyAaWrSEnbQJPmR10k= X-Gm-Gg: ATEYQzwjsELNR14cGh5QU69tkWiaayXcIXoU+GXAD0d5dwD12E1M/9OFcI8svumIrVG SgD/zx2LBK5AIoqTJl4NOBgIkE4y2/j7NQZWHF5N7EJjbdkKv3H0B+xT1n4D00HVBAbhpi27r/8 5Vma3prpVgFS/q/BZjlmmWI+ojfMsUPLaqt9Q0f8gbgOCfX5SVsw3JNIpNKZisXy3YPdF8nDhfQ +2T018jPEXL0gmo5KqcPJrpwNkkDlmh1RMfP3qIKu6gFafQFjgCARzQssDxAF4WB/zOm+SIw3vt ZCZWDCBuTqk7y0X/nHLtYxowxDtdzUbyNwUn/dTSkPyWt0zuhBzaSPITegWILCExSdd7ruWoTYL zXLkp/xriiF/R8LT6NFHKXDVeIrk3pAxVsQReNF/QSfLbLYyapY4XjGH7vYa4SMS3pkVibD5ofH oVz3BBU3qIHDN2MguC0vI1vEPLMwXZgbq1bet4MGd4uG2dhWFfagr5H38iAgufly3zwOFR1+9A+ glo1652e05D0wiSYQ== X-Received: by 2002:a17:907:a09:b0:b87:117f:b6f9 with SMTP id a640c23a62f3a-b9351466c1cmr242535766b.8.1772111497969; Thu, 26 Feb 2026 05:11:37 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:37 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:35 +0000 Subject: [PATCH 01/11] dt-bindings: power: supply: max17042: add support for max77759 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-1-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 The Maxim MAX77759 is a companion PMIC intended for use in mobile phones and tablets. It is used on Google Pixel 6 and 6 Pro (oriole and raven). Amongst others, it contains a fuel gauge that is similar to the ones supported by this binding. The fuel gauge can measure battery charge and discharge current, battery voltage, battery temperature, and the Type C connector's temperature. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/power/supply/maxim,max17042.= yaml b/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml index 14242de7fc08..055d1f2ee0ba 100644 --- a/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml +++ b/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml @@ -20,6 +20,7 @@ properties: - maxim,max17050 - maxim,max17055 - maxim,max77705-battery + - maxim,max77759-fg - maxim,max77849-battery =20 reg: @@ -28,7 +29,7 @@ properties: interrupts: maxItems: 1 description: | - The ALRT pin, an open-drain interrupt. + The ALRT pin (or FG_INTB pin on MAX77759), an open-drain interrupt. =20 maxim,rsns-microohm: $ref: /schemas/types.yaml#/definitions/uint32 --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4C41E315D40 for ; Thu, 26 Feb 2026 13:11:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111502; cv=none; b=hFIGe7dFtZLJ+o/33pAaN+hWzT5tk1/Dl/G2UJMcgcqRC+BtkY0Gx9X0csGIYDaqmsxj3RXsg/9uvK1X9X4K0To+Tgkdn4lD/nBeYA4/7/MGQCYpl4i62wT5HV5mVYt4crst7Agy+a1V4SQEOg1g7T6GzURbm8RD6v6ouNKEYkc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111502; c=relaxed/simple; bh=uM7acMEWg9xtVde6an/R0rIMKgGj7N5BbTvZVGi3OsE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Ozrj8s6w3HuHOHScHj1bzPz+PQRB3T+uNr5phYf4Joyh/Yqx3m9bQXGJn67+yrvOTfOv1Rf05wV9APgifRjof33Var3M+r8r48bOq7RIhDBv+cQyP5ioAvFPdrherCgLtqIrp9OcHfnt0YQuMwzAHtFj1XpAjL4KGjKsK5Xgadg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Cu3MHKkZ; arc=none smtp.client-ip=209.85.218.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Cu3MHKkZ" Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-b7cf4a975d2so113731566b.2 for ; Thu, 26 Feb 2026 05:11:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111499; x=1772716299; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=nnfas49B5o6rQmk/3s9tmpPhHSMTtzj52htjuhnyrV8=; b=Cu3MHKkZVtEB65OSPnmYD70WZBW0/GwOGAgzIjAw9Sg/wo+MrGfXwNXXPa/uEMx626 XBc/ZpEXuN2nImP08y45knBEV/hNKxm2kJiTsC6Q+R5+OfH3RiXPobBLxX66eFW64UUu oQTtxboW2XrDaczXM/6Rntb+8slzR5U1zVKc5H1MtbiliNjSkesTYSLaDJmXkniWPliS BC4Ezx9GKQJ67NtnWfabkarJ+y+ML5k1xZl98jKJoWdjm13PZly5qC7UX1OcXVczfHhZ nkIJSGJkpQu2f+PsL1F19XXs6njH49Lv7oQ4RCDqLuIhAjBLF9luFLVoTvYG5KUVBsBh QaSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111499; x=1772716299; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=nnfas49B5o6rQmk/3s9tmpPhHSMTtzj52htjuhnyrV8=; b=OWM8GbAaPNjT886qyRcZm52y6S4fDm8MWo6xIsfQ1wMarDF2D2KDQtabHZ5vjKk7rp tKWiKHz2rQeg92Uo7bOzdWZ3Ps6PBBaEm40Q6ktFFAkVzKI5E2ROrX+bDAB18aV52g6i 1BQ/6ASYDrmFAcH2uZxbRU75WccuP8M2TOyx2IHYCV6A6LDPQ3AJUk9P6t+LTLJ47cZD YQzSxjfx16aPOtDCzJlVWtjBLOmiLIn1kirvr1tQQEHoq8DACDzU6I5CjwIprbBHKQxR E0UMUrMeIeQSSj4iWoeFruSJ2ZNZLoGLsVKw89K1amE5BlHZjUcYkm2F2VGuZ9FMg7F+ GKiw== X-Forwarded-Encrypted: i=1; AJvYcCXF/VjbFsBTRels4LtEbuK7MHgHWYrWhdrqjw48lxpG4bEqrvQMWvQlHQW3g/ZkwIpbpYt31NZj6GW7J/c=@vger.kernel.org X-Gm-Message-State: AOJu0YzmPkF7uVt9grwvKdSRxnXjubVc+P3w9dAkPAHOoeivv5+mPYBH cOIslIwT0ncHQNMP4Cbi4bw4O4+6nOFlV8ndCfbKQ5NlAN6e07Nuvz9G8henAM4A6CU= X-Gm-Gg: ATEYQzzNm3s/5q5gO+669Ipgsxo6dB3cSPXxcQDP1+aHqwN34d/8qjKl5G+ZJgVkReZ Xmrf24HMP/6kn61c7FKzLrYpnIC1gNN/PNR6pBoD5ERLc1LkBtYLsnoJScbch1g4mhObYTZkE6T m8Rq7N3JFetoYxZ6zflhnXd/wdjdItcwEtb7bRBDFfGPyh9uNoyL0kY0N+kVldi70Au7HCp+G4S HDpJGlLazOTKHSfTrKTVqebWIK5NNH7cV4JJVHUAfIAV7D/gntwsbykGicfSKAIryWbk8+eKIuc GUtD/JvKIvskK1Qgf5UU79zoPO+7ISrls0a3hLAACbiplKF5C9CpyXpk0OqhTeHLJ0x1UJlD8E1 AWZBEWldfSz+xxeWGSn3KdeoLq2XX6hh/+yuhdAFmMLER/PYrV3POMXLRGG64PEsz96jLh+VbWh 1pxYiYlYZ1MzifLa0/7e5WEsbh+AfCGnFeFsGbVl280NJpW26GcIX+TIF4LUbksm87FSz0IFsGm xq2ZtEbHjZ/Wxh78JR5LFBnlebR X-Received: by 2002:a17:907:982:b0:b8a:8537:e399 with SMTP id a640c23a62f3a-b935b9324d7mr149288166b.48.1772111498522; Thu, 26 Feb 2026 05:11:38 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:38 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:36 +0000 Subject: [PATCH 02/11] dt-bindings: power: supply: max17042: support shunt-resistor-micro-ohms Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-2-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 This binding supports the vendor-specific property maxim,rsns-microohm to describe the value of a shunt resistor required when measuring currents. shunt-resistor-micro-ohms is a standard property with the same meaning. Standard properties should be used instead of vendor- specific ones of similar intention when possible. Allow this standard property here, while also deprecating the existing vendor-specific property maxim,rsns-microohm. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml | 6 +++= +++ 1 file changed, 6 insertions(+) diff --git a/Documentation/devicetree/bindings/power/supply/maxim,max17042.= yaml b/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml index 055d1f2ee0ba..25ea8e19b980 100644 --- a/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml +++ b/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml @@ -31,7 +31,13 @@ properties: description: | The ALRT pin (or FG_INTB pin on MAX77759), an open-drain interrupt. =20 + shunt-resistor-micro-ohms: + description: + Resistance of rsns resistor in micro Ohms (datasheet-recommended val= ue is 10000). + Defining this property enables current-sense functionality. + maxim,rsns-microohm: + deprecated: true $ref: /schemas/types.yaml#/definitions/uint32 description: | Resistance of rsns resistor in micro Ohms (datasheet-recommended val= ue is 10000). --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DB4003148CD for ; Thu, 26 Feb 2026 13:11:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111503; cv=none; b=sYyq+kmVf8QnQE43wYWe9x3ARI81dDySjMQQ24npNEoGts58uICr1njD4QHAT+2zJRvsr/9TtA61JLPI4EsmLmGp/9WKvZCO5ugjxBpxkj+apNLI4ZYPQFOfU5Falthd4ftbqOys+BMC+m3AWi7tSD1jjGRNis93Y+w+G2S4D3Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111503; c=relaxed/simple; bh=dpB7vybHvYaNtOG9GSlOptAD2SNLEmw7Ly6KU3/DX4w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TAln7APuX2WpTK4Z6+JhIWK/b5iKrNnOGFNDpKokm9c5PIh6wNggAWm9zi1VbsGzZyL9gN2K0b1Ex1wOqmgGOXUoNYOZ3UgOqoNV/P42kDcTSJTUpr/6JBPTwRJhZlgcGzzCMqFungUfevmV8VGE5f1G0olVztwTX4/8PyoGvlU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=PkM9zRLi; arc=none smtp.client-ip=209.85.218.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="PkM9zRLi" Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-b8f92f3db6fso132532466b.0 for ; Thu, 26 Feb 2026 05:11:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111499; x=1772716299; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MekPWwkWKFvLogZKhB0/TS01+mJvLYjH2vhAYXNAKWE=; b=PkM9zRLiAtgHknPed1anzYkhPyN16ZhWDuLO6YvR99zno6pRQWQg5mbFyZd0ICh9Os Z1Il9DpcajaddvBuNuX+rMz0EtqI5jq7oENGRVgcCSfvzRNsd/yafWAOrHhNTb9XavJ5 777dks2fqFI4ZCeQzVAgnVPgfe/EpXmZtUhSIvIFfLaH4fjD29TYxxcLU49qI3J4UARs NlrqAFAYwxG+yDFan+J8kLGXQ+ejlMszxUVPr2T6B4jrVOzpRyUs+16KZmTTzwYVSv7L GltH5Qewost/H5IqHJjsNX4ev91Cr+jySFbFwnwAbfFSwWXUuaeDHbzduzfzGiHky/iw aHhw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111499; x=1772716299; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=MekPWwkWKFvLogZKhB0/TS01+mJvLYjH2vhAYXNAKWE=; b=BvkUOx8JtajthC1cssy63RuC4Wj/khW9WdAZ8nV5bm5tmjVwzg4U2CDZB1G0o4ABvS O9TGB9O9Zaes3MGK+PWbZFqmtEYX5bL6XofCvyTLkDHYO7SRwlefANKTi00kEZfQDxLo XIP3j4YemrO8mVhVBiVuOQUrRbxPkrPCDavHfXFBa6FIMAI7kehRn964Rprqib8Ofvmh m+d9uqO4CcVFDF1lAfw+28q6sURezjqaCZRNZtIo0vkRUSQyCNcgffbsBNL52O/BuG1Z AYXQBAfmqJE8A9ivsc7AYdYK7q1qHyYeCZS+lBTo7EXhsAhPvcVwUcLrdLZVnn4XBtYF 6hDw== X-Forwarded-Encrypted: i=1; AJvYcCVxS4GNKFwqZmSVUNA7XL7LttQAdRg/jWclvTe4T9yB/WUBizuOQAeS+yHJNiJ/hgG8A2B8jnO1nrptcwc=@vger.kernel.org X-Gm-Message-State: AOJu0Yx6OIXf8u0eT1cndXfHfcdAbhVnE852ZAAI6VSn+7zQ7twuaWZN oEkTNTTCClg7TxqB7ZV/UvnM1yzoMr1qpH4B3j5pl+68Gnfnbsj4g5yspchLUYa/Pv8= X-Gm-Gg: ATEYQzx8ijrE96FaXwpYLRz7nxvAPARGvCdlTxDJ1k0Li70xlJkkozFov+cGsnOggXO jS7E7p3anPVNgXdpeBihALi2K+DQSdveM6bPCXyFyTAFoq0LD4rXrB+NjQ4OodsDq0dIxNSC9GK u0f5za7J/G5FG/g+E463h3gZEDFlqQH0cEyLleIJ3aCtmrSKZAGcZs97NXDnmvx4FQ8wtCjhpfw /IGFKJ8bY50o3cUU+68lbc6rb2FqbexTyGB41q/DA579618BOvog002+22TmtLqJs2R2l8xipfY Ko9iZrLX9ewCzudDnDgV9zFJLeDzuYDx/Nurpwjxhpj786JnbP/Lb0p9nDgV1OAbdrkT49oMBhU 0exH0KW8kzqqYr4D4wZP59Ay1gCEW2vcl2V5wUcV2WtBvEtoTfQxB9Rt7uyQ52q1j5wFEtNvQ7d lQRDEjQY1boLfLMbVkaJ3QlVnI6yJG0AR5Gauy1lUkF6QLtG2Mumw3VhrogsqaTaXNacQSwHqPK 2qZa5Q1CeFuBpz0FA== X-Received: by 2002:a17:907:3e21:b0:b87:15a7:85f7 with SMTP id a640c23a62f3a-b90819c0881mr1458659466b.15.1772111499094; Thu, 26 Feb 2026 05:11:39 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:38 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:37 +0000 Subject: [PATCH 03/11] dt-bindings: power: supply: max17042: drop formatting specifier | Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-3-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 | denotes a literal (preformatted) block and is not necessary here. Drop them from this file. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- .../devicetree/bindings/power/supply/maxim,max17042.yaml | 12 ++++++--= ---- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Documentation/devicetree/bindings/power/supply/maxim,max17042.= yaml b/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml index 25ea8e19b980..242b33f2bcba 100644 --- a/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml +++ b/Documentation/devicetree/bindings/power/supply/maxim,max17042.yaml @@ -28,7 +28,7 @@ properties: =20 interrupts: maxItems: 1 - description: | + description: The ALRT pin (or FG_INTB pin on MAX77759), an open-drain interrupt. =20 shunt-resistor-micro-ohms: @@ -39,31 +39,31 @@ properties: maxim,rsns-microohm: deprecated: true $ref: /schemas/types.yaml#/definitions/uint32 - description: | + description: Resistance of rsns resistor in micro Ohms (datasheet-recommended val= ue is 10000). Defining this property enables current-sense functionality. =20 maxim,cold-temp: $ref: /schemas/types.yaml#/definitions/uint32 - description: | + description: Temperature threshold to report battery as cold (in tenths of degree= Celsius). Default is not to report cold events. =20 maxim,over-heat-temp: $ref: /schemas/types.yaml#/definitions/uint32 - description: | + description: Temperature threshold to report battery as over heated (in tenths of= degree Celsius). Default is not to report over heating events. =20 maxim,dead-volt: $ref: /schemas/types.yaml#/definitions/uint32 - description: | + description: Voltage threshold to report battery as dead (in mV). Default is not to report dead battery events. =20 maxim,over-volt: $ref: /schemas/types.yaml#/definitions/uint32 - description: | + description: Voltage threshold to report battery as over voltage (in mV). Default is not to report over-voltage events. =20 --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5C728318EE9 for ; Thu, 26 Feb 2026 13:11:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111503; cv=none; b=Im8xbvtPh9ndiSV3Z6jKV3WCBnoFc6m11tIW874gf5orL/5zBEwb4JF31B01Bkn51yri4eHEtrxZfmP+DMuurLMD5R2L2ffQtYEAK9xs2gCdvecon7OX43ykbO5GytZyrMj4QJslQa2QjM5+OE/rVnYePe4KDo67fT/oNguRgl8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111503; c=relaxed/simple; bh=lSJZAVOIGRRjZDHP74fEsn8JPurwxlVbyJ+3JsP+JrI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rX9HpMRq4OrLhUfs7A8f1oetJYrFLz3auTGAoHJSBTB7p7A5L7n7o2Rx+Bz4sEKc/USLBTLvtHTOB72RNPB2MpAGaLRDSOHnSAvWot5pDI8G7X/HoE9iB6OEkn/02WbnxpX4GIPr2nAhZm2niCgqjEfl5V4/97dHLjqQp1gEgwg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=eudkCm8O; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="eudkCm8O" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-b936331787bso65268366b.3 for ; Thu, 26 Feb 2026 05:11:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111500; x=1772716300; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=okHhXV7tE4rEJ4xtM8jTlPpMycDWeme/AEi2JC9Gktg=; b=eudkCm8OhhHcko4F2htjd0SaU6gNs5UK9zc9irI0FM1DV7AZNIiHreOdw8B2p3cogW 9HlQfudTVP3xkYOSmg7hzaPK37mHfUARZlq7Jg5Kadr1gOnX3KbyPIjdVd8YlQjfcp85 +1wI5+qsao0+qExsLFAEehwbUruTHAGx+DVjq5hf5tZjrUCAzyy25+jSduG5U3R+f/kB cNzuazjEtnRAgquJa7ToSUmrUV6kEhOrZrrisjmDBK/XygH50MhCwiXtADISMmn+SgI7 wDQMRk9uXxdxsYYE3lnwMsyJ1rEj/R2SQMO+vJGytGShplSLFzbhECyteRT105LupMaY LLKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111500; x=1772716300; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=okHhXV7tE4rEJ4xtM8jTlPpMycDWeme/AEi2JC9Gktg=; b=DPFqnqgoyjabPfqbAwNYi5sOg1UW+LqBUUK1LLP52jJiFYq3Zv5LYFAGoO+nzamXCa pH1wOyK3nX0upQWP2lwouYoqJYP04kDID26ET67paYfliym92uwBkQi3E2yitBM8iusI a5+t9z4uIYCVmksUMylYX4CV62OXrkx8oYcTtWLvKhHJUMvNvZs7ple8YCTL7iFgu6a1 +/DFv7J1KGLP85FYVQVaB1kyi2YCxwUUMxqBEeOh16jvYBtRDcXFxl1RxHdQSFewzDvF xUXN/EOb8EBsaF2WZUt9IaG2ea0ZKgYjIASbbLR0wll536ERWH4MUs/r2XFKMGSqOidC 3HUA== X-Forwarded-Encrypted: i=1; AJvYcCV1am/fh4BfI30QUr3d41ucOlnKoi9wHKcp14wOEPm57X7U+MRV+TYSMT85krJlGt77ztlCNqMG2Cvwtxw=@vger.kernel.org X-Gm-Message-State: AOJu0Yw4ff+xUJIE/hf6rqvXHuGql3K+Bot2EsVPRM3gYzFePbFd/D8J ROSiZXGX3pg14iHF3sq7L3wjGrC4dWzjGX2FicqK/OTVJLyDRtZ9MBYv5xPUkJY6Hmg= X-Gm-Gg: ATEYQzw5MXlDXWFNs/A0a7qO3uEXVOApDq9QK/F7fYNyiGFdRqz8dTy5y78qA2+ImJP qwGkeulBADh6ppVqaz7f1pxex5/uQdm1RA2qLWxi7fsQlJH0fFt2TRYLuPfOCp8qV1vsEb5aQQh GmfhXP2dDyXHqd7CdagN+08yy4UOG7ZOCl8GH3Fadd8YM47DFuc0RWAMk8+mGFpPKYR+AAgQBlK puh6ha8QGk+jyIIgsJQ+J++U4MrwK9ZZQVhqk4TuuyPNsJFf9STTTNUqfkZ34uwi2m2fo6lRljb I2WOfYF29EGQru5F25X6p3GV/FzPrVIk9Rb6b95IEHcC+gcUhbfTpI8HHQpSUQW5RdIXhS4TDen /Y9srz2ux0yKZMfao7QCoaooSI2m5FXslmZhWyj63dKuAPUJ3SBsULBvnRFjY+pjabtEV7FZMoe hRv4OSbAdTkXFzYwjagH9fPSjNdfMEcy8NI+6c0ePPa6tgdommCkjcFUBhwGHxxfMEyVlZ6l1eG oMv2UAeNyLg/TnUWw== X-Received: by 2002:a17:907:3d92:b0:b8f:7014:8438 with SMTP id a640c23a62f3a-b908194a87cmr1253974466b.7.1772111499667; Thu, 26 Feb 2026 05:11:39 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:39 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:38 +0000 Subject: [PATCH 04/11] power: supply: max17042: fix a comment typo (then -> than) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-4-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 Fix this trivial typo where than should be used instead of then. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index acea176101fa..07759d4fdc37 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -131,7 +131,7 @@ static int max17042_get_status(struct max17042_chip *ch= ip, int *status) * FullCAP to match RepCap when it detects end of charging. * * When this cycle the battery gets charged to a higher (calculated) - * capacity then the previous cycle then FullCAP will get updated + * capacity than the previous cycle then FullCAP will get updated * continuously once end-of-charge detection kicks in, so allow the * 2 to differ a bit. */ --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ed1-f45.google.com (mail-ed1-f45.google.com [209.85.208.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3F635313295 for ; Thu, 26 Feb 2026 13:11:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111504; cv=none; b=hJNYBupM3pxi8uCvIAOA3JRtSNu1KVbd2j/F8oh57wJ4itdp0LtVyfjKsD3X47TKwGoQP7zSe6wOwHcc2ndbFFEhw82deQZ3sRYIB3uVDW8uUDXP+GJflRiOxLaA+W/WkoZ8QDdwweHhoZH0qb0jvSIEijwkVEKB96cdsWVLd3Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111504; c=relaxed/simple; bh=dN8f41bDXLag1KExFhMc74SNVuHCSIm9nPSwzqJfuzA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rlELgXHIXQDaoR9z/VF5TerJQ04rUA5V0pucrq6Mi301lq1iYGhG6ujYuAzH5Y2P8VidXQAerkmUh9hGwJ16p0V7+wJ8lN9bRr6VL/dJ2qKycvmmj7WLdJHZspWjcq3kHzQaPUSGubXckJ3wNfKPU3vPy0/8i3DJ/AeR+1Kbwa8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=UXlzJYkb; arc=none smtp.client-ip=209.85.208.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="UXlzJYkb" Received: by mail-ed1-f45.google.com with SMTP id 4fb4d7f45d1cf-65a2fea1a1eso3121662a12.0 for ; Thu, 26 Feb 2026 05:11:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111500; x=1772716300; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ELA1QB+7rfEMiXDUeYSPxVC8r4onmGwJXoRsl094MSo=; b=UXlzJYkb+u8ztZa2t9jj4bEuALmwysSjAcEXqGby6LKrZiNp4AXo7brDlZhkmDhYoY jJyOJREbj6+k23EGXNHMB0lE7uqZrUz4QYTqrC4mDFbBSpf4bvshEkrXomrocvWOzuzA /qWrQ8vO4IBjTMHXlr37M7lBg9UhszB43in6Ptu3x29bnUVslSPCxRE90Xr/CXZ9G2zF tiK5u+/VdIOYPhmQL+RGgC4ku7hfsJ2uZZNGCl4EtYtuiHHzjpvz8Ex0C132pM95fMxa OETDkpuSPrb/m7aBXt+G+F4mTpuxeYYn1AWn7qUlPF9vI2P1lYdhTMijzwWIBpqddhgu gZqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111500; x=1772716300; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=ELA1QB+7rfEMiXDUeYSPxVC8r4onmGwJXoRsl094MSo=; b=ZSQtgSwpvNGlVpu7QhqyEXgdjMOamUulyjZFeAfULOTmU2ExP1KIG2pMz7PmQa27+X BRNstH3bNZuEy2cRMPPjrFtedrlwapcWRKg2/k2IgJ49DapvS9FddHJyA9rxYx5tlOx/ ir5NVxE/x87zBlmUf1uNHHOaYNP+t7UOjAUdXwMgSjUh+u9q0tysOLJ41gCV4Jue4+9k q2U2GFpexH36i90ZLeWdquoytdKDEX+n+hD/tM4g7M4N8kUkNNSO/qR3nEztjO5vB+KK VYlu0SgF720i2u/5ytBpauOsfCpLVYEhEqqkqPzEUccTXSZ8KtJ/18JLoSFto1eCxzlg PUQA== X-Forwarded-Encrypted: i=1; AJvYcCV2NO0NPlmtTDtxEj9ghxOMurVIPxJz2cLP2GFYuCkl/Sw1zG+xJbkXHIqKSWnzWk6v7Gsb51YHf0aUUZw=@vger.kernel.org X-Gm-Message-State: AOJu0YyFxaO3fob4ejTyKOqEUALerjvj0yD1ag8IlJHUDezr1Kyo5g8S AVhyTdj4K3ziApMhu4Wm1euBCy55D+m4MtzYn5CwOLLpY6ZcJUb9aUahRcjcfAXha1c= X-Gm-Gg: ATEYQzx7+/y0xr1n0H5bgO+tWzgIy07XIpuERfNqXc4A0ZexP8VCukcsV46Mp7AXAcF gfo5aJhmrZM+l9no1n5r7bZIf1aTDWhBChU9FFq7O+a5gXuUFXaMIbi7DnuUNgArzaIeB/HA644 lZHgFMQst3rkV6tKBg7sldK/d3W5iFSTrRWF7oGAHRQyj5LO95ih4sOS09UBQs3lxS2PlHFGUsf BJ/Gp4/QhVRdF1GaFl1dMkIrTLNw1ZNyxBzrf1/Avw0POZj0bUyZbyUnNylevEhf76WTMwkprLP iJg3AXNa7Z/aura0CGusrQszZpS7qfxDUU/E+Xq6TqhH4FwyaMbvSdX2HVQg9/VedxRjKFBMwhq TZHZAl+6wlU9JQC12vQSiz3jbZp42K+NTPY5Y8Drdb4l6576iQP+GNkKZUAm7X64f3lp0w+Nx6T sDIyegJK5ffxtC7rfBilOWB2S8EHVyf3x91GWuXf9Mj2uRLwAoUDtQZXiq9KeQfdV3yRkLvG7ok 8xFpKMt6ovagZs4Jw== X-Received: by 2002:a17:907:cd07:b0:b8f:c684:db37 with SMTP id a640c23a62f3a-b9356f47682mr164714966b.9.1772111500272; Thu, 26 Feb 2026 05:11:40 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:39 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:39 +0000 Subject: [PATCH 05/11] power: supply: max17042: use dev_err_probe() where appropriate Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-5-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 dev_err_probe() exists to simplify code, harmonise error messages, and set the deferred probe reason if relevant - there's no reason not to use it here. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index 07759d4fdc37..b9277f81a25d 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -1053,16 +1053,14 @@ static int max17042_probe(struct i2c_client *client= , struct device *dev, int irq chip->dev =3D dev; chip->chip_type =3D chip_type; chip->regmap =3D devm_regmap_init_i2c(client, &max17042_regmap_config); - if (IS_ERR(chip->regmap)) { - dev_err(dev, "Failed to initialize regmap\n"); - return -EINVAL; - } + if (IS_ERR(chip->regmap)) + return dev_err_probe(dev, PTR_ERR(chip->regmap), + "Failed to initialize regmap\n"); =20 chip->pdata =3D max17042_get_pdata(chip); - if (!chip->pdata) { - dev_err(dev, "no platform data provided\n"); - return -EINVAL; - } + if (!chip->pdata) + return dev_err_probe(dev, -EINVAL, + "no platform data provided\n"); =20 dev_set_drvdata(dev, chip); psy_cfg.drv_data =3D chip; @@ -1090,10 +1088,9 @@ static int max17042_probe(struct i2c_client *client,= struct device *dev, int irq =20 chip->battery =3D devm_power_supply_register(dev, max17042_desc, &psy_cfg); - if (IS_ERR(chip->battery)) { - dev_err(dev, "failed: power supply register\n"); - return PTR_ERR(chip->battery); - } + if (IS_ERR(chip->battery)) + return dev_err_probe(dev, PTR_ERR(chip->battery), + "failed: power supply register\n"); =20 if (irq) { unsigned int flags =3D IRQF_ONESHOT | IRQF_SHARED | IRQF_PROBE_SHARED; --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C214E320CBE for ; Thu, 26 Feb 2026 13:11:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111505; cv=none; b=VlEYUotoZQq3JUBE6AbtCxZxu0MwlVj8QHrXUxKnQ1zUei0KuGDlqezTugGmMILWeUmQc42lArqQ+G1+Pa7sXydl74c4Q4Id/bIm8aClNHIX/mOZxEpEeeKY9sO0NchTx9vfqSIBIgcAt3vWWYal9bJAOs/4pYpGuE9w2xzaDdI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111505; c=relaxed/simple; bh=eh1OY1ieLLdHnT7gZwSOwUnROhsTRrF71czKCjiixts=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MwLlkWSnO5Bm2tza1JWVp8UPENuSnNmUGyxpp2SCSsduMgUWHKDXwiXgpB/INedOZ1SWcjciQWFk89qzsxRDf5yRnw1i9SWqbCyNFKh2AN31ldWCRJeVTexfnB0VIHRzEpZa4WGFs9v4JblI9y/kwRCqy7WzBfUVvt7IFwn6Wmk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=QKN/acmA; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="QKN/acmA" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-b90bc00578cso125371166b.0 for ; Thu, 26 Feb 2026 05:11:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111501; x=1772716301; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=c6Q/YbctU2cng/xKxSbyuYnqAnOaNtvn3Ivyo/NwaTY=; b=QKN/acmARLYDJhLlKJil0cPrQHhlvzBrhslXhmBvlYhJqJAO6Bg4W5/h6fTGF6UOJl 4qZaP3vjEvR4adtEMzoBQP9wiIMDEloFcAbgHRSlLIi+f1r9pxX8NAA3lUyqQa4eQewL VE0M6XPB4Nplz54ojR7cAA5cbQim+GL0u9D21F0m3+UyT+sn3MlWT1rC+jSELLpI42B4 i1cewpQvjcxqWCCA1r0KfXyWho3ht5dyO7upeZ6dWixSyAaSoAmGG0A17qasYHsSDrx2 5xQJ0ggPlrdtQ9cdZwzLaPYiJhMFro6c0EV5WCLNt+dvKGBkUd6YSHuBiHDrWQIE80h1 wCrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111501; x=1772716301; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=c6Q/YbctU2cng/xKxSbyuYnqAnOaNtvn3Ivyo/NwaTY=; b=loNKtGy+0PiO8npMiRN/0NFFTlRNhbQqSze7j/zOBETUP9ZK3xkg9+R4kMi1IYkHLM /WVTPCWZpm5HeqknoCc3Q7nAaKaeOwLE86lMxabpYENEFEqCw2SHDe27LVadXofEfs7n kJgSPmfjA8/8QlE/ACBE6GC3aqfEGgnGnJKDqwIVVzjCCONlynDIVJ70zxeU7WxUtgal aBTB649Qw3ppd74JDXQoREbfnXwJLdr8kMbK/uJ7qpXFxMUXj4xNmlnOo2pyHswNSEm1 P6PwM5s07udsOigC0rKq460ShEYmcdGNC7yl1bpjXZyZts4eriiQc742iW8ZUpFeJOnV N44Q== X-Forwarded-Encrypted: i=1; AJvYcCUNNTxkQspRiA/An09ilm2H3CWTSf1NbE244DL45LpdeP/KRsK6QLTfINDAXJEnTlopoLxAKRcqShOXfq8=@vger.kernel.org X-Gm-Message-State: AOJu0YyPOoLRj/0VCS9b8nQCd2pmv3suQ1JiNY+heKXUD98U6sSc7Q1+ mHDVRD++RKSRr410lA5yH3O+bW7wsFUW+lh6+uet1hz9w1gk+sCUYZyMyI88Ucpwi+A= X-Gm-Gg: ATEYQzzKuNwspFVU8JQxhzAKH2P+kaPnfeKB+Nd8i1xPlkFugi0yh9Ibppad1Vvo8Ye 5fBlHPdhn5N0G8sSmOoSeW8Y2XoC5z9jqXf2kuSpKZTm14qdoJPp3GuTwaDPy5Mk8wWWrzhrzWO ywvP8UzjrlfpRmgiHGrpAKV5bdqYTsRgKpWAG3/7TK2/m2dMa32/HGh2IsRIEAHVQBGtgwmYDsD zalpTk3y7x1UaaXfrRDr6KrT9xQqGWQeSHmcvwxavRbpYFc90KlIe1flVl7RcaVz0CIeUFfHIVI /uAbVVk6HP+cGe8EBtO+qmgrtlFL59mqIVbWU2jIWZz6SdfkGcXSk1XOtIWipF1PaWwSmBReySw PhjD4cR5C7ZRbsChcR08+2v3IqneUpcgl646F5PScMajbN5mpTTR3CzDauYKZIL6X7xia4+T04H c5BN+TCuQAZ3uDNHzwLdIMD3mv8EJcLDopfYay4dMm9WT1hueAQO4d31AdYcf0rwxPfE5BVLsgZ pRjNhcUZ/OKbA+biE9FCQUeoZjg X-Received: by 2002:a17:907:78c:b0:b90:ba11:1694 with SMTP id a640c23a62f3a-b935b936384mr131201466b.50.1772111500895; Thu, 26 Feb 2026 05:11:40 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:40 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:40 +0000 Subject: [PATCH 06/11] power: supply: max17042: avoid overflow when determining health Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-6-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 If vmax has the default value of INT_MAX (e.g. because not specified in DT), battery health is reported as over-voltage. This is because adding any value to vmax (the vmax tolerance in this case) causes it to wrap around, making it negative and smaller than the measured battery voltage. Avoid that by using size_add(). Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index b9277f81a25d..8808c0d2ad10 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -201,7 +201,11 @@ static int max17042_get_battery_health(struct max17042= _chip *chip, int *health) goto out; } =20 - if (vbatt > chip->pdata->vmax + MAX17042_VMAX_TOLERANCE) { + /* avoid + * /sys/class/power_supply/max170xx_battery/health:Over voltage + * due to overflow + */ + if (vbatt > size_add(chip->pdata->vmax, MAX17042_VMAX_TOLERANCE)) { *health =3D POWER_SUPPLY_HEALTH_OVERVOLTAGE; goto out; } --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 27EB432570A for ; Thu, 26 Feb 2026 13:11:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111506; cv=none; b=hRbNaNzQKxG70o4aRtbJ8PIbRfKU8wjV9e4yVRpjDJdUSuxrQLjQ4b3B+AW+FKgTYLG3FZhK9GfPhIyHz201lNkEfX3Rll5LtUWnqoRCvfabJEJTT1yjwsvGFqiS8s167ZRTg8vnWZKCUCFo1oB4uKqENDYcKcWFLCEwxaosoNg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111506; c=relaxed/simple; bh=CTmFEqd4z7gM9BpiQXC8TftzHTevIiLfsiyczPYt5VE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=R4y4WpmtEvM5jpilHRFULBe/XWY+ijb7KgFz0f35BNSsfApYebRCWOCMjv+ld88Zpk5tEnXgl36pAgpYPGvM4MhZs/5bOBliBtZrUyIrBQnwwnqijbW2lfqO7FFeJSbeTT4pvByRZlnKYp6koC7uDt6t4eCQuXsBgzqBSS1yGDY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=vaPeWzeu; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="vaPeWzeu" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-b8845cb580bso103174366b.3 for ; Thu, 26 Feb 2026 05:11:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111502; x=1772716302; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=doSnaoOeWo4jS3UXOttanh09pOHZ+ZihIcXNRAknjGs=; b=vaPeWzeuDnQKkkgrqhCFab/T2fyx4GQ535y/mawvR9tZ8dG90inrcE8UEr2qlw7TQq Fc3bakWZUwRAJgPu7acLMEnEvUtpChlLMPP09QhMA8kq0EIyRm6BujFyG7RNd/0+GIKl hZLuIVysBS0k/72boDLN7xNDKVtgTOi1cgSyPydhq5YFX52oIcCuipvnwl8kxhZO0xWW RWiiqSEM2rUqeHhWWGrUNQFWMHtYc1UKh0jHC0rvjvW1DxQBWfBizSiE1ckgIO+3VEK3 26qCn13QdLnzycxpJalSwc9iXzb8xNgvSSarWDWmJWjZa+64peQmmbl6itALWHAQ08D6 wDiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111502; x=1772716302; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=doSnaoOeWo4jS3UXOttanh09pOHZ+ZihIcXNRAknjGs=; b=ICXbYdGpQJ1ZmWNft6/53/1z65FHAvJsKwQoAOLWTUSftZ14LuMuloTZ83wiWZ9vvA pbWyWXVcSVkOfS/vVpaEfNv37S931pmoL0WASOJYfDZLfhu3YCMmp8pQkG/tNosO3QBG E48pasJMQnhSlDMA2CdU1cvAN4izN4017v5aFtopGKuDwmYxeCuOIk/vbVY6m8K2w3Bp +LX0CYOZbXpdX3yH2sLAqDBqGYgXPEfHxtEcFM3Kt5SPgUl/rSY+S3ugve7/AJ0S7h0q HoOTgRLuIjQ2gbxltJG6XqxtVxVOs76RNv5yaraKOZyRa5pD7015ZA73S7kidSlxn0ZT R92A== X-Forwarded-Encrypted: i=1; AJvYcCV0jjdvGaCkTPpjynX4w4qh51FBH1BEhZ5hj11YSr5QeHg20PeCE8y0dCHj2X+fgRbzJds/6qBpIhkCMKo=@vger.kernel.org X-Gm-Message-State: AOJu0Yze1qRBCcyP/eLuleLRD6hrKBTpVexY3x3Et6WqNi85PyopwDBJ Yk9o8vSorcYD4CjFefkNoLRaYbJx6Z/5AALSMJupkMQEDlpox0P70OVZ22CfhSLPW3Q= X-Gm-Gg: ATEYQzy59jEU74RwBRmzh/YO1rbvBsAGeIhXMS4+Tp1pcYt03QnivxByPdqFTGSFBwz HaIP4o6H4k3HSMFoFoVUr/FhZnXjKt0CChDZtUXnoWlHeOYuA+uX6HE5CjdX2jtM4VzmdQPhylC IMhkdmoCq1zvH1NhCSdUJ5JN7Uqy5XDdrp2mBLoII4+b7FCHCw5kBwgdpXfbliBx39iGX+sgm9m lX0dUGIhyVPJ3Wc+P5aDb7VT4kMRQAr0CKqp8BfFdJKaD8PzdBJ1dxjq3P0uu8GgJAUoQm/ePnj lXzw+AAtWPfLG0EiyQs5krT8LYBmzfRbbeHUA8eFXsPcBEaBLPr/L1pODOOfEQznLx4FMfnNnh5 Ushgg7T6KiD7awoBJefVdROHYPAZt5u11lVXWhghWTbByfSHzUiCNAykGBydV3Gd4HY2RO9z8P3 JhIPN/oQxIx/2lacUQTNXRp7Z0kwCO9ijrKA8hd/4uhNtkYJtY56Bl7L/z3GlNj72q1q0j30DNJ 56+nuuNWaanuxmWIQ== X-Received: by 2002:a17:906:9fc5:b0:b8f:7aa8:d9a4 with SMTP id a640c23a62f3a-b93514dcbe7mr261352866b.20.1772111502212; Thu, 26 Feb 2026 05:11:42 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:41 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:41 +0000 Subject: [PATCH 07/11] power: supply: max17042: time to empty is meaningless when charging Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-7-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 When charging, the fuel gauge reports U16_MAX as time to empty. Ignoring this special case (as this driver currently does), causes the remaining time to be reported as ~102hours, which is incorrect. Update the code to not return anything in this case. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index 8808c0d2ad10..bae0670e2496 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -434,6 +434,10 @@ static int max17042_get_property(struct power_supply *= psy, if (ret < 0) return ret; =20 + /* when charging, the value is not meaningful */ + if (data =3D=3D U16_MAX) + return -ENODATA; + val->intval =3D data * 5625 / 1000; break; default: --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AB8B1328B7D for ; Thu, 26 Feb 2026 13:11:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111506; cv=none; b=gx4wrH7kkYWgV8pIkYMPR+ydLCp+vQHIcbmm2rl8mK6EAe9AOd+vI5hl1lpgE0qfkmY2eUhjoxobfHWw8dytnKMtOKvfZVLiUzih6yK2PUBEomIWXxzoJydityaMgtenee3PI7vm5nfvKtSPewXVEfWhdEDndCGOIv0QFjSAwoI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111506; c=relaxed/simple; bh=ntS4fqPIioaK4GOorQ6OXd2YXpStLXdHLtH4yKTAvDM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pFjGWxrgvMp5/2gSO/k9pX+z4sKkZYMs7OYWnim7QtJTRvHPipQ3hTNwxFD7ghqSUNZW6fwUeZB6uOcCE4Eslzd8N9+jYROhizqy79DcSDUr8auyQtQHftQIKoToi3T11eMEzsPsjb6ap3XX3r9nxdJ09htcs63aoVRgafwn/kg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=pQs3pBbL; arc=none smtp.client-ip=209.85.218.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="pQs3pBbL" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-b8f992167dcso107181966b.1 for ; Thu, 26 Feb 2026 05:11:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111503; x=1772716303; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=h6y+YqcmDlZaWuwEmsiNt0O5Q0Y06fca5UIfK5pVano=; b=pQs3pBbL+vdmdoEeSUwrdt85jxhVilgo+AXYsadcnFTojBGMHp03//aT3qdTquJs/q cXEAGtqZ2MbI4yvujLjd/memVs4KD4fFELt1htAMwhoPzOztEz0VFAIhnq1xA3Igligw IKDbjZk5Aw4mDGbGfvGqDDk10t8EUkAZ5UlbhWS/29FbbAIUs3x1kAu/dMp5WRaPdq1y ZeLAwGmlA34Rem6uM8yvXkAEYZ7Ji3mrLlWcfxfCiTOu2g+f/T94z7DO77vGUFuFlOnz iR9dDOzNSJIZrriud3TOAo9romiVk3/1K5T7rwSZHRbzvS5TGIvsdSjnMHQidJoPWrpd 5Vpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111503; x=1772716303; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=h6y+YqcmDlZaWuwEmsiNt0O5Q0Y06fca5UIfK5pVano=; b=BsRx4qfIcSmwlvCWrYaKdeMiSjrOTghgA3dKhU/z33SuIw/LcSKvmwKNmMtzG4iPkX FsRFw0txuOH47V1PwQPrAvFwrKa/3zZwpaHoCHf78Fx6ME0Hyz+N4bMQNyOWmR30T/nq Rk/c9rYJr4uZoGPghndaq4hLphBzGfuMTZinxLG3EJY1SIAH5FcU8WtAAWMnxXIN5WrW c9ABK6N/AVLJs4GoAMsxTwnKYp9NTBuY7rD8qSTZsqEriUblgYYbjHfQhCjrGRICo3ac 29i1wl5Mfpt6ZADJKRZ7JAWSWXoGFuOHeMslYpjAUTIhwnZDoXF/4yuVHmYti3fNFB18 qaug== X-Forwarded-Encrypted: i=1; AJvYcCWALxMNGdw4r+qo4A/7d3g2d0ztM4nsOn5/P7ArCcnSs1onBNgyUrAyDMQXQlI4LRc8SHkPkIPpPl50s2U=@vger.kernel.org X-Gm-Message-State: AOJu0YzDXj5gPxD+wtEjgjk2MdqKRp236g2fDAq2MR4A/8IXE+30Twch Ec/AEmqTbL8W6yFV98dUpYqzc1PHDojfySRxKeRj4578ZgJZJV/JlLTEfp/WPrku3BG0A2Amt3f 2s1H3hAg= X-Gm-Gg: ATEYQzztetxAgJ0UQ6EhHoXZRHYEEcZLnB7m91oQNAMxr6K0O0TsMInm+PPff0nV+fL T+nBYctkCilm5z4vOjpENGtgr3xZ6tGod1FlnQLEauUGQBCK7PwUMRr1bksUpiXJUAi8WFPuGuU xQLlyumIpM/CWFFoqLHcJQ6aYSq+tKp6pasyeD9Fqka5pP7GQdUkpzMTuUec7LP1LwfkXal3Xiu 7mv/B1ry69SmnJFfWnwaaPwj2rESonlGH0OOolfztJ04Wmm64HU8M+k304YEOmlBkUpgoOJhxoK G088eFuE3HSXXV0KH3oB2m5QgeZcPO8CypJSkJG+D312tfGykMNsaUMb9wEhJRJSZhLVA2JBhgX k8Od/BC7g5/eA2/R7ZQnfoDuSiHsXlnEQdlSNK4LWZ8eAi16qGRGHW4DjeSAtYodtDzDwacxyGH 9bUk1wipUoIfGNPJENSZ0xEYpre0gy+t0HNRsZVe8LHjkstwyJrlfygjv0u4Won98f9mIs0mRPn pKYb2rNFS9H5eTQkR7iUa0ciPcy X-Received: by 2002:a17:907:d9f:b0:b8f:8660:3cb4 with SMTP id a640c23a62f3a-b935b4b8202mr125706466b.8.1772111502920; Thu, 26 Feb 2026 05:11:42 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:42 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:42 +0000 Subject: [PATCH 08/11] power: supply: max17042: support standard shunt-resistor-micro-ohms DT property Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-8-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 shunt-resistor-micro-ohms is a standard property used to describe the value of a shunt resistor required when measuring currents. Standard properties should be used instead of vendor-specific ones of similar intention when possible. Try to read it from DT, and fall back to the vendor-specific property maxim,rsns-microohm if unsuccessful for compatibility with existing DTs. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index bae0670e2496..823533ea5a17 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -929,8 +929,12 @@ max17042_get_of_pdata(struct max17042_chip *chip) /* * Require current sense resistor value to be specified for * current-sense functionality to be enabled at all. + * maxim,rsns-microohm is the property name used by older DTs and kept + * for compatibility. */ - if (of_property_read_u32(np, "maxim,rsns-microohm", &prop) =3D=3D 0) { + if ((of_property_read_u32(np, "shunt-resistor-micro-ohms", + &prop) =3D=3D 0) || + (of_property_read_u32(np, "maxim,rsns-microohm", &prop) =3D=3D 0)) { pdata->r_sns =3D prop; pdata->enable_current_sense =3D true; } --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 628E232E122 for ; Thu, 26 Feb 2026 13:11:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111507; cv=none; b=guKVq4gYo+c7PuzH4j5GG1YOn4U3nuqqPxD3wnWNRBEUVnfVsXxUYmeCcTKwgCG9VnIR1pogdGIDJ39XDV3D4VCdfb1b9gsz6oLWZjnMpOEN2Tgi8nSo2bGUvcy8ePmHcmOKwdS+E+00fQGJUUidvEb88ln2z+TRr5BYruUoCH8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111507; c=relaxed/simple; bh=CxTsTMmV8skHVUsm+jW03yN6qWeLL/zDVotJNPTmaHo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=sutaAwYM42t4vrHdzY9b1vJLjQxrQEaN6tWCaNkhZyuKtqqwl/dMRJq/AwxquBTBat5w7j2bANpvdELJQx38/7ykFHuRCvo63yJPES5zF+Y6/uQyOiwCEKS9h817q/m6WgLWG5v3/NjO8zO5ZDxcW5aL8Big6gV6u+kCFJBt/k4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Sfjc/yMu; arc=none smtp.client-ip=209.85.208.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Sfjc/yMu" Received: by mail-ed1-f42.google.com with SMTP id 4fb4d7f45d1cf-65f71ed7c6cso1598964a12.0 for ; Thu, 26 Feb 2026 05:11:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111504; x=1772716304; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=2gQP8USbfJkmMUuSLrzEcZ4FLbZzBl1slM5DTz0FABA=; b=Sfjc/yMu0AxbE/7bgpDPVmNP+34mRewS8gCKtB1YS5A1g4a7rdFyVqWkpbVLxd2Zhu tP1k3oEaK79+XdGSncKbIhyRV4VdKloANhMcrDOo5HzidKvtvAafPyu8HwrZD1iCzfAa cBp0vgRuORG5s2ofWnvY6Z4qQ8ZqoE5qbzuYn4BwCX+9zAsdew9jdK+nTJ9HafCGJ8ce 24cyLGexRwXuBXmwAMEsDVvfMdvLzakqop2RlwRg31vmd0WT29xRUHLFDtW7AS1QjRGk URAETePLUG3lCrM5BDBSJVjpHOURXMhQk/gYMS+dTLKuqGx3vve0r6I2fQz3D13CLMA1 Ba4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111504; x=1772716304; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=2gQP8USbfJkmMUuSLrzEcZ4FLbZzBl1slM5DTz0FABA=; b=N2X59TpDnYzKwC5XhbInJ+/S6mCxvF18obwyIUf6yx0zHuJtvtD3zH/YC8wSvMeVNd FBi5145FmFWRmv9joKJ75rTeG3VMd89y34+G2jQtNqzMO+8xzW3O97zuAFB9NOUiNhIf itgFlWSr2r2/02yaGOPkh7gUi+P4ThA+DgrDLzarRfBHxki74qRA7oc6l6jfrFU3guVm vdnL+7ljmU9e0mFUxg86iDYr4BeirfNKtZVUc4OtfNRO4RMefcIElC+ZGPs7TQZdaajP d7Su8zydOf+8n+bPpHVNavAEceXtsd4sA4HyLb51YvYmMn2qQkDJsa+Ti5vAgkzyetUu UPxw== X-Forwarded-Encrypted: i=1; AJvYcCUAfL2+qQTIqC4NYQvsoMCrjOWRmeCZmKvBrvfjwaT6hVpA4adxup67+zIUm+4vsfeQTslcLtuQI8T52qw=@vger.kernel.org X-Gm-Message-State: AOJu0YwpVVB9JDgbbj5qkQE9DCfm4gODn78s3dFmzFhp30fOLNS/qFu3 04B1I9G8IaOkr8DZRiPRhdJAO1qdpPDiXFRwqIn4/u5aCMDJrqmst6RYM0LV7dOajxM= X-Gm-Gg: ATEYQzztp3L3Nz4IaH3jFgT8a0PQV4Ic1YKEpWozSc+wmJnnXouQ516VF0aVhCQyoMJ B0Q6CJ9OLw6Jt18vuI43TAMCSgM+Ka3hytdd/yH3rIzhUeqLsPBuHfLjAPJ0w2xU2AIAnhTweuZ I6QuctUtOhKUeWi9hlxQGchUnzA5ookFdlUKxUKcn31Qhl10xLRzD0kdQ4VAciu/psyyq/M5N9c h8E7HzfvxIb1zn7/bybFYOjayzPbAT0UP22OGmadtEPDAo19ZjaadiP7rvXmT8pTk6vIp+bcZfr 8KKVeqtwqnuvcCN9I4EJWISErhmo04qyvzECG8TmIRemcd4g3SSN4K4fXGgRxUC3Of9mh9lEEU3 Xs9PPF351QPbX5BQY+UKxfcPN77NErFywQXacVuUe75ZY9y3YVITZmenor5M7XYq4YZgqZnCuTj xYixpDu6JaGU1PgQfqZxXl/SWIFns87rj92/GTpwqMQteBXMCuYtNiLjuzBDHsNZ1Dx/Gx2HeDS Tt3PRJ/FxsgsbjLrg== X-Received: by 2002:a17:907:3e1b:b0:b88:241e:693c with SMTP id a640c23a62f3a-b93516f9c32mr275692866b.31.1772111503528; Thu, 26 Feb 2026 05:11:43 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:43 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:43 +0000 Subject: [PATCH 09/11] power: supply: max17042: initial support for Maxim MAX77759 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-9-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 The Maxim MAX77759 is a companion PMIC intended for use in mobile phones and tablets. It is used on Google Pixel 6 and 6 Pro (oriole and raven). Amongst others, it contains a fuel gauge that is similar to the ones supported by this driver. The fuel gauge can measure battery charge and discharge current, battery voltage, battery temperature, and the Type C connector's temperature. The MAX77759 incorporates the Maxim ModelGauge m5 algorithm. It, as well as previous generations like m3 on max17047/max17050, requires the host to save/restore some register values across power cycles to maintain full accuracy. Extending the driver for such support is out of scope in this initial commit. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 59 +++++++++++++++++++++++++++++= +--- include/linux/power/max17042_battery.h | 24 ++++++++++++-- 2 files changed, 77 insertions(+), 6 deletions(-) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index 823533ea5a17..44626abdab34 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -654,7 +654,8 @@ static void max17042_write_config_regs(struct max17042_= chip *chip) regmap_write(map, MAX17042_RelaxCFG, config->relax_cfg); if (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17047 || chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17050 || - chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17055) + chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17055 || + chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX77759) regmap_write(map, MAX17047_FullSOCThr, config->full_soc_thresh); } @@ -791,7 +792,8 @@ static inline void max17042_override_por_values(struct = max17042_chip *chip) =20 if ((chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17042) || (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17047) || - (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17050)) { + (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17050) || + (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX77759)) { max17042_override_por(map, MAX17042_IAvg_empty, config->iavg_empty); max17042_override_por(map, MAX17042_TempNom, config->temp_nom); max17042_override_por(map, MAX17042_TempLim, config->temp_lim); @@ -800,7 +802,8 @@ static inline void max17042_override_por_values(struct = max17042_chip *chip) =20 if ((chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17047) || (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17050) || - (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17055)) { + (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX17055) || + (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX77759)) { max17042_override_por(map, MAX17047_V_empty, config->vempty); } } @@ -1023,6 +1026,45 @@ static const struct regmap_config max17042_regmap_co= nfig =3D { .val_format_endian =3D REGMAP_ENDIAN_NATIVE, }; =20 +static const struct regmap_range max77759_fg_registers[] =3D { + regmap_reg_range(MAX17042_STATUS, MAX77759_MixAtFull), + regmap_reg_range(MAX17042_VFSOC0Enable, MAX17042_VFSOC0Enable), + regmap_reg_range(MAX17042_MLOCKReg1, MAX17042_MLOCKReg2), + regmap_reg_range(MAX17042_MODELChrTbl, MAX17055_TimerH), + regmap_reg_range(MAX77759_IIn, MAX77759_IIn), + regmap_reg_range(MAX17055_AtQResidual, MAX17055_AtAvCap), + regmap_reg_range(MAX17042_OCVInternal, MAX17042_OCVInternal), + regmap_reg_range(MAX17042_VFSOC, MAX17042_VFSOC), +}; + +static const struct regmap_range max77759_fg_ro_registers[] =3D { + regmap_reg_range(MAX17042_FSTAT, MAX17042_FSTAT), + regmap_reg_range(MAX17042_OCVInternal, MAX17042_OCVInternal), + regmap_reg_range(MAX17042_VFSOC, MAX17042_VFSOC), +}; + +static const struct regmap_access_table max77759_fg_write_table =3D { + .yes_ranges =3D max77759_fg_registers, + .n_yes_ranges =3D ARRAY_SIZE(max77759_fg_registers), + .no_ranges =3D max77759_fg_ro_registers, + .n_no_ranges =3D ARRAY_SIZE(max77759_fg_ro_registers), +}; + +static const struct regmap_access_table max77759_fg_rd_table =3D { + .yes_ranges =3D max77759_fg_registers, + .n_yes_ranges =3D ARRAY_SIZE(max77759_fg_registers), +}; + +static const struct regmap_config max77759_fg_regmap_cfg =3D { + .reg_bits =3D 8, + .val_bits =3D 16, + .max_register =3D 0xff, + .wr_table =3D &max77759_fg_write_table, + .rd_table =3D &max77759_fg_rd_table, + .val_format_endian =3D REGMAP_ENDIAN_NATIVE, + .cache_type =3D REGCACHE_NONE, +}; + static const struct power_supply_desc max17042_psy_desc =3D { .name =3D "max170xx_battery", .type =3D POWER_SUPPLY_TYPE_BATTERY, @@ -1049,6 +1091,7 @@ static int max17042_probe(struct i2c_client *client, = struct device *dev, int irq { struct i2c_adapter *adapter =3D client->adapter; const struct power_supply_desc *max17042_desc =3D &max17042_psy_desc; + const struct regmap_config *regmap_config; struct power_supply_config psy_cfg =3D {}; struct max17042_chip *chip; int ret; @@ -1064,7 +1107,12 @@ static int max17042_probe(struct i2c_client *client,= struct device *dev, int irq =20 chip->dev =3D dev; chip->chip_type =3D chip_type; - chip->regmap =3D devm_regmap_init_i2c(client, &max17042_regmap_config); + + if (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX77759) + regmap_config =3D &max77759_fg_regmap_cfg; + else + regmap_config =3D &max17042_regmap_config; + chip->regmap =3D devm_regmap_init_i2c(client, regmap_config); if (IS_ERR(chip->regmap)) return dev_err_probe(dev, PTR_ERR(chip->regmap), "Failed to initialize regmap\n"); @@ -1245,6 +1293,8 @@ static const struct of_device_id max17042_dt_match[] = __used =3D { .data =3D (void *) MAXIM_DEVICE_TYPE_MAX17055 }, { .compatible =3D "maxim,max77705-battery", .data =3D (void *) MAXIM_DEVICE_TYPE_MAX17047 }, + { .compatible =3D "maxim,max77759-fg", + .data =3D (void *) MAXIM_DEVICE_TYPE_MAX77759 }, { .compatible =3D "maxim,max77849-battery", .data =3D (void *) MAXIM_DEVICE_TYPE_MAX17047 }, { }, @@ -1257,6 +1307,7 @@ static const struct i2c_device_id max17042_id[] =3D { { "max17047", MAXIM_DEVICE_TYPE_MAX17047 }, { "max17050", MAXIM_DEVICE_TYPE_MAX17050 }, { "max17055", MAXIM_DEVICE_TYPE_MAX17055 }, + { "max77759-fg", MAXIM_DEVICE_TYPE_MAX77759 }, { "max77849-battery", MAXIM_DEVICE_TYPE_MAX17047 }, { } }; diff --git a/include/linux/power/max17042_battery.h b/include/linux/power/m= ax17042_battery.h index c417abd2ab70..76b85ad3cf48 100644 --- a/include/linux/power/max17042_battery.h +++ b/include/linux/power/max17042_battery.h @@ -105,7 +105,7 @@ enum max17042_register { =20 MAX17042_OCV =3D 0xEE, =20 - MAX17042_OCVInternal =3D 0xFB, /* MAX17055 VFOCV */ + MAX17042_OCVInternal =3D 0xFB, /* MAX17055/77759 VFOCV */ =20 MAX17042_VFSOC =3D 0xFF, }; @@ -156,7 +156,7 @@ enum max17055_register { MAX17055_AtAvCap =3D 0xDF, }; =20 -/* Registers specific to max17047/50/55 */ +/* Registers specific to max17047/50/55/77759 */ enum max17047_register { MAX17047_QRTbl00 =3D 0x12, MAX17047_FullSOCThr =3D 0x13, @@ -167,12 +167,32 @@ enum max17047_register { MAX17047_QRTbl30 =3D 0x42, }; =20 +enum max77759_register { + MAX77759_AvgTA0 =3D 0x26, + MAX77759_AtTTF =3D 0x33, + MAX77759_T_convert =3D 0x34, + MAX77759_AvgCurrent0 =3D 0x3B, + MAX77759_THMHOT =3D 0x40, + MAX77759_CTESample =3D 0x41, + MAX77759_ISys =3D 0x43, + MAX77759_AvgVCell0 =3D 0x44, + MAX77759_RlxSOC =3D 0x47, + MAX77759_AvgISys =3D 0x4B, + MAX77759_QH0 =3D 0x4C, + MAX77759_MixAtFull =3D 0x4F, + MAX77759_VSys =3D 0xB1, + MAX77759_TAlrtTh2 =3D 0xB2, + MAX77759_VByp =3D 0xB3, + MAX77759_IIn =3D 0xD0, +}; + enum max170xx_chip_type { MAXIM_DEVICE_TYPE_UNKNOWN =3D 0, MAXIM_DEVICE_TYPE_MAX17042, MAXIM_DEVICE_TYPE_MAX17047, MAXIM_DEVICE_TYPE_MAX17050, MAXIM_DEVICE_TYPE_MAX17055, + MAXIM_DEVICE_TYPE_MAX77759, =20 MAXIM_DEVICE_TYPE_NUM }; --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EF4EE33032D for ; Thu, 26 Feb 2026 13:11:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111509; cv=none; b=HH7ffjNtsJygeqn55GlAHClj6InaNaduvUdhXlXStZKSnklCMzDoq5/Syy/+pXyH8F6tCLvehcBRS8NaAl+YKKjdVb1S/86lwAktIsILIIaQn/8ra0NRcErcBJYauGPD00XsRj+xJ/5mqsb0pDfmU2taVtI/bRwk2uModkTP7nE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111509; c=relaxed/simple; bh=GPfoLWJNaZbAuE5sFY9vCrczQONk3K2jd0EZPiGevHY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fstRBXa6m7FBFy1PHQk0LcHNgxpVpGDXGhmzJHRxmyJpF6aOUZKQ35gQY7EkwKCY6HZeWMhxHt20+dXiQZE5tFNHLS7sOhgAhds89CblEKOwcueKNX8O5GtCrLCGWmF3OpEbIbwOLXrliWxD0pK1hU9a9SsaSqjGxGsMJTcFkIw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=NC1n05GK; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="NC1n05GK" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-b8f97c626aaso142227266b.2 for ; Thu, 26 Feb 2026 05:11:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111504; x=1772716304; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=+jqX19aDR1PCz0IO4VxlMpvKqSC9cfQfLdsBYQBVkyw=; b=NC1n05GKgRjeMqSAMaNptOEI6JpKCDmRZk+++IUELVZhgu6xsz8PKIQOYsYTLt3u5Q oalbvFnMkJCtI4sodKBCGvi7st/Xkoff01cXo6vqIxs//Aqq3XayCUkAm6jhTv3ZjF0y Iw1su11pyePz3Kyt5l4buZtFZ5uhIR2JVElQK8rUGzwHGSltnGtCBJLPf0viBnDie7QZ hzHUb3pqs2WVCkUVo0jwP7HokXeUn+Jwm+5nW1+MQawyt+7pYECSr2SqiMCHkYd5Xn7a 7iHNhe3JqqVy0bj6qZ+RgIjXyiP6ki6WYt473y9D1mnxZBF80lb9cws5Hc6Mjv3TU+uT IEZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111504; x=1772716304; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=+jqX19aDR1PCz0IO4VxlMpvKqSC9cfQfLdsBYQBVkyw=; b=C/U6QCXQy9L5nA4xpHu2AUfh41Qubr58FY4PnZv/LXV9w/FiPrURVpl2BgZSTfgnH/ pAAQrAOtqLEwggZYE8+FioYwdIUv9Ogg3WUOjFQmC+cIThrmE7G+xV0HTajKeJPQ3YHN PkpsQAOEEYnbjHjxTqL9OB7/k5a2E1gnhOkeworfiPt5qDYDzgwq65VbD04insGYJIrr E3U2PlmxYbnj9PT4W3xCayse1UXASfTy1fKVjZjiDkkcsvavfs5Qt6Rrlk5Et/WApQFg jhk4NOvjCwJ83kgbx3tzq75FUF9YvL2KE6AZ9aSj+4dHHgYmRKYtu/uxr/FAFaIQZ5Su DvnA== X-Forwarded-Encrypted: i=1; AJvYcCXEHVGFNMYLOJt+I0TW4cOKDT6EXENHAIjFT0NOItQ/jk2YUwIRI6eRAkjYiXpiOy6pHULXLLvxyW1jPQw=@vger.kernel.org X-Gm-Message-State: AOJu0YwLt/qYXXgwt/BSEyxnkYlA5QGiV0SyPsbCn7ZzaywTOaVJ+hQL VjzU+yplhH2cGfWe62oWURxEAuH9t63eE0oRu2GmG6Vu1dcgjsE/w1KJwxpm0K0D8Dc= X-Gm-Gg: ATEYQzzYLrHpyqTzCBQxKGLdnZZIH8MspHfMBfdhShPKJnK0Z23tehsH5mMnApjnvPw Uw13Tm+k2FOf1CNwQ5PJ5rpiv5X4pIEBpK5w80Pf+GzlQdXEIleW9H51WIxVw9vSbEK+CrgiWWy iTzypUl4/hZFUZ8rQ3zqzgChtYpyg73gt0lVrnqCG4vj/qipmjShanhAzj3ejeVi2CSUggsYJim wMxXJKgJ+6NiOoz+Va5+hwn4gu7z8Yi9erN7Z+/zmsaRWTKpIkBAZiVDWQFBmnSwx5rcpOOGyP2 UMW0e/dZNVeb4gdlHOXbty6X7HrUmtJU19YUWivv9CUZCGG0PEba7R0FnruyLYkiG/vZWJvog1v B3OQjU3KFj42Y78zdHmzetaDAdxH/7wlcv/z6MxgW76V0cjikOp/CIoYEfUJX+MVX0qzs6jIXdp /0arYYntlGu7usRgg3J0EAbTQqhVy6Kvm/AHDojYTkijSG1DNDnYYnlUfdMuPpoUMYXEpgv4s2h eX1whHYKr68Zr+atw== X-Received: by 2002:a17:907:9445:b0:b93:60a3:8a47 with SMTP id a640c23a62f3a-b9360a38b06mr95155166b.45.1772111504172; Thu, 26 Feb 2026 05:11:44 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:43 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:44 +0000 Subject: [PATCH 10/11] power: supply: max17042: max17042: consider task period (max77759) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-10-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 Several (register) values reported by the fuel gauge depend on its internal task period and it needs to be taken into account when calculating results. All relevant example formulas in the data sheet assume the default task period (of 5760) and final results need to be adjusted based on the task period in effect. Update the code as and where necessary. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- While I do believe this should apply to all devices supported by this driver, given the register description in max17042_battery.h, I've made this change specific to max77759, as I have no way to confirm this works as expected on those. I've found a data sheet for max17047/max17050 online, which does describe the relevant register 0x3c as 'reserved'. --- drivers/power/supply/max17042_battery.c | 20 ++++++++++++++++++++ include/linux/power/max17042_battery.h | 1 + 2 files changed, 21 insertions(+) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index 44626abdab34..89909b140cf9 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -61,6 +61,7 @@ struct max17042_chip { struct work_struct work; int init_complete; int irq; + int task_period; }; =20 static enum power_supply_property max17042_battery_props[] =3D { @@ -335,6 +336,8 @@ static int max17042_get_property(struct power_supply *p= sy, return ret; =20 data64 =3D data * 5000000ll; + data64 *=3D chip->task_period; + do_div(data64, MAX17042_DEFAULT_TASK_PERIOD); do_div(data64, chip->pdata->r_sns); val->intval =3D data64; break; @@ -344,6 +347,8 @@ static int max17042_get_property(struct power_supply *p= sy, return ret; =20 data64 =3D data * 5000000ll; + data64 *=3D chip->task_period; + do_div(data64, MAX17042_DEFAULT_TASK_PERIOD); do_div(data64, chip->pdata->r_sns); val->intval =3D data64; break; @@ -353,6 +358,8 @@ static int max17042_get_property(struct power_supply *p= sy, return ret; =20 data64 =3D data * 5000000ll; + data64 *=3D chip->task_period; + do_div(data64, MAX17042_DEFAULT_TASK_PERIOD); do_div(data64, chip->pdata->r_sns); val->intval =3D data64; break; @@ -362,6 +369,8 @@ static int max17042_get_property(struct power_supply *p= sy, return ret; =20 data64 =3D sign_extend64(data, 15) * 5000000ll; + data64 *=3D chip->task_period; + data64 =3D div_s64(data64, MAX17042_DEFAULT_TASK_PERIOD); val->intval =3D div_s64(data64, chip->pdata->r_sns); break; case POWER_SUPPLY_PROP_TEMP: @@ -1146,6 +1155,17 @@ static int max17042_probe(struct i2c_client *client,= struct device *dev, int irq regmap_write(chip->regmap, MAX17042_LearnCFG, 0x0007); } =20 + chip->task_period =3D MAX17042_DEFAULT_TASK_PERIOD; + if (chip->chip_type =3D=3D MAXIM_DEVICE_TYPE_MAX77759) { + ret =3D regmap_read(chip->regmap, MAX17042_TaskPeriod, &val); + if (ret) + return dev_err_probe(dev, ret, + "failed to read task period\n"); + chip->task_period =3D val; + } + dev_dbg(dev, "task period: %#.4x (%d)\n", chip->task_period, + chip->task_period); + chip->battery =3D devm_power_supply_register(dev, max17042_desc, &psy_cfg); if (IS_ERR(chip->battery)) diff --git a/include/linux/power/max17042_battery.h b/include/linux/power/m= ax17042_battery.h index 76b85ad3cf48..c82043414c88 100644 --- a/include/linux/power/max17042_battery.h +++ b/include/linux/power/max17042_battery.h @@ -17,6 +17,7 @@ #define MAX17042_DEFAULT_VMAX (4500) /* LiHV cell max */ #define MAX17042_DEFAULT_TEMP_MIN (0) /* For sys without temp sensor */ #define MAX17042_DEFAULT_TEMP_MAX (700) /* 70 degrees Celcius */ +#define MAX17042_DEFAULT_TASK_PERIOD (5760) =20 /* Consider RepCap which is less then 10 units below FullCAP full */ #define MAX17042_FULL_THRESHOLD 10 --=20 2.53.0.414.gf7e9f6c205-goog From nobody Tue Apr 7 15:29:28 2026 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D1175333733 for ; Thu, 26 Feb 2026 13:11:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111509; cv=none; b=pEYsDnRiidKr6Mja2XN3jVp1ycjmc3t3DFxzgeUIOBrSAUEuUsvNHrwnYRBAsTHa42ZsQmwT+DJYSSnOjmSzjMPjXRdUNoR6sfekTTlOuUMlf93btUmDWKA4AT8jFc7zG18F6Wt6QpBq7kFodghf1mRLNy2ukuW7uWx3igfIG3M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772111509; c=relaxed/simple; bh=wlWid3O9Fpab/ITze5p/VvOOHbyf58AYdw0ERtyxjDw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DFfRbzXNds3Thzkh6AGH7h0psiDYacCD346HCzPWqC09FEnP7KYDD4r17EkBZbHuNasGmA1JUAG0H4URnRk8joSaoC/XydGWaABmKTol/muYH6hqDQDfbkGI+vZbwdyAWWQaTFp+wuwOzaLhNqN7C54FkxP8AJel3ZMrkqkmOEs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=xxUz9LCd; arc=none smtp.client-ip=209.85.218.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="xxUz9LCd" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-b936505e7a0so50111766b.1 for ; Thu, 26 Feb 2026 05:11:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1772111505; x=1772716305; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=5gN0iJe9ljlr3ty39XAJfVPtgf4B+kaTwHCMAMG5dSc=; b=xxUz9LCdaPtViFhfaAM1gYrhlGH1L+SrnQv/vqEJh8qROPC9Sf8EUwYHfHKL6paj+T gTmSSZdbUxi/k6A5pkdaiL24aUPLkiJUNIp/yZcac/GbUB+066WFr+V2+jKLvSlLxR0v 0oYFkuGYolv6MClw4PFCHAN5uFJ/+GfCYuF3mXsNNQA3uXagd4AtZ0spvmTJyf1qrpk4 Lxa7eymfv4HwPSpEdaGDAPSYGN+4Fnekso9WQe4MzmgIOLXxZUibco2muzARChMEhSOg XtOWChhch2X067EmBNmJn6hn1gm1uCuPpMNfzmMnnt/7zuo6ZG8enSbQWNLEtGdjZqiM EeRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772111505; x=1772716305; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=5gN0iJe9ljlr3ty39XAJfVPtgf4B+kaTwHCMAMG5dSc=; b=FL+4IpPsL/VNNcb7bmiNgdGIwTdJ7GrDfhqX1lYWenBT57PMLh2cgyO9HQ8CWQO04p TE8aEduSQmvRIsQytsVgGoyA1IfrJ+GhpwsHdQ2uqPLEkUNHRNi4iCK1XR5/7MTDpbnl vLCWxHP6xrNDLLBfWV8SPB4bQIN+5bGPa9uekEUo7gpt4opbSHPznzSaagZ0xBVfal+w pYFha1l5bT1Z4uVQjJ78o1wxMj2acRGnumsgD5B+k0rshElQXr52zsXVZjau2d/KOc0c iZYvKg2Se82WGc+TnJwxZabuEHBeHAubz5WbfV98X8DMGbVdzvzSAl15AGM6XOSuYW/s yn5g== X-Forwarded-Encrypted: i=1; AJvYcCXJt8EIrrzBKPMrD4U2+s20fA46ntfbMiHi8/2P9sM3DvFZEy6GajSZPcNxrS3Dgqtjw8VFCg/pzjsfx9c=@vger.kernel.org X-Gm-Message-State: AOJu0Yw8nyT5SrqV5s9EMO7AG4RzyNmB8j9e9wjkZTNpTteEjPF8Up7X Ey37ihlAOC76G2bcMWfYfpXjqd66tOXu/AEdKLXE8zw7sV+jIwrnv1rQhXQU5sBGlBY= X-Gm-Gg: ATEYQzyA10oAZRF5a8h5v6BX8t78oF+B+j0nImJxfUVLEvxpHR3FrhW3QJ9wJHYtEoJ Zm30fadt5HATGDRbuWrzKlD1dpgW+77eHuD03qgePy1DJRzX4nR3GqWsqNuHGaEXFcLkr3qFr6O 2LtdexaqI/MCVnsUfhYWvhlhPDu0e9tiglHbSNog92UgsUbCnRq+yzz1dBpS1kRLAWWXTnD1u8d HCx233Ka17N8ios98MBC5h3Q3vRHP4f86zwvgPx9nrZpRhQbpmZGWxtXM12LdpqqQhtFLrZJZo/ OVfkTYsc7xSx6mcVAe9l3cv0lfUBqCExTWAarOWO+sV0/hxF3j0CNg8Um/d2hvZNb9etquTETL1 6vDgUMUOL9i+P9VqDa/cfwHMBdaTOdzL8gAmFeZ1g6w9n3VYbxKp1hVmXVDcYKhefb97YrzVpsB xYxEM4rTNo5aPvi65CpuZIUPZXTETnOyH2x4U548T7DFVwy+wcCaF1AHTkp4N2sym4cdigS/GpS 28iECrzo/K55uzqlQ== X-Received: by 2002:a17:906:eecd:b0:b93:5349:d48b with SMTP id a640c23a62f3a-b9356f319fdmr159637366b.10.1772111504825; Thu, 26 Feb 2026 05:11:44 -0800 (PST) Received: from puffmais2.c.googlers.com (244.175.141.34.bc.googleusercontent.com. [34.141.175.244]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b935ac73d2asm55125866b.26.2026.02.26.05.11.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Feb 2026 05:11:44 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Thu, 26 Feb 2026 13:11:45 +0000 Subject: [PATCH 11/11] power: supply: max17042: report time to full Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260226-max77759-fg-v1-11-ff0a08a70a9f@linaro.org> References: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> In-Reply-To: <20260226-max77759-fg-v1-0-ff0a08a70a9f@linaro.org> To: Hans de Goede , Krzysztof Kozlowski , Marek Szyprowski , Sebastian Krzyszkowiak , Purism Kernel Team , Sebastian Reichel , Rob Herring , Conor Dooley Cc: Peter Griffin , Tudor Ambarus , Juan Yescas , Amit Sunil Dhamne , kernel-team@android.com, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.3 Report the remaining time to full as calculated by the firmware. Similar to time to empty, the reported value is only meaningful when charging, i.e. if it is !=3D U16_MAX. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Conor Dooley --- drivers/power/supply/max17042_battery.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply= /max17042_battery.c index 89909b140cf9..cf8602d925a2 100644 --- a/drivers/power/supply/max17042_battery.c +++ b/drivers/power/supply/max17042_battery.c @@ -89,6 +89,7 @@ static enum power_supply_property max17042_battery_props[= ] =3D { POWER_SUPPLY_PROP_HEALTH, POWER_SUPPLY_PROP_SCOPE, POWER_SUPPLY_PROP_TIME_TO_EMPTY_NOW, + POWER_SUPPLY_PROP_TIME_TO_FULL_AVG, // these two have to be at the end on the list POWER_SUPPLY_PROP_CURRENT_NOW, POWER_SUPPLY_PROP_CURRENT_AVG, @@ -447,6 +448,23 @@ static int max17042_get_property(struct power_supply *= psy, if (data =3D=3D U16_MAX) return -ENODATA; =20 + val->intval =3D data * 5625 / 1000; + break; + case POWER_SUPPLY_PROP_TIME_TO_FULL_AVG: + if (chip->chip_type !=3D MAXIM_DEVICE_TYPE_MAX17047 && + chip->chip_type !=3D MAXIM_DEVICE_TYPE_MAX17050 && + chip->chip_type !=3D MAXIM_DEVICE_TYPE_MAX17055 && + chip->chip_type !=3D MAXIM_DEVICE_TYPE_MAX77759) + return -EINVAL; + + ret =3D regmap_read(map, MAX17055_TTF, &data); + if (ret < 0) + return ret; + + /* when discharging, the value is not meaningful */ + if (data =3D=3D U16_MAX) + return -ENODATA; + val->intval =3D data * 5625 / 1000; break; default: --=20 2.53.0.414.gf7e9f6c205-goog