Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp3541816pxb; Wed, 14 Apr 2021 07:52:19 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzEgNJQ5ch+HXpjbEIvM5CEuZfEW6RiJeepqfi9CIrM4qkMrtyL5rxJDcXozJTaCbCjM7Fz X-Received: by 2002:a05:6402:b26:: with SMTP id bo6mr43339153edb.162.1618411939420; Wed, 14 Apr 2021 07:52:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618411939; cv=none; d=google.com; s=arc-20160816; b=V42bqfbWvsnh4n6mN4n7WPy0i7M3vX2igXcRY1CZaaOMHa7siQTODM41ZVD0SCA27g vivqwIIP+WqOCtynLpuhdc+4ZMWz8MvCl7xvQneLSr5JgeEK5OS32hWkkMdmu85haX6I PYZ4CaW/cYfRd5XPjYPQSjRVKXtcoimdrxCk+yAdTRgD6S0Xa5aHiEyfdWoOwFQJmvjl 2IfLhad7+Eh5nGQRfNzHhlTZJnQOYK6JAquLFUzWaLfFE+iYv0zAgxczN7BbyOg0Xb4p EhEEKeUbgMIiknXqTBCSUxoBb3VgQQsxCQISys/f5WR1IC7ncp2m1I8q1w04IcHuArPw NzFA== 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=ziD1BQdNKZSqD9NFOROVnnc3R2EFM0orDAwFpUzsN4A=; b=o1QXRqajuxNaT0CMJjJGDKJVjFCd8EQ1veaXi62y0Dp2qvBShZy08PeV1CsiToRWm9 vM3hcY5z3EjdlpPGwAOYKDD3po8gNmLMSRTjSHbm0OVjApyDy4lYJ3wQtkOYBchjiWOQ v4SbERJacPClGkxi0/eRZtMyFXvg8+Uutx7h3mcsMrrn6n0XhhBqLD0pokkVxCh460UN G4BloLf66AToDbM4ShRObm46GF7BP5hMf96ZXi5OZQwBn2WoA4RefFs3wHCEIpiRkNSb XKFen5RXi7oh2im1wlwnqd/TotjLx8wde3/cRKkbkA5zz7qLk1XAsAbbnj+HKFOj5kIv Ga+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=C0vWj0hc; 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=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id rp11si9546486ejb.737.2021.04.14.07.51.56; Wed, 14 Apr 2021 07:52:19 -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=@chromium.org header.s=google header.b=C0vWj0hc; 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=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231845AbhDNIkM (ORCPT + 99 others); Wed, 14 Apr 2021 04:40:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41516 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1350170AbhDNIii (ORCPT ); Wed, 14 Apr 2021 04:38:38 -0400 Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E7506C061756 for ; Wed, 14 Apr 2021 01:38:14 -0700 (PDT) Received: by mail-pj1-x102b.google.com with SMTP id kk2-20020a17090b4a02b02900c777aa746fso10434973pjb.3 for ; Wed, 14 Apr 2021 01:38:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ziD1BQdNKZSqD9NFOROVnnc3R2EFM0orDAwFpUzsN4A=; b=C0vWj0hcBIafvHaGDWKGXb8qFbK28K+6CTcbRx+jBhqGxVEenk0ZpfI0OEJ3GBjUn1 OI3le/p6rRWJtcT/v150Mb1TBw0aVJ4I4ujf8XZJ6QCEcWxfboN3sWqrCM1RMVPgD/7m LGkG0VLXouLy5TRv1hH1BP9Xpzl7X+4Qz8jbA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ziD1BQdNKZSqD9NFOROVnnc3R2EFM0orDAwFpUzsN4A=; b=Z9I/vcIhrUBE1UV6o94JXyx3HRg6ZW7rELl1bEbXy7WfnUU3PWNRiVnnxtQVogJjD9 tO/8M0IVZDgIO/+/CdZH6Lrutqb9XGauJqAYvjM7/COGrp9s50x5GHYAt56LMTflujIb SBHEVCgjyd6yapCMa0du/y8OPM8Y2xTb568wS8sBWsOeFoxeUZ5pYpExgFKHaUQDLde4 sr6I6iLuccunDcPmRr0Bub+EHL7jmFWMOdS5p7JDUCthzba9q3cPlj0SOkYCl1LO35tv O/Ihs7dCzJAyPBRwL0jEsvAzLMLRjurq8tYoHJjIQfST8oFOD4jStAIf1WHXLXyxpjzX R6iA== X-Gm-Message-State: AOAM533GLA0Kgd8qY7/wUrcF29B7n4tTnG5tavkJBVw++l0ZBLF32RIu yJUV8BlFPf+becy3MtcOkQijFA== X-Received: by 2002:a17:902:f2d1:b029:eb:2e32:8804 with SMTP id h17-20020a170902f2d1b02900eb2e328804mr7489637plc.40.1618389494389; Wed, 14 Apr 2021 01:38:14 -0700 (PDT) Received: from hsinyi-z840.tpe.corp.google.com ([2401:fa00:1:10:bae3:4af0:9792:1539]) by smtp.gmail.com with ESMTPSA id g24sm8901582pfh.164.2021.04.14.01.38.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Apr 2021 01:38:13 -0700 (PDT) From: Hsin-Yi Wang To: Wolfram Sang , Matthias Brugger , Rob Herring , Bartosz Golaszewski Cc: linux-i2c@vger.kernel.org, Qii Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, Greg Kroah-Hartman , Mark Brown , Marek Szyprowski , Bibby Hsieh , Arnd Bergmann Subject: [PATCH v18 0/5] add power control in i2c Date: Wed, 14 Apr 2021 16:38:04 +0800 Message-Id: <20210414083809.1932133-1-hsinyi@chromium.org> X-Mailer: git-send-email 2.31.1.295.g9ea45b61b8-goog MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Although in the most platforms, the power of eeprom and i2c are alway on, some platforms disable the eeprom and i2c power in order to meet low power request. This patch add the pm_runtime ops to control power to support all platforms. Changes since v17: - Add a patch to fix unbalanced regulator disabling. - Add dts patch. Changes since v16: - request regulator in device instead of in the core. - control regulator only if it's provided. Changes since v15: - Squash the fix[1] for v15. [1] https://patchwork.ozlabs.org/project/linux-i2c/patch/20200522101327.13456-1-m.szyprowski@samsung.com/ Changes since v14: - change the return value in normal condition - access the variable after NULL pointer checking - add ack tag Changes since v13: - fixup some logic error Changes since v12: - rebase onto v5.7-rc1 - change the property description in binding Changes since v11: - use suspend_late/resume_early instead of suspend/resume - rebase onto v5.6-rc1 Changes since v10: - fixup some worng codes Changes since v9: - fixup build error - remove redundant code Changes since v8: - fixup some wrong code - remove redundant message [... snip ...] Bibby Hsieh (1): i2c: core: support bus regulator controlling in adapter Hsin-Yi Wang (4): dt-binding: i2c: mt65xx: add vbus-supply property i2c: mediatek: mt65xx: add optional vbus-supply misc: eeprom: at24: check suspend status before disable regulator arm64: dts: mt8183: add supply name for eeprom .../devicetree/bindings/i2c/i2c-mt65xx.txt | 1 + .../dts/mediatek/mt8183-kukui-kakadu.dtsi | 4 + .../dts/mediatek/mt8183-kukui-kodama.dtsi | 4 + .../boot/dts/mediatek/mt8183-kukui-krane.dtsi | 4 + drivers/i2c/busses/i2c-mt65xx.c | 7 ++ drivers/i2c/i2c-core-base.c | 88 +++++++++++++++++++ drivers/misc/eeprom/at24.c | 6 +- include/linux/i2c.h | 2 + 8 files changed, 114 insertions(+), 2 deletions(-) -- 2.31.1.295.g9ea45b61b8-goog