From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3E8CA3909B5 for ; Thu, 12 Mar 2026 15:04:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773327871; cv=none; b=fik8Zqhn7YWPUQDPrAdFb+xdG8TKEjlzg6qWQEYRRnABqFLBHq/qe/nD2ZxxYwc3Rl2WWdOtTGKJN3ekHqd5rtKhWoiSsRzqXGV1gCs+b9M+S9TBlaZI0zjGQenRFbcUX5Rn2q8WMS5AE8lZ+cibWaq1rmRWhY/HN/mfzxfN2UM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773327871; c=relaxed/simple; bh=RwUphGzbViQ9qL7gq7J5Xch/bPwQ+4prHGHwSo8IUiw=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=lU0ustc0a103bTY8cUhBKJMEQxWlI69+RXLLVvjAz86Su5pXDjuZktRNcKiVCXOMjXhOX3EpdZH9zKMayGx47GNVCloH1N/gMH+ZlmUE3CpB912Vo54R5L/x1KMrgv/zyZ7toSVglxF/RYsAJt587tqf1najZLFarbh8NG5vzx8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=abb/3aLs; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=gzBrExYB; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="abb/3aLs"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="gzBrExYB" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1773327869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5yubfebbZtWGWMyXAz+IUlEnaVFuppBxaYt4/00Rob0=; b=abb/3aLsgZEXV+1b/LP9/8kgesB7a6HQqk6vQonZtuyONZQdIpqpy9+DCV8QACeTGv9g8X jGTddLcWxuZuEor1HQIOBn9ZUTSiVYy4oBHacmj2qj7JwvKjJrD9gwqq10egOHWvr6qDly fvub64d8+CJ//NvyP7lWa8YpHtys2Wg= Received: from mail-ot1-f70.google.com (mail-ot1-f70.google.com [209.85.210.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-17-Wk23yHaGMX-froAKPfW1KQ-1; Thu, 12 Mar 2026 11:04:28 -0400 X-MC-Unique: Wk23yHaGMX-froAKPfW1KQ-1 X-Mimecast-MFC-AGG-ID: Wk23yHaGMX-froAKPfW1KQ_1773327867 Received: by mail-ot1-f70.google.com with SMTP id 46e09a7af769-7d7423ac71cso4897042a34.3 for ; Thu, 12 Mar 2026 08:04:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1773327867; x=1773932667; darn=vger.kernel.org; h=user-agent:content-transfer-encoding:content-disposition :mime-version:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to; bh=5yubfebbZtWGWMyXAz+IUlEnaVFuppBxaYt4/00Rob0=; b=gzBrExYBCEKEPjW8JnUm1+69E6mhX6Z3+vqLj+1b8JkdVOLZnrS5SiM73SwEV03CKY mQX6cF0gMfjOqB7TkduxyCimstDogYUozPdFkW/JECkNCzredRTr3zwbu9sITyTj8iTH 8kCarGJkFZzoE3rZgMHhADtmQvfPJNdVE7byBlw7YunREYt87ZGKO0I2r4Upz9Sl//BG Dky7ius+kBPa1njnJCtavwqnVhal5Hi/+g3EOLKx+12L3FYXXacXEX4A0IB3zHYSGGWx mVXIoqIDU/vecUQdIOWDblk8e/P3s9vtazmgjMqu1oQDfBzFfn+BemAB38YMms10giFt Uslw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773327867; x=1773932667; h=user-agent:content-transfer-encoding:content-disposition :mime-version:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=5yubfebbZtWGWMyXAz+IUlEnaVFuppBxaYt4/00Rob0=; b=XgBPVI447KEqx0j2Bz9mhpm5kHJa9hVv22nviIdHPTUfb0a0ybaq9lvEiA22dyTX4p LiP5AfWDzJPTjfL0UDpv+3hnc6oKXtdQkLG6YBKRCjjgorTI3ELDDVd8tCt7cg88AXTk XzORe3XnqIsiHrbaoe4k+lg6d+/Rcwms9s0UqQM0JM5oW6o6WffJJt07Mhk4gOFk14Zo L/Bx5WrHvuPhU1EQ4pgU1iP6JmtMi1FnwW7Q9Zx+PgEVq5b6SqTqbdE+y/mshyDk63oB IBPWyzghnijP4LnwpQRSJ7mxGywi+SmAwvE6alsKFn1dCwmI/zOpFvSK9d7KivxvgOYA D44Q== X-Forwarded-Encrypted: i=1; AJvYcCU2kX1UuBoLA18Yk3hb35n1YBCrvYfv3RfarHTisc+gv992IzqUd5RCyoH+tB/tOoRzxBA2l2es1w0ujB8=@vger.kernel.org X-Gm-Message-State: AOJu0Yx6XBQDE5FU1IgK1Q9wnwWmg9l8iL6g/uMGABwJK1AMvNlHmEfK T7PfNtMwD7QOmHobMma+hz7CCqRd5eis7yqHT6FRlTdu9GneHgMbt7fqsRY5tKCSivmSNDmronM 3Ey5k7yKxB7wsQkf0+krsQBGoaCIDdcdnKpa/hdqf8krOkQl+yhHkaUyMuhrZONk/2Q== X-Gm-Gg: ATEYQzyylt/CWeYzGGTHjwpDBSp9ji0lqyEANEWvwbHp4+A9h0G9jAZN2B0zhMCZpMr gY0Iaq21kpT98o/7UIdAwia26SglVB+UgCTinRtdSWRP5W8wTGszPxkYxQ08zUEz5xZjh5wD1tG DuN1jTye5ix/01E1yHhkygVfSZn0u+1CxcEsbcXatUyY6HcH0Meo6HbuRZ8PQDNLekUsbJVTiWD 6QUHDi0jCl/ofmgKiKXneSKJd6h58pmiVZv4zPHQwJnqdtTAVQEub71dQvn+lDUdo5Sa1zSxCGf /M19oY69+OI4YwoMqvjKU44zGPG6tnsByNa4rJDaaA6IU7C9nuy4W2Rjy2f8IWLsACCwe6oA2PO 1qaavzJxNgMk+9CzSJh3d7eDxhgQhjHkByNIHobyC4oAns+sHDSHi+Qn5 X-Received: by 2002:a05:6830:82fa:b0:7cf:d189:2a8b with SMTP id 46e09a7af769-7d76a6299d4mr4075498a34.2.1773327865587; Thu, 12 Mar 2026 08:04:25 -0700 (PDT) X-Received: by 2002:a05:6830:82fa:b0:7cf:d189:2a8b with SMTP id 46e09a7af769-7d76a6299d4mr4075408a34.2.1773327864586; Thu, 12 Mar 2026 08:04:24 -0700 (PDT) Received: from redhat.com (c-73-183-52-120.hsd1.pa.comcast.net. [73.183.52.120]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-89a65d17023sm36581046d6.49.2026.03.12.08.04.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Mar 2026 08:04:23 -0700 (PDT) Date: Thu, 12 Mar 2026 11:04:22 -0400 From: Brian Masney To: Stephen Boyd , Michael Turquette Cc: linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Andy Shevchenko , Ben Dooks , Chen-Yu Tsai , Felix Gu , Geert Uytterhoeven , =?iso-8859-1?Q?J=2E_Neusch=E4fer?= , Maxime Ripard , "Peng Fan (OSS)" , Shawn Guo Subject: [GIT PULL] clk: round one of improvements for v7.1 Message-ID: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit User-Agent: Mutt/2.2.14 (2025-02-20) Hi Stephen, Here's a pull for some fixes and improvements for the clk subsystem that's been posted over the last month. Details are in the signed git tag. I didn't include any new drivers, or changes where it looks like there is a submaintainer that typically sends you a pull separately. The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f: Linux 7.0-rc1 (2026-02-22 13:18:59 -0800) are available in the Git repository at: https://github.com/masneyb/linux tags/clk-for-stephen-round-1-v7.1 for you to fetch changes up to 5e31ef47fa888c9ce117a85bff6a7df26cb2c337: clk: scmi: Add i.MX95 OEM extension support for SCMI clock driver (2026-03-12 09:45:03 -0400) ---------------------------------------------------------------- Improvements to the clk core - Add support for clk spread spectrum, which reduces electromagnetic interference (EMI) by modulating the clk frequency a small amount to spread the energy across a wider bandwidth. The SCMI clk driver uses this new functionality. (Peng Fan) - Introduced the CLK_ROUNDING_NOOP flag, which is for the case where the determine_rate op is an empty function. This typically occurs when rounding is managed by firmware or the clock is capable of any rate. Nine clk drivers were updated to use this new flag: rp1, scpi, hisilicon/hi3660-stub, imx/clk-scu, qcom/clk-rpm, qcom/clk-rpmh, qcom/clk-smd-rpm, samsung/clk-acpm, sprd/pll. (Brian Masney) - Added kernel docs for all members of struct clk_core. (Brian Masney) - Simplify clk_is_match() and improve readability. (Geert Uytterhoeven) Remove deprecated APIs (all Brian Masney) - Converts clk-composite from round_rate() to determine_rate(). - Removes the round_rate() clk op. - Removes the deprecated functions divider_round_rate(), divider_round_rate_parent(), and divider_ro_round_rate_parent() since these are just wrappers for the corresponding determine_rate variant. KUnit Tests - Add tests for clk lookup by name. (Chen-Yu Tsai) - Introduced kunit tests for spread spectrum. (Peng Fan) - Minor cleanup to use HZ_PER_MHZ. (Brian Masney) Driver-specific updates not listed above - The SCMI driver gained support for OEM extensions. (Peng Fan) - Dropped the baikal-t1 SoC that will not be finalized / supported. (Andy Shevchenko) - Minor bug fixes / cleanups to various drivers across the clk tree: aspeed/ast2700 (Felix Gu), x86/lpss-atom (Andy Shevchenko), hisilicon/reset (Shawn Guo), hisilicon (J. Neuschäfer), xgene (Geert Uytterhoeven), mvebu/armada-37xx-periph (Ben Dooks), imx/scu (Brian Masney). ---------------------------------------------------------------- Andy Shevchenko (4): clk: baikal-t1: Remove not-going-to-be-supported code for Baikal SoC clk: x86: lpss-atom: Use predefined constants from units.h clk: x86: lpss-atom: Use temporary variable for struct device clk: x86: lpss-atom: Read frequency from the property Ben Dooks (1): clk: mvebu: armada-37xx-periph: fix __iomem casts in structure init Brian Masney (19): clk: test: remove references to clk_ops.round_rate clk: composite: convert from round_rate() to determine_rate() clk: remove round_rate() clk ops clk: divider: remove divider_ro_round_rate_parent() clk: divider: remove divider_round_rate() and divider_round_rate_parent() clk: add kernel docs for struct clk_core clk: test: convert constants to use HZ_PER_MHZ clk: add new flag CLK_ROUNDING_NOOP clk: test: add test suite for CLK_ROUNDING_NOOP flag clk: rp1: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: scpi: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: hisilicon: hi3660-stub: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: imx: scu: drop redundant init.ops variable assignment clk: imx: scu: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: qcom: rpm: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: qcom: rpmh: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: qcom: smd-rpm: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: samsung: acpm: drop determine_rate op and use CLK_ROUNDING_NOOP flag clk: sprd: drop determine_rate op and use CLK_ROUNDING_NOOP flag Chen-Yu Tsai (1): clk: tests: Add tests for clk lookup by name Felix Gu (1): clk: aspeed: ast2700: Add missing NULL pointer check for devm_kasprintf() Geert Uytterhoeven (2): clk: Simplify clk_is_match() clk: xgene: Fix mapping leak in xgene_pllclk_init() J. Neuschäfer (1): clk: hisilicon: Improve deallocation in error path Peng Fan (6): dt-bindings: clock: Add spread spectrum definition clk: Introduce clk_hw_set_spread_spectrum clk: conf: Support assigned-clock-sscs clk: Add KUnit tests for assigned-clock-sscs clk: scmi: Introduce common header for SCMI clock interface clk: scmi: Add i.MX95 OEM extension support for SCMI clock driver Shawn Guo (1): clk: hisilicon: reset: Use kzalloc instead of kmalloc .../bindings/clock/baikal,bt1-ccu-div.yaml | 196 ------- .../bindings/clock/baikal,bt1-ccu-pll.yaml | 131 ----- Documentation/driver-api/clk.rst | 9 +- drivers/clk/Kconfig | 1 - drivers/clk/Makefile | 9 +- drivers/clk/aspeed/clk-ast2700.c | 2 + drivers/clk/baikal-t1/Kconfig | 52 -- drivers/clk/baikal-t1/Makefile | 4 - drivers/clk/baikal-t1/ccu-div.c | 653 --------------------- drivers/clk/baikal-t1/ccu-div.h | 121 ---- drivers/clk/baikal-t1/ccu-pll.c | 560 ------------------ drivers/clk/baikal-t1/ccu-pll.h | 72 --- drivers/clk/baikal-t1/ccu-rst.c | 217 ------- drivers/clk/baikal-t1/ccu-rst.h | 67 --- drivers/clk/baikal-t1/clk-ccu-div.c | 520 ---------------- drivers/clk/baikal-t1/clk-ccu-pll.c | 277 --------- drivers/clk/clk-composite.c | 38 +- drivers/clk/clk-conf.c | 76 +++ drivers/clk/clk-divider.c | 44 -- drivers/clk/clk-rp1.c | 11 +- drivers/clk/clk-scmi-oem.c | 108 ++++ drivers/clk/clk-scmi.c | 44 +- drivers/clk/clk-scmi.h | 51 ++ drivers/clk/clk-scpi.c | 14 +- drivers/clk/clk-xgene.c | 2 + drivers/clk/clk.c | 177 +++++- drivers/clk/clk.h | 4 + drivers/clk/clk_test.c | 297 +++++++++- drivers/clk/hisilicon/clk-hi3660-stub.c | 14 +- drivers/clk/hisilicon/clk.c | 4 +- drivers/clk/hisilicon/reset.c | 2 +- drivers/clk/imx/clk-scu.c | 23 +- drivers/clk/kunit_clk_assigned_rates.h | 10 + drivers/clk/kunit_clk_assigned_rates_multiple.dtso | 6 + ...kunit_clk_assigned_rates_multiple_consumer.dtso | 6 + drivers/clk/kunit_clk_assigned_rates_one.dtso | 3 + .../clk/kunit_clk_assigned_rates_one_consumer.dtso | 3 + .../clk/kunit_clk_assigned_rates_u64_multiple.dtso | 6 + ...t_clk_assigned_rates_u64_multiple_consumer.dtso | 6 + drivers/clk/kunit_clk_assigned_rates_u64_one.dtso | 3 + .../kunit_clk_assigned_rates_u64_one_consumer.dtso | 3 + drivers/clk/kunit_clk_assigned_sscs_null.dtso | 16 + .../clk/kunit_clk_assigned_sscs_null_consumer.dtso | 20 + drivers/clk/kunit_clk_assigned_sscs_without.dtso | 15 + .../kunit_clk_assigned_sscs_without_consumer.dtso | 19 + drivers/clk/kunit_clk_assigned_sscs_zero.dtso | 12 + .../clk/kunit_clk_assigned_sscs_zero_consumer.dtso | 16 + drivers/clk/mvebu/armada-37xx-periph.c | 16 +- drivers/clk/qcom/clk-rpm.c | 16 +- drivers/clk/qcom/clk-rpmh.c | 8 +- drivers/clk/qcom/clk-smd-rpm.c | 15 +- drivers/clk/samsung/clk-acpm.c | 14 +- drivers/clk/sprd/pll.c | 7 - drivers/clk/sprd/pll.h | 2 +- drivers/clk/x86/clk-lpss-atom.c | 22 +- include/dt-bindings/clock/bt1-ccu.h | 48 -- include/dt-bindings/clock/clock.h | 14 + include/linux/clk-provider.h | 79 ++- 58 files changed, 943 insertions(+), 3242 deletions(-) delete mode 100644 Documentation/devicetree/bindings/clock/baikal,bt1-ccu-div.yaml delete mode 100644 Documentation/devicetree/bindings/clock/baikal,bt1-ccu-pll.yaml delete mode 100644 drivers/clk/baikal-t1/Kconfig delete mode 100644 drivers/clk/baikal-t1/Makefile delete mode 100644 drivers/clk/baikal-t1/ccu-div.c delete mode 100644 drivers/clk/baikal-t1/ccu-div.h delete mode 100644 drivers/clk/baikal-t1/ccu-pll.c delete mode 100644 drivers/clk/baikal-t1/ccu-pll.h delete mode 100644 drivers/clk/baikal-t1/ccu-rst.c delete mode 100644 drivers/clk/baikal-t1/ccu-rst.h delete mode 100644 drivers/clk/baikal-t1/clk-ccu-div.c delete mode 100644 drivers/clk/baikal-t1/clk-ccu-pll.c create mode 100644 drivers/clk/clk-scmi-oem.c create mode 100644 drivers/clk/clk-scmi.h create mode 100644 drivers/clk/kunit_clk_assigned_sscs_null.dtso create mode 100644 drivers/clk/kunit_clk_assigned_sscs_null_consumer.dtso create mode 100644 drivers/clk/kunit_clk_assigned_sscs_without.dtso create mode 100644 drivers/clk/kunit_clk_assigned_sscs_without_consumer.dtso create mode 100644 drivers/clk/kunit_clk_assigned_sscs_zero.dtso create mode 100644 drivers/clk/kunit_clk_assigned_sscs_zero_consumer.dtso delete mode 100644 include/dt-bindings/clock/bt1-ccu.h create mode 100644 include/dt-bindings/clock/clock.h