Received: by 2002:a05:7412:9090:b0:ff:203f:1a00 with SMTP id cf16csp782030rdb; Wed, 14 Feb 2024 10:43:46 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXZSTowzIUaU+Y4U/bEiCPh14krMNajRHTX3EPbzKuJ8lnzBolChtfZ2RiXv4W2UlyScQXOgkd79HGfP2l4IhaJporJTvd5af5Grli5Jw== X-Google-Smtp-Source: AGHT+IFAVGbOq584j4zFdDUggh9F+z33BqpVvVaSPVQI47Ye1U/dBFk/3TtlINy/2qPoeo0esycW X-Received: by 2002:a17:902:784e:b0:1db:2d8f:8dc1 with SMTP id e14-20020a170902784e00b001db2d8f8dc1mr3289295pln.13.1707936226531; Wed, 14 Feb 2024 10:43:46 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707936226; cv=pass; d=google.com; s=arc-20160816; b=ijJYjFYje1VcaZmBWmXTBSJOOEwtTAg01t7xxkmMHlQoWydLdqDp3dXyU1+fH7Zn/R 5Q9LL7RjBbCK8hlayjg5pRKCbmgxDMJnm52YwKFcb8NK1O5dysjkXnC+/CMISrVUn9C3 BVwWxWzEYDsWxA2FM1xiMTYSrBznqyEeX56qgpZUSOiHuVmfVgUG0fhz/9YDHTY3CQAB Le6lfgvEyLZ357JNp6Bc/buAdWcvWsqWU7CKWYIeqf+C7+8ZhAt7LPecKKznTH0emlnp 98Fu6mvbgDfbglozZ5Giq/4HFLZhqqLY8RlXqfYHlG+0MJ9vozbE/vLan6YfZ2ieK9Yr YO4g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from; bh=emalu+RU6NKjsDIei5BQkypFt2sF0vHK1QIWFiVD7uc=; fh=A4xb2fCGX79uDhYJqRZ3AghzjPv94BRjkyp0HlF3dqU=; b=PZsSes/f7dqTi+Ur7CLOYwSmkiiNyrXELL3z4xZsJhqWnq/6NcmC1NMvpianERHutr v+kN378yUSXinx0OXunkSzwS8GAyOPstRAVgVDjMQ0tlw3+RJ/SRpceRELY6GHbz91QH kO/Oe1I9RGSOAAhaOly2odcTJkgyabWJMQ34lwHGU5pinU7WnahAywpR/MBqcwgLMWWx VCfrDcHvmpQNid5wrpGEILtQVZwRkfawOYxZPyORiMfvIW/hC5++kXhxGXbBabIQx94H 1T5iEAHgIp9qEaa5uWDGFEg09shzognaLV7Irgqddz3cEGkKSYeu0cclSClIldjpBjSF QRUA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; arc=pass (i=1 spf=pass spfdomain=arm.com dmarc=pass fromdomain=arm.com); spf=pass (google.com: domain of linux-kernel+bounces-65804-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-65804-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com X-Forwarded-Encrypted: i=2; AJvYcCU3e+Oa3646vrYu6E6StBx0HLyQEoZf8VVF1Nc7Ttbqa6DL1qF5xUSY7+ayQD/u2XNglvXnE5cwwveFwaLVrBNnQZxeMmsWNZC0JarE0w== Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id c3-20020a170902d90300b001db719a840csi291602plz.569.2024.02.14.10.43.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Feb 2024 10:43:46 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-65804-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; arc=pass (i=1 spf=pass spfdomain=arm.com dmarc=pass fromdomain=arm.com); spf=pass (google.com: domain of linux-kernel+bounces-65804-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-65804-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 8BA5728B8BA for ; Wed, 14 Feb 2024 18:30:37 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 8D54712C52A; Wed, 14 Feb 2024 18:30:35 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 75CD612BF0B for ; Wed, 14 Feb 2024 18:30:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707935435; cv=none; b=qJdom3P+NmCnmh7S4ebwrBClhNluxBNqyi0qZvs5FaMmopdLwp3vLz5Qy4G2jbn+BZ6fOpFfnP25dYNr8HRT6o9n0DUb8OuyuLTpF4n0hTEPJXhNWE4wxPaGBBgbYAxomFWtGrH41ATAIOscgG+ragN4ju0HchfEOSGYP5SabhQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707935435; c=relaxed/simple; bh=oguWnocZws5vf+j1aiEz+HdHe1tJCGNmDLJH2xJJZ04=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=sK2VOX7u3Z46+Z8fXWFcpjuts+BGTD7WCncHBec4b3BEq1NabdYvbQuxAX4WrLPDwOftmbUsKgYDIqqg6QC98/55uGTcMO5ipwNYC7uMuA6gtit07kpKo9I8Ch8lamq+lAdySKWqIEkIuuQvu6DB26+B3Lk5TReb/HezaXsJklE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com 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 A8B161FB; Wed, 14 Feb 2024 10:31:11 -0800 (PST) Received: from pluto.fritz.box (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 015763F7B4; Wed, 14 Feb 2024 10:30:28 -0800 (PST) From: Cristian Marussi To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: sudeep.holla@arm.com, james.quinlan@broadcom.com, f.fainelli@gmail.com, vincent.guittot@linaro.org, peng.fan@oss.nxp.com, michal.simek@amd.com, quic_sibis@quicinc.com, quic_nkela@quicinc.com, souvik.chakravarty@arm.com, Cristian Marussi Subject: [PATCH 0/7] SCMI V3.2 Misc updates Date: Wed, 14 Feb 2024 18:29:59 +0000 Message-ID: <20240214183006.3403207-1-cristian.marussi@arm.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi, another round of updates related to the last v3.2 SCMI spec, mostly around Clock protocol. Note that the series is based on sudeep/for-next/scmi/updates on top of 7dd3d11f4dac ("clk: scmi: Add support for forbidden clock state controls") and patch [1/7], which was included in the recently posted [1], it is included also here just for ease of usage. (since needed also here ofc) Having said that, [2/7] add a centralized support to the SCMI core to handle v3.2 optional protocol version negotiation, so that at protocol initialization time, mif the platform advertised version is newer than supported by the kernel and protocol version negotiation is supported, the SCMI core will attempt to negotiate an older protocol version. Patches 3,4,5 adds the remaining last missing bits of Clock v3.2 protocol and bumps the supported protocol version to 0x30000 (v3.2). On top of these new SCMI additions, [6/7] reworks at first slightly how the clk-scmi driver configures per-clock CLK ops, and then [7/7] adds support for clock get/set duty cycle, as allowed by the last v3.2 spec additions, but only if the related SCMI clk domain supports that specific clock permissions. Thanks, Cristian [1]: https://lore.kernel.org/linux-arm-kernel/20240212123233.1230090-3-cristian.marussi@arm.com/ --- Cristian Marussi (7): firmware: arm_scmi: Add a common helper to check if a message is supported firmware: arm_scmi: Add support for v3.2 NEGOTIATE_PROTOCOL_VERSION firmware: arm_scmi: Add Clock check for extended config support firmware: arm_scmi: Add standard Clock OEM definitions firmware: arm_scmi: Update supported Clock protocol version clk: scmi: Allocate CLK operations dynamically clk: scmi: Support get/set duty_cycle operations drivers/clk/clk-scmi.c | 168 +++++++++++++++++--------- drivers/firmware/arm_scmi/clock.c | 67 +++++++--- drivers/firmware/arm_scmi/driver.c | 99 ++++++++++++++- drivers/firmware/arm_scmi/protocols.h | 5 + include/linux/scmi_protocol.h | 15 ++- 5 files changed, 270 insertions(+), 84 deletions(-) -- 2.43.0