From patchwork Fri Dec 13 08:12:26 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bibby Hsieh X-Patchwork-Id: 1209038 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=mediatek.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=mediatek.com header.i=@mediatek.com header.b="qNkL/3cx"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 47Z4Qy2Kwtz9sNH for ; Fri, 13 Dec 2019 20:01:30 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725770AbfLMJB3 (ORCPT ); Fri, 13 Dec 2019 04:01:29 -0500 Received: from mailgw02.mediatek.com ([216.200.240.185]:35964 "EHLO mailgw02.mediatek.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725747AbfLMJB3 (ORCPT ); Fri, 13 Dec 2019 04:01:29 -0500 X-UUID: 041adb71b4494861be8800baf2777a63-20191213 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=y8nDm9m2qOtB71NuflHB6u7i5dLokDsUDk4uCftOpH4=; b=qNkL/3cx2h05DCIpLKwrTsJ4U6Wncyi6FSV2QwAqfM0UWgpcKE2Uqg/pzCaKEy2zZ5ekFKdlFFh2VOf7XF2Gbgcz96hOWepaaFtIBntFOuFi54CLhkJyczSIpgNlnv9Vw8PU2jV02jI4S69/8ueXY2q5HfIoj7wfXGA71ibKphg=; X-UUID: 041adb71b4494861be8800baf2777a63-20191213 Received: from mtkexhb01.mediatek.inc [(172.21.101.102)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 835677363; Fri, 13 Dec 2019 01:01:25 -0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs07n1.mediatek.inc (172.21.101.16) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Fri, 13 Dec 2019 16:12:22 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Fri, 13 Dec 2019 16:11:59 +0800 From: Bibby Hsieh To: Bartosz Golaszewski , CC: , , , , , , Bibby Hsieh Subject: [PATCH v8 0/4] add power control in i2c and at24 Date: Fri, 13 Dec 2019 16:12:26 +0800 Message-ID: <20191213081230.23494-1-bibby.hsieh@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 X-MTK: N Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@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 v7: - add binding describe supply property in i2c and at24. - move i2c bus supply control in i2c-core. - rebase onto v5.5-rc1 Changes since v6: - add back error check for devm_regulator_bulk_get() Changes since v5: - remove has_supplies Changes since v4: - add system sleep PM ops - move regulator_bulk_disable before suspend() - fixes error handling Changes since v3: - remove redundant calling function - change SIMPLE_DEV_PM_OPS to SET_RUNTIME_PM_OPS - change supply name Changes since v2: - rebase onto v5.4-rc1 - pm_runtime_disable and regulator_bulk_disable at err return in probe function Changes since v1: - remove redundant code - fixup coding style Bibby Hsieh (4): dt-binding: eeprom: at24: add vcc-supply property dt-binding: i2c: add bus-supply property misc: eeprom: at24: support pm_runtime control i2c: core: support bus regulator controlling in adapter .../devicetree/bindings/eeprom/at24.yaml | 4 ++ Documentation/devicetree/bindings/i2c/i2c.txt | 3 + drivers/i2c/i2c-core-base.c | 66 +++++++++++++++++++ drivers/misc/eeprom/at24.c | 40 +++++++++++ include/linux/i2c.h | 3 + 5 files changed, 116 insertions(+)