Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp4761233pxv; Tue, 29 Jun 2021 15:10:24 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw6nVM90lmKUoRrXu0NOQgU6yDf2zKJu6TGdEXVamidtftmbv4i71db758dg74k2zvEYIVl X-Received: by 2002:aa7:cc0c:: with SMTP id q12mr3091995edt.90.1625004623931; Tue, 29 Jun 2021 15:10:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625004623; cv=none; d=google.com; s=arc-20160816; b=aeQ6CrNrikwRoFODkjy8TNk4kLj7GFKIlvvCiR8xSDN88vdSU9HiBmI5pa+oHFqnDi NnxMxWzQg+abzsqaW+Bbq/NErNvFjfAik1oGS7fTwtTd/OHdKZbQWHI3yjzxToiMR1Nu +KG2ZkmuS6+df+ZdYVa+yjrS3O+uH4tnyd5SEwEoYwJHxHGqM4D15Im+zImUqVZ4/Vj6 V8l4jF58BBlZ4lKkVenk1poIL9yvKMQDH3AlvkvzBdZs+eIcR9o2Ft2A8oE3zEYaplF+ pRYRSfNPJ1C1gw5sjVVCsui5PoQKVsDyVITvKYIIyCIY9vclWOile0MTKZpIh5WJva4b RdYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=1q7Ain0DLUkGOfXS9EwfmlJ7f9E2SKVgo1z1o4tW/v8=; b=PjYw6VssiNiz8Jl2ChxRC2f6b3iE2FoSiB1ShtunhmYDugWMJaWIdOTamr220m4+FR ++G6pzlap5/OAbci67pb3B8OL4CDBH/fE3kSJ0GzCK0cuW1O/HrijWYSD8mAvEholSaY h6GMcbHFQHt1CBSfUkYrXuOKC+g4UFsXEJSthUZjUm/GobvLLR33sXfb/KVNlZvvrsRp flElhaDv332CU2NsJBPpR0bcr6fxYtIOs7W6XTFBIrQLRQwuVH0K+p/vOs+R7lAYpBku oitTjslJQh8EgKTispBJIltcciKLNoHPuAy/GT1psI73kk0dnUpIcSeH+5hYJ4pxFmGQ WI0g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=sNJP561T; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dp16si22121101ejc.164.2021.06.29.15.09.58; Tue, 29 Jun 2021 15:10:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=sNJP561T; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235303AbhF2WKE (ORCPT + 99 others); Tue, 29 Jun 2021 18:10:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35288 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234110AbhF2WKB (ORCPT ); Tue, 29 Jun 2021 18:10:01 -0400 Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com [IPv6:2a00:1450:4864:20::631]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12DF2C061766 for ; Tue, 29 Jun 2021 15:07:34 -0700 (PDT) Received: by mail-ej1-x631.google.com with SMTP id yy20so518328ejb.6 for ; Tue, 29 Jun 2021 15:07:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=1q7Ain0DLUkGOfXS9EwfmlJ7f9E2SKVgo1z1o4tW/v8=; b=sNJP561TgLPulHMOn7QGOO2ndcGumuoOg3lMJmx9mePF3ls5eTTIX0sGZ2zNpLEXaU J7rzQdc5YT5pdKkAAGvaAk0gQ9sll7hgjRY21wJm9/USdN0drvSZW32uTYMAM2y/HLO/ dAIYpyHzjZ/TyDiws9b6v7fPcMCh7EaztHjSwWNPAjbO+vYfTnmJq+IpaWRfmneoCIAy b4IKFit61HKhQ1MVC1J8wb4lZcP8k1+gcu7hEHf1rK5xmTAsfk4k6bQcAKCyhXShefaf Rt11rvdrWGjo56phA0v1fYSWwwv+rhBsLbsecSW5JfB9H6yrLzroABGfbaWHPh4EyuVc A35Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=1q7Ain0DLUkGOfXS9EwfmlJ7f9E2SKVgo1z1o4tW/v8=; b=fpRkSM2VzIlGJA7+F+/EW66MFBt7vZ11/QHvxL/v+UVCkGMN3p8oVVX7U4zo7idWOK duZXZQHE4r2P6OJLQseDcJyjn1jRJQWUWxfYEPiwRq5nHOWgptNfmY5ciP96MUbBs1dF 8xEi46avAZmLbM3YKfMVHMsokmGN/QZ6x42/oYqMWE9s34Rx0uCsZn6nryc0jkpRztjf d8qUgteo5CJweD6uo8zLbjOw5Qk9Dil90bNXP6kehIVn/R5nxp/Po0iBB1dnH5wyDmPr JBmkWtUFeyUlHOkn4m8hH06+dT9QrIkyHKLjtdz1e6CCMWJs0ip9fUFkhLxFuaNJXXZd q9bQ== X-Gm-Message-State: AOAM530YBLwiRtzE6iuliNj1Ot0PnvjGmj0m4YdiKXoqXhxkDAH/qz7D fHvemx8iyDTWjvUOyaxzGrQVEVMj8Eb2CL69fO/pFw== X-Received: by 2002:a17:906:70cf:: with SMTP id g15mr31769008ejk.366.1625004452346; Tue, 29 Jun 2021 15:07:32 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Kenneth Albanowski Date: Tue, 29 Jun 2021 15:07:20 -0700 Message-ID: Subject: Re: [PATCH] HID: input: do not report stylus battery state as "full" To: Dmitry Torokhov Cc: Jiri Kosina , Benjamin Tissoires , Hans de Goede , linux-input@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org I've tested it on a 5.4 derivative, and that works as expected. Looks good to me. - Kenneth Albanowski - Kenneth On Tue, Jun 29, 2021 at 11:25 AM Dmitry Torokhov wrote: > > The power supply states of discharging, charging, full, etc, represent > state of charging, not the capacity level of the battery (for which > we have a separate property). Current HID usage tables to not allow > for expressing charging state of the batteries found in generic > styli, so we should simply assume that the battery is discharging > even if current capacity is at 100% when battery strength reporting > is done via HID interface. In fact, we were doing just that before > commit 581c4484769e. > > This change helps UIs to not mis-represent fully charged batteries in > styli as being charging/topping-off. > > Fixes: 581c4484769e ("HID: input: map digitizer battery usage") > Reported-by: Kenneth Albanowski > Signed-off-by: Dmitry Torokhov > --- > drivers/hid/hid-input.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c > index e982d8173c9c..e85a1a34ff39 100644 > --- a/drivers/hid/hid-input.c > +++ b/drivers/hid/hid-input.c > @@ -417,8 +417,6 @@ static int hidinput_get_battery_property(struct power_supply *psy, > > if (dev->battery_status == HID_BATTERY_UNKNOWN) > val->intval = POWER_SUPPLY_STATUS_UNKNOWN; > - else if (dev->battery_capacity == 100) > - val->intval = POWER_SUPPLY_STATUS_FULL; > else > val->intval = POWER_SUPPLY_STATUS_DISCHARGING; > break; > -- > 2.32.0.93.g670b81a890-goog > > -- > Dmitry