From patchwork Fri Mar 17 22:56:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sebastian Reichel X-Patchwork-Id: 6835 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:604a:0:0:0:0:0 with SMTP id j10csp34182wrt; Fri, 17 Mar 2023 16:14:37 -0700 (PDT) X-Google-Smtp-Source: AK7set/CKQUV55YGHJVxu5wL6yub4bQr2t7u8ZuwgbG5YpOI/6ndKb1izKBt+Tt7fQxFOeDn+oBg X-Received: by 2002:a05:6a00:b45:b0:5de:a362:ecf1 with SMTP id p5-20020a056a000b4500b005dea362ecf1mr13001385pfo.0.1679094876959; Fri, 17 Mar 2023 16:14:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1679094876; cv=none; d=google.com; s=arc-20160816; b=JUySfWHWf0++DpZQyXbKxQlcbl/kBH9vEbHk/CKZxFbisrRAbEK3De93a7jL9nahwe BChZTVF43aK685n7/8YM+Gr8n9vgIf+z1aKFLhB/Dh2JdNduhVZDENLqMmMvPlCz0wL7 IXdbTvNAWX5odiC/5bgChsFFYbmZBf+/WmBpaZs5M2GCZ12o4np8JiqxUQeC+fcFHM0n gE08hODvpGqBPiHtyAeoYDcSugeDVrlymRPeSG0CeU/8x+v9qXqsGoiPkn0C7xYo+0cv gq2aXtJxXubHPXGvgfPGofJiEgW+oqbVr9Y3hTo+LeWZn2oTX8O9q2BL6lWQ7PbznBK+ BHMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=F5f7yACDLXw1CTGFrOFoW0Ndduni+fsxV/w3NPju7n0=; b=qvLcWZw8BKlHFkVnPFBxEeeugLZcca88aU6OSemTc+TSbYK08iNbBdCZyGk0P3YVgJ Sd0zsoQ9fujpavRDqQJ/tH6dPKpdT1P+HK2Pnfbh1L5vSctdCz/hrnd5IFFXZD+1YJ1z 5exVlaWeme71GNDYmmNVK7r0tzYG1Mw3FzLMwiDxGH6DhOZEgk1PGbnO44LT2SWH5K1b lTi4QNXmRzyiK3K37zddXLU0zNKhPUiwr94imS/J7KXFutLWKK1lX0TCSwvGVX7KhfqD E1HdWdyKr6/fioG49zoudtqkQTMEI845BZCiHlZTeoTPbKzdsAQNesaZgvWhIdLpM9vN 03jQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ZbAGqZd7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q19-20020a056a00085300b005907636f4bfsi3936460pfk.48.2023.03.17.16.14.21; Fri, 17 Mar 2023 16:14:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ZbAGqZd7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229868AbjCQW5P (ORCPT + 99 others); Fri, 17 Mar 2023 18:57:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50934 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229541AbjCQW5N (ORCPT ); Fri, 17 Mar 2023 18:57:13 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 48AEA2CFCB; Fri, 17 Mar 2023 15:57:12 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 9946460B61; Fri, 17 Mar 2023 22:57:11 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C7DCFC4339C; Fri, 17 Mar 2023 22:57:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1679093831; bh=u6caXNtWGnQDeyAlomNSHtdC57pwicFqB+r2UCDaZFk=; h=From:To:Cc:Subject:Date:From; b=ZbAGqZd7dNpKozt6g6c62b56qo7KhTnMZduxmpoay8Ej8+xcwoM+GUw82PvEwLdk/ kmzkLjm4lkt/KJt3TS/EtUIbFKZvbd/ltdI3zXBUwK6HvCO5LJBjQF6W/qfRJSTBy2 I/MiJOS59L94V9jdTF9OWOW6B2dlgPnJL0OKflRxFsDV1mQOADIqGKacn2eeFcHZdz NeXvNF/HH960mk2sVwGYGCygFTRqYCZM/jSxL67bAT81Vopo7sw6H1KkqAPMs65esh y1fhzcwOhxkklyTOnh7AeBgMdUIfafHg/Yhp5WDfy7LMUnCqclLnCTNXgRS6JN2rcp bnZGT4H99zkKg== Received: by mercury (Postfix, from userid 1000) id 8300910620FB; Fri, 17 Mar 2023 23:57:08 +0100 (CET) From: Sebastian Reichel To: Sebastian Reichel Cc: Linus Walleij , Matti Vaittinen , Rob Herring , Krzysztof Kozlowski , linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org Subject: [PATCHv3 00/14] Add DT support for generic ADC battery Date: Fri, 17 Mar 2023 23:56:53 +0100 Message-Id: <20230317225707.1552512-1-sre@kernel.org> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1760658589708230848?= X-GMAIL-MSGID: =?utf-8?q?1760658589708230848?= Hi, This series cleans up the generic ADC battery driver and adds devicetree support. The plan is to use the driver to add upstream support for a handheld thermal camera. Instead of reading and exposing the monitored battery data manually I started the series with an addition to the power-supply core, which allows automatic handling of the static battery information. It simplifies the generic-adc-battery driver a lot and should also be useful for other battery drivers. Changes since PATCHv2: * collect more Reviewed-by (again skipped PATCH 1) * updated battery-info auto-exposure to only do it for TYPE_BATTERY power-supply devices. * Fix battery-info auto-exposure to avoid duplicated uevent variables * Added two more cleanup patches at the end of the series Changes since PATCHv1: * collect Reviewed-by (I did not collect them for the auto-exposure because of the code changes) * always auto expose battery data (without opt-in) * update DT binding according to feedback * add temperature support * fix issues pointed out by the Intel build bot - move power_supply_battery_info_properties to power_supply_core.c - restore accidently removed EXPORT_SYMBOL for power_supply_get_property -- Sebastian Sebastian Reichel (14): dt-bindings: power: supply: adc-battery: add binding power: supply: core: auto-exposure of simple-battery data power: supply: generic-adc-battery: convert to managed resources power: supply: generic-adc-battery: fix unit scaling power: supply: generic-adc-battery: drop jitter delay support power: supply: generic-adc-battery: drop charge now support power: supply: generic-adc-battery: drop memory alloc error message power: supply: generic-adc-battery: use simple-battery API power: supply: generic-adc-battery: simplify read_channel logic power: supply: generic-adc-battery: add temperature support power: supply: generic-adc-battery: add DT support power: supply: generic-adc-battery: update copyright info power: supply: generic-adc-battery: improve error message power: supply: generic-adc-battery: style fixes .../bindings/power/supply/adc-battery.yaml | 70 +++++ drivers/power/supply/generic-adc-battery.c | 245 +++++------------- drivers/power/supply/power_supply_core.c | 179 +++++++++++-- drivers/power/supply/power_supply_sysfs.c | 23 +- include/linux/power/generic-adc-battery.h | 23 -- include/linux/power_supply.h | 8 + 6 files changed, 325 insertions(+), 223 deletions(-) create mode 100644 Documentation/devicetree/bindings/power/supply/adc-battery.yaml delete mode 100644 include/linux/power/generic-adc-battery.h