From patchwork Wed Dec 18 11:17:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sudeep Holla X-Patchwork-Id: 181989 Delivered-To: patch@linaro.org Received: by 2002:a92:3001:0:0:0:0:0 with SMTP id x1csp504604ile; Wed, 18 Dec 2019 03:18:34 -0800 (PST) X-Google-Smtp-Source: APXvYqx4hnyJUJALHB3ufboezxbOxv0bO2MedE39SN1V6ysbd4Fu0o5V81wWLZ3/G5OylolgFQWG X-Received: by 2002:a05:6830:1c85:: with SMTP id v5mr2165336otf.35.1576667914808; Wed, 18 Dec 2019 03:18:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576667914; cv=none; d=google.com; s=arc-20160816; b=qZ/5GGPl2VCsSIaWopsHQ+2H5SDUIHvFTXj+5woG0ZKF4kT8zUvVl4KEQTVTgt8xyx TJafiAR2kZlu9cP9ZvvGPQbbexsQ82fqNMw6VuZAt8eMkNe/B7xpxy46Q3HzyLGItdte p0IPctKFvSGTV/JxCXwuUM+4CYXlP2VFO1l2dXfS1usOoSVVZa5dK4gQCkGmI8V+k1uG qEI/i8o+MJAgAooK/TTQmZ1kV6by3+yILTz6kU6bczWz3/2ay0H/pgu+AcCQ/FjpyTjV 7NUSVST/0p3K7Euvh7Yy2p0zppFa1OxkyyQfmAiMv5HHfRsgpm2HPdeor1gE0I2QwwMk TmFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=mOeZMOGQ2qztpIrny6RSU/ymFSpAa6jSpnS9Z4XHySQ=; b=tTIapbGhSSA4NAdAHBTqM2FsvxKvoMBa0kurLkjVd+R6ZBTKkCSFO6wboeBI1bDaAa Vw1poQN3QE08cBoQsYxNkfN48io8NOBJPn4p+r/e8ESuSwZ9Y3i1zsfbnHrdQChxADC1 a0f2LV6gbdBBgH7TgTf7iXHjyVgq+gxIFmeJiQorWG6KmCxBXifwNBDj6GrdV1HtJB3U oNvw4q5ieWtZf/WW8C4Bu85tgB381wracjXm0vGkE1p1sMRW+ZLNFReQs+jkGCmRtSTR i1u3SLvWRZ8JqUc/iN9wY4/f2m/qPg2gu8nggmoMD7x5TfP7I7HoC+pjFv5ke5Ik3zgK mM8A== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z2si1194079oix.100.2019.12.18.03.18.34; Wed, 18 Dec 2019 03:18:34 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726749AbfLRLRu (ORCPT + 27 others); Wed, 18 Dec 2019 06:17:50 -0500 Received: from foss.arm.com ([217.140.110.172]:42336 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726545AbfLRLRu (ORCPT ); Wed, 18 Dec 2019 06:17:50 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A12D330E; Wed, 18 Dec 2019 03:17:47 -0800 (PST) Received: from usa.arm.com (e107155-lin.cambridge.arm.com [10.1.196.42]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id F10D43F6CF; Wed, 18 Dec 2019 03:17:46 -0800 (PST) From: Sudeep Holla To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Sudeep Holla , Cristian Marussi Subject: [PATCH v2 00/11] firmware: arm_scmi: Add support for multiple device per protocol Date: Wed, 18 Dec 2019 11:17:31 +0000 Message-Id: <20191218111742.29731-1-sudeep.holla@arm.com> X-Mailer: git-send-email 2.17.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Currently only one scmi device is created for each protocol enumerated. However, there is requirement to make use of some procotols by multiple kernel subsystems/frameworks. One such example is SCMI PERFORMANCE protocol which can be used by both cpufreq and devfreq drivers. Similarly, SENSOR protocol may be used by either hwmon or iio subsystems, and POWER protocol may be used by genpd and regulator drivers. This series adds support for multiple device per protocol using scmi device name if one is available. It also updates existing drivers to add scmi device names to driver id tables. Regards, Sudeep v1[1]->v2: - Dropped all the changes that mixes up the device specific init with the protocol - Used idr_replace to skip protocol initialisation as suggested - Added collected reviewed/acked-by - Reworded hwmon changes to reflect that hwmon/iio drivers will be mutually exclusive and hwmon needs to be removed if IIO support is added [1] https://lore.kernel.org/lkml/20191210145345.11616-1-sudeep.holla@arm.com/ Sudeep Holla (11): firmware: arm_scmi: Add support for multiple device per protocol firmware: arm_scmi: Skip scmi mbox channel setup for addtional devices firmware: arm_scmi: Add names to scmi devices created firmware: arm_scmi: Add versions and identifier attributes using dev_groups firmware: arm_scmi: Match scmi device by both name and protocol id firmware: arm_scmi: Stash version in protocol init functions firmware: arm_scmi: Skip protocol initialisation for additional devices clk: scmi: Match scmi device by both name and protocol id cpufreq: scmi: Match scmi device by both name and protocol id hwmon: (scmi-hwmon) Match scmi device by both name and protocol id reset: reset-scmi: Match scmi device by both name and protocol id drivers/clk/clk-scmi.c | 2 +- drivers/cpufreq/scmi-cpufreq.c | 2 +- drivers/firmware/arm_scmi/bus.c | 29 ++++++- drivers/firmware/arm_scmi/clock.c | 2 + drivers/firmware/arm_scmi/driver.c | 92 +++++++++++++++++++++- drivers/firmware/arm_scmi/perf.c | 2 + drivers/firmware/arm_scmi/power.c | 2 + drivers/firmware/arm_scmi/reset.c | 2 + drivers/firmware/arm_scmi/scmi_pm_domain.c | 2 +- drivers/firmware/arm_scmi/sensors.c | 2 + drivers/hwmon/scmi-hwmon.c | 2 +- drivers/reset/reset-scmi.c | 2 +- include/linux/scmi_protocol.h | 5 +- 13 files changed, 134 insertions(+), 12 deletions(-) -- 2.17.1