From patchwork Wed May 4 11:29:06 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sudeep Holla X-Patchwork-Id: 12837699 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E3738C433EF for ; Wed, 4 May 2022 11:31:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=1v+fo8lxKWVqrSeZM3pFyxQRha/7+BWHQsKMLClpyvY=; b=V5fBKuOnvGx9nk WrGWuLIKuZeLF89OvJSwgoWUByysZSkxKJ9VDF3CXedTtZ3NktH5+3ibm4GPD3Kc2Y1ex/+TWCWxu uDhUctYLJBYcVWGt0COjOTjnbLpIGd5mAymQ+mw7rlFk1j6rzlTY6R1EHldj5Wdh0OMJYn6Lzodqy dqzBe8PjRCmAzCCr8d3RyliiCIAddLHl5Oh0SCAlF/eHck1gOb73fRkF8Q/to99x4SWXt2Uev9jd1 jHIf5uvqEdlRYH3XsYmPjkUSHYBEOxjt2ocIpBvF79BHvQCTHdM9x9PmgfbP++1xta9sCzrJpBB3m 73HnENZO8ZdH6aoczHaw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmDCs-00AQHG-Rq; Wed, 04 May 2022 11:30:11 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmDBw-00APrm-GR for linux-arm-kernel@lists.infradead.org; Wed, 04 May 2022 11:29:14 +0000 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 3514C1042; Wed, 4 May 2022 04:29:11 -0700 (PDT) Received: from usa.arm.com (e103737-lin.cambridge.arm.com [10.1.197.49]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 2DF143FA50; Wed, 4 May 2022 04:29:10 -0700 (PDT) From: Sudeep Holla To: ARM SoC Team , SoC Team , ALKML Cc: Sudeep Holla , Arnd Bergmann , Cristian Marussi , Olof Johansson Subject: [GIT PULL] firmware: arm_scmi: Updates for v5.19 Date: Wed, 4 May 2022 12:29:06 +0100 Message-Id: <20220504112906.3491985-1-sudeep.holla@arm.com> X-Mailer: git-send-email 2.36.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220504_042912_695579_E92D3029 X-CRM114-Status: GOOD ( 12.64 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi ARM SoC Team, Please pull ! Regards, Sudeep -->8 The following changes since commit bf36619a5463fbe6d3ecde37bb13680b532a253b: firmware: arm_scmi: Fix sparse warnings in OPTEE transport driver (2022-04-04 23:06:37 +0100) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux.git tags/scmi-updates-5.19 for you to fetch changes up to c7f8852d4216f7dc061f0bc02dda5af396048861: firmware: arm_scmi: Fix late checks on pointer dereference (2022-05-03 14:23:02 +0100) ---------------------------------------------------------------- Arm SCMI firmware driver updates/fixes for v5.19 The main theme for most of the changes this time is around the addition of the support for SCMI v3.1 specification changes. Though one of the main addition in the specification is the powercap protocol, that is still work in progress and this set includes all other changes bit and pieces scattered all around the different parts of the specification. There are few bugs discovered during the process and associated fixes and some refactoring to simplify the addition of v3.1 support. It mainly includes the support for extended names, few newly added notifications and async command support. Apart from v3.1 SCMI changes, OPTEE transport gets support for dynamic shared memory. ---------------------------------------------------------------- Cristian Marussi (22): firmware: arm_scmi: Make protocols initialisation fail on basic errors firmware: arm_scmi: Fix list protocols enumeration in the base protocol firmware: arm_scmi: Validate BASE_DISCOVER_LIST_PROTOCOLS response firmware: arm_scmi: Dynamically allocate implemented protocols array firmware: arm_scmi: Make name_get operations return a const firmware: arm_scmi: Check CLOCK_RATE_SET_COMPLETE async response firmware: arm_scmi: Remove unneeded NULL termination of clk name firmware: arm_scmi: Split protocol specific definitions in a dedicated header firmware: arm_scmi: Introduce a common SCMI v3.1 .extended_name_get helper firmware: arm_scmi: Add SCMI v3.1 protocol extended names support firmware: arm_scmi: Parse clock_enable_latency conditionally firmware: arm_scmi: Add iterators for multi-part commands firmware: arm_scmi: Use common iterators in the sensor protocol firmware: arm_scmi: Add SCMI v3.1 SENSOR_AXIS_NAME_GET support firmware: arm_scmi: Use common iterators in the clock protocol firmware: arm_scmi: Use common iterators in the voltage protocol firmware: arm_scmi: Use common iterators in the perf protocol firmware: arm_scmi: Add SCMI v3.1 perf power-cost in microwatts firmware: arm_scmi: Add checks for min/max limits in PERFORMANCE_LIMITS_SET firmware: arm_scmi: Add SCMI v3.1 clock notifications firmware: arm_scmi: Add SCMI v3.1 VOLTAGE_LEVEL_SET_COMPLETE firmware: arm_scmi: Fix late checks on pointer dereference Etienne Carriere (1): firmware: arm_scmi: Support optee shared memory in the optee transport Sudeep Holla (1): firmware: arm_scmi: Set clock latency to U32_MAX if it is not supported drivers/firmware/arm_scmi/Kconfig | 1 + drivers/firmware/arm_scmi/base.c | 46 ++- drivers/firmware/arm_scmi/clock.c | 343 ++++++++++++++---- drivers/firmware/arm_scmi/common.h | 225 +----------- drivers/firmware/arm_scmi/driver.c | 168 ++++++++- drivers/firmware/arm_scmi/optee.c | 144 ++++++-- drivers/firmware/arm_scmi/perf.c | 162 ++++++--- drivers/firmware/arm_scmi/power.c | 44 ++- drivers/firmware/arm_scmi/protocols.h | 318 +++++++++++++++++ drivers/firmware/arm_scmi/reset.c | 40 ++- drivers/firmware/arm_scmi/sensors.c | 645 +++++++++++++++++++--------------- drivers/firmware/arm_scmi/system.c | 9 +- drivers/firmware/arm_scmi/voltage.c | 218 ++++++++---- include/linux/scmi_protocol.h | 31 +- 14 files changed, 1613 insertions(+), 781 deletions(-) create mode 100644 drivers/firmware/arm_scmi/protocols.h