Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp2049050ybf; Mon, 2 Mar 2020 00:44:07 -0800 (PST) X-Google-Smtp-Source: ADFU+vvvxoGD7BikwKjmB0q7pjjZFFfBndtZn+tyXbBWHhziYhHg/2q+ZxfqKmiW6bGGW/B86vJR X-Received: by 2002:a05:6830:1684:: with SMTP id k4mr5185405otr.75.1583138647031; Mon, 02 Mar 2020 00:44:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583138647; cv=none; d=google.com; s=arc-20160816; b=sUU/I3MoyhnFITJSfKH0sx/J9g1mzMR4eCSJKNRLTCxYDGgXlgXPTP30HHkwRG2Heo TmziE1VAd8LcdsFQt8jHCsF9+FqWvE4gxH63u+0AxJ6kbnNHg18b6IcaoZj1IoBQ2TyT LdYBjS+HL3EtoUtB8cZjEP4GmNr4Ord1pkE5J3jIdioG/n/KKTqtD85YMdmXQ7ZcQUhc 315MMa5OigFepuqAk6Cn/9Ey2i5UVCWWKPHNiMv3FxxRfHzIFzoTsdSv+pOFc3qpUCzj r6N37m7wKVVJAwjEgnPAvhwizqorT7+RkScwzER/EYOHFQEXjZgG3c8J2dP3jL8exVUw aT9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:references :in-reply-to:message-id:date:subject:cc:to:from; bh=ZCoVf4Bju4PbnK3l1TmS9mj2FtUF9AQCNwd+kBoUgfE=; b=aiTBSdIjgLnH8+WLtAWR8ixFxshxLrJ5oZajryYaCjP2GKXyq+oRMQIPieDO9brtaP upVyJCOZnwj/RRoY77Fug6/QVDqEGytIXYqP2j9W/ByJvGy1vqdbt4aSXpWeVLutOcci l/K7S7oK6u8VJDV+1vfoMdcKVO59ZmzDd5mgtyKPYsne+1WcRWvDxOZKsOKi0Edo3Nbx F0oDt0Er99CUBmN3kDhjn7tZrqTBBXZaYWBXCnnsUkSzNx1RPKjAJmDNQbuT85cXNsGi eUFC+nl97N6FNBxo0/r4q4rvUWHyjJNtQFT+/ANz2LaNxaJ0l6F8NVJGSB00fRhl9Fcb F36Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n14si1773579oig.110.2020.03.02.00.43.55; Mon, 02 Mar 2020 00:44:07 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727481AbgCBInn (ORCPT + 99 others); Mon, 2 Mar 2020 03:43:43 -0500 Received: from mga14.intel.com ([192.55.52.115]:45723 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727159AbgCBInn (ORCPT ); Mon, 2 Mar 2020 03:43:43 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 Mar 2020 00:43:42 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,506,1574150400"; d="scan'208";a="243133911" Received: from sgsxdev004.isng.intel.com (HELO localhost) ([10.226.88.13]) by orsmga006.jf.intel.com with ESMTP; 02 Mar 2020 00:43:38 -0800 From: Dilip Kota To: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Cc: kishon@ti.com, robh@kernel.org, andriy.shevchenko@intel.com, cheol.yong.kim@intel.com, chuanhua.lei@linux.intel.com, qi-ming.wu@intel.com, yixin.zhu@intel.com, Dilip Kota Subject: [PATCH v4 1/3] mfd: syscon: Add fwnode_to_regmap Date: Mon, 2 Mar 2020 16:43:23 +0800 Message-Id: <9953bb25281397553cb87b09d641c968d8432dd9.1583127977.git.eswara.kota@linux.intel.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Traverse regmap handle entry from firmware node handle. Signed-off-by: Dilip Kota --- Changes on v4: No changes drivers/mfd/syscon.c | 8 ++++++++ include/linux/mfd/syscon.h | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c index e22197c832e8..08064ffc5394 100644 --- a/drivers/mfd/syscon.c +++ b/drivers/mfd/syscon.c @@ -178,6 +178,14 @@ struct regmap *device_node_to_regmap(struct device_node *np) } EXPORT_SYMBOL_GPL(device_node_to_regmap); +struct regmap *fwnode_to_regmap(struct fwnode_handle *fwnode) +{ + struct device_node *np = to_of_node(fwnode); + + return device_node_get_regmap(np, false); +} +EXPORT_SYMBOL_GPL(fwnode_to_regmap); + struct regmap *syscon_node_to_regmap(struct device_node *np) { if (!of_device_is_compatible(np, "syscon")) diff --git a/include/linux/mfd/syscon.h b/include/linux/mfd/syscon.h index 112dc66262cc..a024dd88bdd4 100644 --- a/include/linux/mfd/syscon.h +++ b/include/linux/mfd/syscon.h @@ -18,6 +18,7 @@ struct device_node; #ifdef CONFIG_MFD_SYSCON extern struct regmap *device_node_to_regmap(struct device_node *np); +extern struct regmap *fwnode_to_regmap(struct fwnode_handle *fwnode); extern struct regmap *syscon_node_to_regmap(struct device_node *np); extern struct regmap *syscon_regmap_lookup_by_compatible(const char *s); extern struct regmap *syscon_regmap_lookup_by_phandle( @@ -29,6 +30,11 @@ static inline struct regmap *device_node_to_regmap(struct device_node *np) return ERR_PTR(-ENOTSUPP); } +static inline struct regmap *fwnode_to_regmap(struct fwnode_handle *fwnode) +{ + return ERR_PTR(-ENOTSUPP); +} + static inline struct regmap *syscon_node_to_regmap(struct device_node *np) { return ERR_PTR(-ENOTSUPP); -- 2.11.0