From patchwork Sun Feb 4 17:26:47 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 196553 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:168b:b0:106:860b:bbdd with SMTP id ma11csp458428dyb; Sun, 4 Feb 2024 09:39:09 -0800 (PST) X-Google-Smtp-Source: AGHT+IGmnLvNkYJH4Hb33+fLtyuODL/XLle73PpiJ3izqW1tkg3291Ed0V1JXauvP51c4ZitiNyn X-Received: by 2002:a17:902:7847:b0:1d7:44d3:97d9 with SMTP id e7-20020a170902784700b001d744d397d9mr9958726pln.4.1707068349767; Sun, 04 Feb 2024 09:39:09 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707068349; cv=pass; d=google.com; s=arc-20160816; b=IPh8FN6QfaBvKchdVNJYmpeyW8zBfLr6S/HrLwWUudKna8EwADuzQwm9Y/8rOCFAVx obH/ZIBhYD1X1HRZSY2KNRrkkQsN/FwuW6aDs5ql9pd3GC9QU8rUcnFSwU7SMniLHqSV 7KHapT0TCo3LFDnfUWvN9MqvnUL+R7Kn20uoPxYKut48pABJ1LTrWHquasHGluHsE066 ldbZl+eJH9YwkmxL09U8zjp97E6A+jfVoArHOaZSSGhSI/8bMtRK98HaPMGQmjDH9ywr bV3s2ioHirjzqw9khs8Q3FfIOUTIInwiSwtywx1B0jNU2Xw4AxdsrkuqoGMkE8BcHNxR 0jiQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :subject:date:from:dkim-signature; bh=aTtBdYmar2HPCEO+zBjHa9xJ/aw+kWqz0Rp+FvCut2U=; fh=BsLXAzeeiIW2ZFsiGM1fEDDnMTOAbSMopFxSZabbCbA=; b=ovKO1zqXXFQtHUbD5DUeqW0sTO7Um7PaWfyE03iaUXOcslXGYBKa7SqtVzFP8OGzMW eX3CPd0X7fh7OKio8XMTlRA5IeDtslF+t8Fs6ij6R/YNlME4XY/GSlwPsuJTg/1+df6X XufjwRfCovxv0dNhTLw5PJ5bGHHXa6ABtSqQtIuU22lzGQSpBdtxu7Jvcz+nb4JGwCqB ObqFhW4PKuJ3k4FM0kpYccoyXjAwv/A4KaCtV79cb0ojwKXGuehcptlyEhEcJZNZzh5e U55URxZeNOXwHKy2uiexKXUxjBUxWL1Y5x/u75Hd5JWke/RaNJ7OYQlQmWLWsuvhga+C wMAQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=lo+YLcnf; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51822-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51822-ouuuleilei=gmail.com@vger.kernel.org" X-Forwarded-Encrypted: i=1; AJvYcCUXStlGpNq82gCqzvHYvIFRYlBHM9t4JWw1BlHKbgUrRwq1uni2QmTSx7eZEKY0wO8OHvzSexJnokQ/0gr22bTSV44FGA== Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id e17-20020a17090301d100b001d71ef41515si2774543plh.446.2024.02.04.09.39.09 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Feb 2024 09:39:09 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-51822-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=lo+YLcnf; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51822-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51822-ouuuleilei=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id E616A283211 for ; Sun, 4 Feb 2024 17:29:07 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 4E1072FE0E; Sun, 4 Feb 2024 17:27:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b="lo+YLcnf" Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08719249E4; Sun, 4 Feb 2024 17:27:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=159.69.126.157 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067629; cv=none; b=VgVUt5w4qbKnUdIv8QKaKqqORfwuh1JJoRKLPS3m2LaHKNhoLxGO7GtGnFRaRqmEiLppF6ybifHQGVHh1ShNcdffMpAi1Rx5SOiW0PB9hEU68NcRSKE2dNLkBQhH3b51Khv+Ik8iitEWxFZ2m0dniBG6L8em4JRCz1cAbC0iEww= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067629; c=relaxed/simple; bh=83yBY9rck6+K+bEFFiUYGjSaD/z/BJ7WS//fZZE59+k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DddXjRpyKDICl6DYxW0bnU/zlXj7GZn6SSnXyZ87ZDiWe3VUOmZIE9qmWdZelFc+oKkgB5GpvpnlkbrC9BFrLDCdaKQ3nl1i7M2vKL7438LZOOErbYI+OiWwtHEgA9J/9WiJbLLTVn+ViNyCG7Ap1a68hiDr87AIGE2AV4F3lqQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net; spf=pass smtp.mailfrom=weissschuh.net; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b=lo+YLcnf; arc=none smtp.client-ip=159.69.126.157 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=weissschuh.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1707067616; bh=83yBY9rck6+K+bEFFiUYGjSaD/z/BJ7WS//fZZE59+k=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=lo+YLcnfHwvLzQS0lWRbt0O8A/HkKVTTx9cjxoxp4BnCaF+tDTHNjnQb4+mmWaWwP LG55jcYg6vZ3bgOXcq1rJDHllkQdqXLaw5pWCWoB0Dq/qbYCpxtnxpCSMcR8eZaIEc JPUhv86cCi1HOOsxbq5id5x1MoqGcWCfCitXfT/E= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Sun, 04 Feb 2024 18:26:47 +0100 Subject: [PATCH 1/4] power: supply: core: fix charge_behaviour formatting Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240204-power_supply-charge_behaviour_prop-v1-1-06a20c958f96@weissschuh.net> References: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> In-Reply-To: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> To: Sebastian Reichel , Hans de Goede , Konrad Dybcio Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Sebastian Reichel , =?utf-8?q?Thomas_Wei?= =?utf-8?q?=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1707067615; l=3685; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=83yBY9rck6+K+bEFFiUYGjSaD/z/BJ7WS//fZZE59+k=; b=//GN4ufpRA6QtLBhWpmTQ7vbg0vlaq/ZYuBZfls9xZQQXdtbiWc7f8DcS++H1Yr9WG3b+Mx/l vmnDc4L7qgtA0kgkj/5VjWwEW/+zw0lHH5e2mrO/xHXK7d/n+ae3dv+ X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1789990901720535128 X-GMAIL-MSGID: 1789990901720535128 This property is documented to have a special format which exposes all available behaviours and the currently active one at the same time. For this special format some helpers are provided. However the default property logic in power_supply_sysfs.c is not using the helper and the default logic only prints the currently active behaviour. Adjust power_supply_sysfs.c to follow the documented format. There are currently two in-tree drivers exposing charge behaviours: thinkpad_acpi and mm8013. thinkpad_acpi is not affected by the change, as it directly uses the helpers and does not use the power_supply_sysfs.c logic. As mm8013 does not implement POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE the new logic will preserve the simple output format in this case. Fixes: 1b0b6cc8030d ("power: supply: add charge_behaviour attributes") Signed-off-by: Thomas Weißschuh --- drivers/power/supply/power_supply_sysfs.c | 32 +++++++++++++++++++++++++++++++ include/linux/power_supply.h | 1 + 2 files changed, 33 insertions(+) diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c index 977611e16373..3680cfc2e908 100644 --- a/drivers/power/supply/power_supply_sysfs.c +++ b/drivers/power/supply/power_supply_sysfs.c @@ -271,6 +271,32 @@ static ssize_t power_supply_show_usb_type(struct device *dev, return count; } +static ssize_t power_supply_show_charge_behaviour(struct device *dev, + struct power_supply *psy, + struct power_supply_attr *ps_attr, + union power_supply_propval *value, + char *buf) +{ + union power_supply_propval available; + int ret; + + ret = power_supply_get_property(psy, + POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR, + value); + if (ret < 0) + return ret; + + ret = power_supply_get_property(psy, + POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE, + &available); + if (ret == -EINVAL) + return sysfs_emit(buf, "%s\n", ps_attr->text_values[value->intval]); + else if (ret < 0) + return ret; + + return power_supply_charge_behaviour_show(dev, available.intval, value->intval, buf); +} + static ssize_t power_supply_show_property(struct device *dev, struct device_attribute *attr, char *buf) { @@ -282,6 +308,8 @@ static ssize_t power_supply_show_property(struct device *dev, if (psp == POWER_SUPPLY_PROP_TYPE) { value.intval = psy->desc->type; + } else if (psp == POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR) { + value.intval = -1; } else { ret = power_supply_get_property(psy, psp, &value); @@ -308,6 +336,10 @@ static ssize_t power_supply_show_property(struct device *dev, ret = power_supply_show_usb_type(dev, psy->desc, &value, buf); break; + case POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR: + ret = power_supply_show_charge_behaviour(dev, psy, ps_attr, + &value, buf); + break; case POWER_SUPPLY_PROP_MODEL_NAME ... POWER_SUPPLY_PROP_SERIAL_NUMBER: ret = sysfs_emit(buf, "%s\n", value.strval); break; diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h index c0992a77feea..9a6e6b488164 100644 --- a/include/linux/power_supply.h +++ b/include/linux/power_supply.h @@ -135,6 +135,7 @@ enum power_supply_property { POWER_SUPPLY_PROP_CHARGE_CONTROL_START_THRESHOLD, /* in percents! */ POWER_SUPPLY_PROP_CHARGE_CONTROL_END_THRESHOLD, /* in percents! */ POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR, + POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE, POWER_SUPPLY_PROP_INPUT_CURRENT_LIMIT, POWER_SUPPLY_PROP_INPUT_VOLTAGE_LIMIT, POWER_SUPPLY_PROP_INPUT_POWER_LIMIT, From patchwork Sun Feb 4 17:26:48 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 196549 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:168b:b0:106:860b:bbdd with SMTP id ma11csp454479dyb; Sun, 4 Feb 2024 09:28:38 -0800 (PST) X-Google-Smtp-Source: AGHT+IHrLUHtZWmBGdby/wGdkkbVZygfxBq0mLR96cwwM7hAr9HcQbSDzAqbMcaVrFyZ1LpX7Iir X-Received: by 2002:a05:6808:1512:b0:3bf:b771:b714 with SMTP id u18-20020a056808151200b003bfb771b714mr12351633oiw.16.1707067718657; Sun, 04 Feb 2024 09:28:38 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707067718; cv=pass; d=google.com; s=arc-20160816; b=Jv7E55nY/jpDbywO2YYae8hxNpbmuhs4dwjHyesIdln2z2naUHXLtaVoZLoHNSpnRJ r6XbwthZMAtkxAqRHa4Qyszo135SqwK82bnAcGfcxRT425FVPxF1b4KYxhlK6LFFFrnH z3yKAXwgGrWHSrN0i8GMSKr5o8IId87H874M5cMER3yUJkx3camexXF/tJnKbiw6y1ax 0DUyTdFMiDXgZc01vhS3EKF2rbijjLXcWufna1TG6X0SNjm2EEyeTzKRCjHGGaJRiNZl J/thCm539PpWH4XTkwb/qPCS1Jav28c/RoaiN5nUMIhkMxlTVOwSbmK+n8m3cPRagYIg rRtA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :subject:date:from:dkim-signature; bh=Q/dyZ9brj1k4C5HirKPNGX1qgR92AW0svWYQbWmyLL8=; fh=NUAJuMx/mR7fZax977rS3hIfeoBI2D9plOxqWCkFU+Q=; b=DqDZNBZtflfAs4LW9J5BIHQGirboZTT3dckj1GbhyeWJDrFElTXTDM9Gwf5U4AS1SR WdKiuXc+HEEDh8l+3T8tqRtwUKIgeDZQrjZ3mZ1cUQsKcnGIBO0fKm7oglQVLDCQ3Qpj FS3NVP4sgl15RSiRATP27GDpaUFgTEwlEQVh89nIFSpvoYLuA8wNQN6OLoNunJQ/WpAy riDTXSCkr6aTHbbk8J2+0zlVnFvhTDIZ1cHV/7TnUX07Bu4Fz/m11hveCq2PxbD+kEFK 1gYNirMSUMvD/kiwA7ZGEzDWf2cgjvkPTFj7/IJGytO586agg5K6sYRlpRlEE1hk5o0U T5Ag==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=tyLZio+5; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51819-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51819-ouuuleilei=gmail.com@vger.kernel.org" X-Forwarded-Encrypted: i=1; AJvYcCVkgqJxnmncBY/6HOYqWtx0jonF9GRbnF9uTdSmqRStkq6CgUuZXhK62LPb2hsslA+9pOWJqEx0xt5ETPPdViWftr/T1Q== Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id y14-20020a05622a120e00b0042c1eb99b13si1341895qtx.641.2024.02.04.09.28.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Feb 2024 09:28:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-51819-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=tyLZio+5; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51819-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51819-ouuuleilei=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 7192C1C219C1 for ; Sun, 4 Feb 2024 17:28:38 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id F2E2528DCF; Sun, 4 Feb 2024 17:27:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b="tyLZio+5" Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 28B45249E8; Sun, 4 Feb 2024 17:27:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=159.69.126.157 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067628; cv=none; b=EZ7FYJXUXQWJM/Xtf3+0xJCPGadATpKP/5XAontJt9KVuxUeB7UdXbUmdD6JOAp4KWQWcerDEhxj4/sZ4fOtcMdTqo3s2uR23F1dEyuPYWz3HHsxNspwWmzJeqY4ZdB9IzSrPkI+wbRLDfc2e9IjKXLtsZzYzYsxPXROdAo0E7U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067628; c=relaxed/simple; bh=jhC9MrS/DvTlCbbFDLlt5Ex7tBPY1h+Ja6j31zHqUDY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=nlO350l4PLBz0TdlfPLYd8s4EzW091M/4QKycQ0xmyTRhCE5lVqZOWOQiSdMCOGH5F2Z+4tjH15i0l7ujyrNxQw2+26DPYryog4/T9N4/ZSJ9gfbRqJ0lWc8R0J/A+ODOhCCYGn0I7J+kv7ORBbSmZ9uWqc26zhrcq7KbFeCtMM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net; spf=pass smtp.mailfrom=weissschuh.net; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b=tyLZio+5; arc=none smtp.client-ip=159.69.126.157 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=weissschuh.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1707067616; bh=jhC9MrS/DvTlCbbFDLlt5Ex7tBPY1h+Ja6j31zHqUDY=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=tyLZio+5j4b83kcLgkgcckSZaIgFsNQpbcTS228yUnQNV8ZI6km4TWXHLG1bCwH6C CWl20AY27g3aXB2SnNMk2/QLNALVygFjQbkzndbxx/lnW6vR3eBYHOZ8zMp7BFt3DT XSsjyK7mYpPFBMTaXQmpknrPiGoEYpVRWpS8OG3g= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Sun, 04 Feb 2024 18:26:48 +0100 Subject: [PATCH 2/4] power: supply: test-power: implement charge_behaviour property Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240204-power_supply-charge_behaviour_prop-v1-2-06a20c958f96@weissschuh.net> References: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> In-Reply-To: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> To: Sebastian Reichel , Hans de Goede , Konrad Dybcio Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Sebastian Reichel , =?utf-8?q?Thomas_Wei?= =?utf-8?q?=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1707067615; l=1449; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=jhC9MrS/DvTlCbbFDLlt5Ex7tBPY1h+Ja6j31zHqUDY=; b=zSfoi6za/QSGlccGGbzM0jSxDfpkVUL9clLjL0HYWEfz4XEYhYCjmCPGJL/T6t+imjLVgXj4F SwJNzFhUwv5BECr78yk3M/Ssle1fo8sJaciCuX9QHRWxbIXPlGWbObj X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1789990239927769548 X-GMAIL-MSGID: 1789990239927769548 To validate the special formatting of the "charge_behaviour" sysfs property add it to the example driver. Signed-off-by: Thomas Weißschuh Reviewed-by: Hans de Goede --- drivers/power/supply/test_power.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/power/supply/test_power.c b/drivers/power/supply/test_power.c index 0d0a77584c5d..4da0420996c9 100644 --- a/drivers/power/supply/test_power.c +++ b/drivers/power/supply/test_power.c @@ -123,6 +123,14 @@ static int test_power_get_battery_property(struct power_supply *psy, case POWER_SUPPLY_PROP_CURRENT_NOW: val->intval = battery_current; break; + case POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR: + val->intval = POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE; + break; + case POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE: + val->intval = BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO) + | BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE) + | BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_FORCE_DISCHARGE); + break; default: pr_info("%s: some properties deliberately report errors.\n", __func__); @@ -156,6 +164,8 @@ static enum power_supply_property test_power_battery_props[] = { POWER_SUPPLY_PROP_VOLTAGE_NOW, POWER_SUPPLY_PROP_CURRENT_AVG, POWER_SUPPLY_PROP_CURRENT_NOW, + POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR, + POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE, }; static char *test_power_ac_supplied_to[] = { From patchwork Sun Feb 4 17:26:49 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 196550 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:168b:b0:106:860b:bbdd with SMTP id ma11csp454488dyb; Sun, 4 Feb 2024 09:28:40 -0800 (PST) X-Google-Smtp-Source: AGHT+IEnzmoOjJAOt7geqToKp5Lgtcb4Ciw3yLo2NSHMlxA1a1vtYlUIahQqxp0zE+otVPAK76lY X-Received: by 2002:a05:6808:1183:b0:3be:b7f2:459e with SMTP id j3-20020a056808118300b003beb7f2459emr15839323oil.52.1707067720269; Sun, 04 Feb 2024 09:28:40 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707067720; cv=pass; d=google.com; s=arc-20160816; b=0ue02SiFa3KUiFw7nWto/IlIUsdFpVsvIkXDiztN4suiZYtgkn5DUhtCsI89Ts9zIF obi39xtY9zJ9IBZ2z8OEMNnw3bEr3xoLDTGAEnNeYDCyuYUwprehJdkWVEMCKT447vlw NG2hLiFQY5Fbu4z0CM2BwGr6ZFBxKLDQHQvQhDa2+fob96W1Wvacau4STLzmQi0CmgCU iZ5LIiFiaycjhkEO+0uFHsze2Zutk8uLzhg8qsbjYljHR7gkHprRSxeYQkE4Bo08giIo X6KEzLb97z8VHhp7ONhAg4PtguSN1bjUbG5qKucb90du5qI1nFvC4Yu2nFgW+XSZk1XY QJIA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :subject:date:from:dkim-signature; bh=r0TY0I3XSp1WSKj9eJrgghplPJ/srDCIE8rGEI+6+ms=; fh=+ge7IFEel59uBfGI2uo6YVQTzoP2DsUlED3Dco9ZC1c=; b=LEXFxLjcgfRmVuDmDjgU0KiOuZv8mVwtN179SkCEui23XL2pEJD5qOpdCypFx36Zxi T5q/eKgxm0Um59jK4L/sZuKSInzgu0THqhazZ1Sbje0MxsPCsd7mILf95f0DzMNtjJZB ar/E9BZM0ozyhZbBmjzQNNktc7gaNN9DdP1LOavIoBdryyA2eIDDiUckwSXvM44+7x9d jft0gKr4T1BljWjGaYu9+C/Xr83TbyACPcxGv/PQNyaWwxvkgUYrXPj3cx1i5CZ5OW/A dUuyKOUwndYuiA5XlEPt2GPkQ9jqByCYHD4Qqpk52AMy6li5/Oq4kqANPMirlvSjWjbk y7qg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=fhMew4Ad; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51820-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51820-ouuuleilei=gmail.com@vger.kernel.org" X-Forwarded-Encrypted: i=1; AJvYcCVGx6+1pUJLYCDkTluH8AAeojZgzEjZtJNgG5XSVGFndhaI+eRFjTVVm9uopuaGFeKxznURKTD3UDHMqRzZWscTTZ6yCw== Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id y13-20020a05622a120d00b0042c075c6b62si5580493qtx.709.2024.02.04.09.28.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Feb 2024 09:28:40 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-51820-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=fhMew4Ad; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51820-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51820-ouuuleilei=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 137CD1C2197C for ; Sun, 4 Feb 2024 17:28:40 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0AE9728E26; Sun, 4 Feb 2024 17:27:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b="fhMew4Ad" Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 28B82249EA; Sun, 4 Feb 2024 17:27:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=159.69.126.157 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067628; cv=none; b=jPCQTbjwN7rblAPDmUbd5r7dZdncOTNRdlYGb3xPg7rRmvXBGfhFvaIoWQi4lB232/mtOXLlQ0mPD/xtE/7minYXAEhPThO56MUt18ABENK1Q7rppb0YbfkC7AAzd770ag2fNROctgHVM5XHUIrAjWQ/iwaVfZpNt45wGIDFYtM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067628; c=relaxed/simple; bh=2bfpIaHPb+FVKiLlqv6onKrx8jugClAtzAL49QT9tj8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KiK54Rv1wCQuV2Cy5JWhv8TdcjTW3Oan3d46V8y/USJaJ/YpGnOkfcu5NQWjVOfs2YNIAwMvLqyiPnRb+RCADtJ8AgvoSzGv2OH6/6LZ63/l/+0fho+yHnGY+YTTeuMLVW3vfbDqeGPs4YLVgWOEWP0IJ5w8UJxyJ65s9eZEjNY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net; spf=pass smtp.mailfrom=weissschuh.net; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b=fhMew4Ad; arc=none smtp.client-ip=159.69.126.157 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=weissschuh.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1707067616; bh=2bfpIaHPb+FVKiLlqv6onKrx8jugClAtzAL49QT9tj8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=fhMew4AdtulXYoY2VpXWRvQfvCaONA9fIk0LjMdi2qR/prFTX4jXe/5paqNJRUXoT Ofa50BkT4C7yjQdfSZ2q3CFDq5AVxx+TpEOwXRu5Vj8y+9xbcll7Gjz1A8vP7PV+oj r0rb5D5DBG64iNSuJVBX64a1iWFdMce2R4x2dZpo= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Sun, 04 Feb 2024 18:26:49 +0100 Subject: [PATCH 3/4] power: supply: mm8013: implement POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240204-power_supply-charge_behaviour_prop-v1-3-06a20c958f96@weissschuh.net> References: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> In-Reply-To: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> To: Sebastian Reichel , Hans de Goede , Konrad Dybcio Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Sebastian Reichel , =?utf-8?q?Thomas_Wei?= =?utf-8?q?=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1707067615; l=1478; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=2bfpIaHPb+FVKiLlqv6onKrx8jugClAtzAL49QT9tj8=; b=YAQ1hO1l8kQ2VYBnblYST3jQhV0wwQngktbNHMJepEyv1/a45AjNO688GAhvqu6GTPruwmRT6 WJKAK1usPsRCQSUvaXcHAkVVdbH8TBXgd/RbKNCcpOKqPQVfpGM2BS8 X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1789990242120911206 X-GMAIL-MSGID: 1789990242120911206 The sysfs is documented to report both the current and all available behaviours. For this POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE needs to be implemented. Note that this changes the format of the sysfs file (to the documented format): Before: "auto" After: "[auto] inhibit-charge" Signed-off-by: Thomas Weißschuh Reviewed-by: Hans de Goede Reviewed-by: Konrad Dybcio --- drivers/power/supply/mm8013.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/power/supply/mm8013.c b/drivers/power/supply/mm8013.c index caa272b03564..695df8bd6cb0 100644 --- a/drivers/power/supply/mm8013.c +++ b/drivers/power/supply/mm8013.c @@ -72,6 +72,7 @@ static int mm8013_checkdevice(struct mm8013_chip *chip) static enum power_supply_property mm8013_battery_props[] = { POWER_SUPPLY_PROP_CAPACITY, POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR, + POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE, POWER_SUPPLY_PROP_CHARGE_FULL, POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN, POWER_SUPPLY_PROP_CHARGE_NOW, @@ -113,6 +114,10 @@ static int mm8013_get_property(struct power_supply *psy, else val->intval = POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO; break; + case POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE: + val->intval = BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO) + | BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE); + break; case POWER_SUPPLY_PROP_CHARGE_FULL: ret = regmap_read(chip->regmap, REG_FULL_CHARGE_CAPACITY, ®val); if (ret < 0) From patchwork Sun Feb 4 17:26:50 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 196554 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:168b:b0:106:860b:bbdd with SMTP id ma11csp459215dyb; Sun, 4 Feb 2024 09:41:46 -0800 (PST) X-Google-Smtp-Source: AGHT+IGfEHqxB8urE4NlzLF7KWU13dnFRXMsrLtaPzQrIo6F1jGJp/QTha4VCkcxF+vb0VeJyP+a X-Received: by 2002:a17:90a:d302:b0:295:b3f5:99d8 with SMTP id p2-20020a17090ad30200b00295b3f599d8mr5883513pju.39.1707068506786; Sun, 04 Feb 2024 09:41:46 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707068506; cv=pass; d=google.com; s=arc-20160816; b=iRW/Kvi4nlRzGE1exDtvLrGURsJP8AZfJPiNfYR4Dru+DwL95O7cqNVKhQXGvip/dq hfArZgETHANDr1llh11/Wsg2gs96MS0BvkW0eOfUMa/lMc6lSwMoWrWEshHErxedWD1E DT1zNFDmnfhhYVOGZ177lETqNIi1okIYmYua5JVWGnasjCf1UJrNRhV+msbQ2119BEC5 oX8L/lcdeAEN2suhNq7yczkZqqSdolvWw///SgpWfg+Lxwk81TAJT7ugY0nadYvoU09f JQaT9hXs+g7/v0JdVDfDFoPDT5hA4f50288c/qaZ6h4kKznt3jNy01S/H/8OCMDrXAOR jlfQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :subject:date:from:dkim-signature; bh=Vj3N3Ev3DWQHZSNvEeoLP2V+sUiN/C/yOA3ASkDQt3U=; fh=Q2IRV14jtxVf1cselanF2nY7URrKI8hEwCB4wQFOvZ4=; b=bVTKYJZ1f7B/hn5h5bJDHtdXoB2JbRTg+/v/58+fJawfedeOijSbnQTFIzU5I93h6J 95UTek5JG7bvfVBh0/pP/8n/D8V1qlvT0Dk6HHnxtHFIPt/4hUGlgStohSIf4sPlRMFe 60Q6hnThMKmkc5z+p1xBqjtKp3tifhfLFqNR3SRcSxUYOB32eQAIJXjRgJ/+7UarpHug S7TXvJT1s8TYuq2C+W9ZVys+zbY2XrVAbgMkfw8Trs0mZneIL7tj+0jWt1YVCdS/R7ir 6flKwrN3vGJwTj1eOA67dHu0snwY81ZsxT1wALoA07RZuE/0l+MXkBoqMxMZMuBnbu1A XwOg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=gEt+CYFa; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51823-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51823-ouuuleilei=gmail.com@vger.kernel.org" X-Forwarded-Encrypted: i=1; AJvYcCXFmi9P28zQ3cL4lN3lC2gfw03eDTv8pEzIaosEpCJ9Kqv4uu1LLR+zt1pTieWzKEvqvAH3MdCKqTr5g0cYMnSblgR+Mw== Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [2604:1380:40f1:3f00::1]) by mx.google.com with ESMTPS id q9-20020a17090aa00900b002902388cabcsi3213524pjp.32.2024.02.04.09.41.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Feb 2024 09:41:46 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-51823-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) client-ip=2604:1380:40f1:3f00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=gEt+CYFa; arc=pass (i=1 spf=pass spfdomain=weissschuh.net dkim=pass dkdomain=weissschuh.net); spf=pass (google.com: domain of linux-kernel+bounces-51823-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-51823-ouuuleilei=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 493A0B22476 for ; Sun, 4 Feb 2024 17:29:12 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 8DC1032C60; Sun, 4 Feb 2024 17:27:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b="gEt+CYFa" Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B574F249ED; Sun, 4 Feb 2024 17:27:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=159.69.126.157 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067629; cv=none; b=dHH63r4aIK3w7nNfv8aty8iAdAjPaFLFBkh20/TRfn8BFHG9QFp4Hqznez4ugsItgGgJdv0TaHlEq+QEXWq9p2DbymZgdERne6OoyC9fDrtoqsgWJ0fxfWNObStAcrekhqCN+CtGB12GwNSe4m/rWSFjYyCyhenw0dXDKbmsNoI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707067629; c=relaxed/simple; bh=IxAmxaUd639konem1J0CwPySbGfu/rKfRx4PF1P1Nfs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=prDWyAgKBHPm+bEi/8724guZTUeGfeD5aJnYz3zLikrCigHTb60u8f4UXjPuMuaeqwsvotLaKLlzbn/oldfFqBg6tnpr/uDBvAeISHP1nt2ynyzz2f0S/S2rMxBxs8LgbJw1ugVv/ZZ6Wt6HrBD6w6WUufvSwNrDQVooZ24usmI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net; spf=pass smtp.mailfrom=weissschuh.net; dkim=pass (1024-bit key) header.d=weissschuh.net header.i=@weissschuh.net header.b=gEt+CYFa; arc=none smtp.client-ip=159.69.126.157 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=weissschuh.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=weissschuh.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1707067616; bh=IxAmxaUd639konem1J0CwPySbGfu/rKfRx4PF1P1Nfs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=gEt+CYFah1lDU279fX90PzcJZtwNiZTHhOkKgmMS+iwsL9kJdmFX+fW8UbUqEfDww +ba8M3dextPoKKVkjZUiqNRrNFwYpBX/mMD69h2h1o9klPpnZ2oN4A2P/tWg85vFGl 3/xvPDcLYmGSOGIgPLw2vMyuwhH16YNcOG9p+JMw= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Sun, 04 Feb 2024 18:26:50 +0100 Subject: [PATCH 4/4] power: supply: core: drop workaround for missing POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240204-power_supply-charge_behaviour_prop-v1-4-06a20c958f96@weissschuh.net> References: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> In-Reply-To: <20240204-power_supply-charge_behaviour_prop-v1-0-06a20c958f96@weissschuh.net> To: Sebastian Reichel , Hans de Goede , Konrad Dybcio Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Sebastian Reichel , =?utf-8?q?Thomas_Wei?= =?utf-8?q?=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1707067615; l=1735; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=IxAmxaUd639konem1J0CwPySbGfu/rKfRx4PF1P1Nfs=; b=nN0rW/JGrCJIb+/x9MMDNSXtBsocp2ba6MNqVU656ezGH4x7jbknMB4pZdT5XLMbyMKZpfAv/ xTfUVOKIqxuBsXEyAmgaOaqbxZu9C4OO3LwGLhgoc6rpM2OGRubm+X9 X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1789991066729145681 X-GMAIL-MSGID: 1789991066729145681 As the mm8013 driver was extended to also report that property the workaround is not needed anymore. Signed-off-by: Thomas Weißschuh --- drivers/power/supply/power_supply_sysfs.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c index 3680cfc2e908..3804a3bbed24 100644 --- a/drivers/power/supply/power_supply_sysfs.c +++ b/drivers/power/supply/power_supply_sysfs.c @@ -273,7 +273,6 @@ static ssize_t power_supply_show_usb_type(struct device *dev, static ssize_t power_supply_show_charge_behaviour(struct device *dev, struct power_supply *psy, - struct power_supply_attr *ps_attr, union power_supply_propval *value, char *buf) { @@ -289,9 +288,7 @@ static ssize_t power_supply_show_charge_behaviour(struct device *dev, ret = power_supply_get_property(psy, POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR_AVAILABLE, &available); - if (ret == -EINVAL) - return sysfs_emit(buf, "%s\n", ps_attr->text_values[value->intval]); - else if (ret < 0) + if (ret < 0) return ret; return power_supply_charge_behaviour_show(dev, available.intval, value->intval, buf); @@ -337,8 +334,7 @@ static ssize_t power_supply_show_property(struct device *dev, &value, buf); break; case POWER_SUPPLY_PROP_CHARGE_BEHAVIOUR: - ret = power_supply_show_charge_behaviour(dev, psy, ps_attr, - &value, buf); + ret = power_supply_show_charge_behaviour(dev, psy, &value, buf); break; case POWER_SUPPLY_PROP_MODEL_NAME ... POWER_SUPPLY_PROP_SERIAL_NUMBER: ret = sysfs_emit(buf, "%s\n", value.strval);