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.133.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 87F7F334C1F for ; Thu, 8 Jan 2026 21:17:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767907033; cv=none; b=n+aHek8yzC0K7Dm1pv2Aip1PbyS7c6zyfc/LMvNm/XKdb9yB/eO2eTlpXIfHXPpNCn6WmXehgjr1w7px9+9u9qC7k9IBAfCr2lRe2wIJsqyjaVZIlF5Tj1nHSWMlAZseG+KDw11FnIvg7QdwkLeNScOyl8igczZx99Ljmevg5/c= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767907033; c=relaxed/simple; bh=5gEzfGrJrZBcK9ab2+97vww3qO4uDY2TibGccFpsz3I=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=dRD1kLJZqqrM8Fi79ZVSqOZfI1Vwy88q68oUq1/m05sZ+u2PuGmJMCHBmhD9K3EXMcq6QAIAp1lHONs7xj6s2n2yczaH4t1Eb/TTtklh+cYijeYmPKw+mXyNy3Rqf2bWmEUrn0wKWtvCt6ILpNVMOOzWnww3FZZ/nRk7nUNRDtU= 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=JxU0u2rA; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=p+4ri8QJ; arc=none smtp.client-ip=170.10.133.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="JxU0u2rA"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="p+4ri8QJ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1767907026; 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=ne57iAfUngCEZ/eJnFXNUIoW6Gx1gYxdMUdG2ktOUNY=; b=JxU0u2rAqLLgObICtO/LydX4/F68sVrdPi7tDQ8qIcYcf/4q4vTBeCQt8APznRlIc3irsA mSc/8w1RSNM7WyKl/gEBKqBqeEZiGg3L+W8KZTE0V1EFK+kEMthHtMnwyKbSXzJ262L/Fp 8K4OjlHCkk3MEkwSd5785vNfEzVmoCs= Received: from mail-ua1-f70.google.com (mail-ua1-f70.google.com [209.85.222.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-132-gEqS0wk0M8e5UPSvypqwJA-1; Thu, 08 Jan 2026 16:17:05 -0500 X-MC-Unique: gEqS0wk0M8e5UPSvypqwJA-1 X-Mimecast-MFC-AGG-ID: gEqS0wk0M8e5UPSvypqwJA_1767907025 Received: by mail-ua1-f70.google.com with SMTP id a1e0cc1a2514c-93f5ac349ecso3577929241.3 for ; Thu, 08 Jan 2026 13:17:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1767907025; x=1768511825; darn=vger.kernel.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=ne57iAfUngCEZ/eJnFXNUIoW6Gx1gYxdMUdG2ktOUNY=; b=p+4ri8QJwFCJ26x1u00s5MsGP+cATPO+y4dg/CSbkLtgP1aFco1DKB91M7p0KftLC/ mGm27JaaOQ/rnaFqLgVWW7x8VjzYWnY7z2D+C5fk9lUi9vHufcCgvnGco7loOi3meeW1 dbYB+Ben0m/aMErLqW+NhK4m7EjWeUaKgVFZVKEVZHAI1cUzas3j/h6Li5rzWcAolraD ES64kaYiuYl+aRXFGBI7oDqHQmXELo4+6n/1tLehB50KDpOEmvpsxu6XfLvzAVscaasi FWyKV8fz81qfL2AdE26ljrHoXP3VoDl6aIIBCf1/Xk1TcGGAHa75RsQGJF8Tt1WSPM6G +RSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767907025; x=1768511825; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ne57iAfUngCEZ/eJnFXNUIoW6Gx1gYxdMUdG2ktOUNY=; b=g3CnR8s57OMcGhiaAc9WmeH+jzAXk21fgJvO/JLZpmmzo/OV9odSfLRDYUz5u36JGT qEsxs0iRm51n9r1rtdo3u/lS3ICa7SxwBfAjB/5Dni+zfDOXLyFOHPbLz4iO69SIPia6 umqyNeDxk2/+1xmmzbJ8ZSSfygy+JUaHQv6AY4E/JAmd2rAL258aWJZDfF5cycj2x9xx zEh0opaiJLOzV5Tt+LD+1lfDJbr/367/d8GKfN7+oYtgpx/wU0yvsCzvi08R2/Pdqhty qQib3532ikagkL7rtBArU0uaweFGhihcg0ZeckV7yEC+ih7hiCZP+VNsLA1jyUmPm/Zg oyQQ== X-Forwarded-Encrypted: i=1; AJvYcCUA4FgyUKPWXo78OOqMzJa5iJ67KEPlK071B16yj2GgnT6eJ6x/zVMGfjLrpXdpmB7MTjMWJURAplmGkSw=@vger.kernel.org X-Gm-Message-State: AOJu0YwoRxinDEt2PvkG+qfHirEGPoeqI7XtIhECyC6yQhwC/dCjeXGm lWPP2skxPBHL4EY+uWMZpewL6fYqtTrEhpxyE+1mNlbNtfICKgtKfDUKUWoPhmxKqamYDPz9X43 lywCRi2fdSDfVHCPO5injH+ray7iNS9i6sMuNVydq1bjRGnx8MCKYPHCc+mhAV6+IsA== X-Gm-Gg: AY/fxX5aAAKBXgAarue6sa4ugM/s49WVGNWBv72TIeGW95pPybwD9bi8j9b1CIp/qIw 4lG5/JIQhOI+hUva9tIHqxgV2d92worbhgvtokYipkcJw8WJUYT9wjTnbte0PP28Ev6xJZqFaRC VsCCpvD+EZ9Nv9r1yKK1AYe+2rCegeHoSCa3bjkVMbi8bNU/NwJz7hMYY3LTw1sj5QRpgj+R1FN G4HFSRc+E5ZYsTzw1l6WqF++eEQ00cDZ/n4On0+0IYoblCsfdcLJzpy7UezInSf29AutwWaqWqd vGYqZHc7g8251LTwQYh6XHt15k/BC+gYlCFzuz4yOc2m+zUl73pfIeDeaFu+9PSBFnz16F4Rj0r Eo8oeOapsP32ad4Q= X-Received: by 2002:a05:6102:554b:b0:5ea:67f4:c1ad with SMTP id ada2fe7eead31-5ecb68aff05mr2988602137.21.1767907024799; Thu, 08 Jan 2026 13:17:04 -0800 (PST) X-Google-Smtp-Source: AGHT+IFz/p7kGP9fvfk2vXLPq3R9VUjKVw1cdN6NrP5mq/P0PGpCjqA4/hKeGKMrVWaYIPrb1wIVZw== X-Received: by 2002:a05:6102:554b:b0:5ea:67f4:c1ad with SMTP id ada2fe7eead31-5ecb68aff05mr2988572137.21.1767907024314; Thu, 08 Jan 2026 13:17:04 -0800 (PST) Received: from [10.30.226.224] ([2600:382:811f:d757:daa5:b867:12a3:9d12]) by smtp.gmail.com with ESMTPSA id ada2fe7eead31-5ec77064e86sm7623329137.7.2026.01.08.13.16.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 13:17:03 -0800 (PST) From: Brian Masney Subject: [PATCH 00/27] clk: remove deprecated API divider_round_rate() and friends Date: Thu, 08 Jan 2026 16:16:18 -0500 Message-Id: <20260108-clk-divider-round-rate-v1-0-535a3ed73bf3@redhat.com> 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="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAAAAAAAC/x3MwQqDMAyA4VeRnA0kHizsVcYO2kQNG3WkKkLpu 6/s+B3+v0BWN83w6Aq4XpZtTw3cdxC3Ka2KJs0w0DASU8D4eaPYZaKOvp9J0KdDkeMizGGmMRC 0+Ou62P0fP1+1/gDlVpEzaAAAAA== X-Change-ID: 20260107-clk-divider-round-rate-1cfd117b0670 To: Michael Turquette , Stephen Boyd Cc: linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Brian Masney , Chen Wang , Inochi Amaoto , sophgo@lists.linux.dev, Chen-Yu Tsai , Maxime Ripard , Jernej Skrabec , Samuel Holland , linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, Alexandre Belloni , linux-rtc@vger.kernel.org, =?utf-8?q?Andreas_F=C3=A4rber?= , Manivannan Sadhasivam , linux-actions@lists.infradead.org, Keguang Zhang , linux-mips@vger.kernel.org, Taichi Sugaya , Takao Orito , Jacky Huang , Shan-Chun Hung , Vladimir Zapolskiy , Piotr Wojtaszczyk , Bjorn Andersson , linux-arm-msm@vger.kernel.org, Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , linux-stm32@st-md-mailman.stormreply.com, Michal Simek , Rob Clark , Dmitry Baryshkov , David Airlie , Simona Vetter , Abhinav Kumar , Jessica Zhang , Sean Paul , Marijn Suijten , dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, Vinod Koul , Neil Armstrong , linux-phy@lists.infradead.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=5523; i=bmasney@redhat.com; s=20250903; h=from:subject:message-id; bh=5gEzfGrJrZBcK9ab2+97vww3qO4uDY2TibGccFpsz3I=; b=owGbwMvMwCW2/dJd9di6A+2Mp9WSGDIT5Lb+j2COyZDSrq1aGtHuW3Hnjb6jSZa7wqEZi1UKM +/wfPfoKGVhEONikBVTZFmSa1QQkbrK9t4dTRaYOaxMIEMYuDgFYCLePxj+cE8JZ4ir1XC94hPf wLfqhfvjO0u5RdiClDPF9/n9TrNyZGT4NKcq8ciUz4qK0XG3a+4381Zd+31jtWu5nMfx+TvuVsY xAAA= X-Developer-Key: i=bmasney@redhat.com; a=openpgp; fpr=A46D32705865AA3DDEDC2904B7D2DD275D7EC087 Here's a series that gets rid of the deprecated APIs divider_round_rate(), divider_round_rate_parent(), and divider_ro_round_rate_parent() since these functions are just wrappers for the determine_rate variant. Note that when I converted some of these drivers from round_rate to determine_rate, this was mistakenly converted to the following in some cases: req->rate = divider_round_rate(...) This is invalid in the case when an error occurs since it can set the rate to a negative value. So this series fixes those bugs and removes the deprecated APIs all in one go. Three of the patches ended up being a more complicated migration, and I put them as the first three patches in this series (clk: sophgo: cv18xx-ip), (clk: sunxi-ng), and (rtc: ac100). The remaining patches I feel are all straight forward. Merge strategy ============== Only three of the patches are outside of drivers/clk (drm/msm, phy, and rtc). For simplicity, I think it would be easiest if Stephen takes this whole series through the clk tree. Subsystem maintainers please leave an Acked-by for Stephen. Thanks! Signed-off-by: Brian Masney --- Brian Masney (27): clk: sophgo: cv18xx-ip: convert from divider_round_rate() to divider_determine_rate() clk: sunxi-ng: convert from divider_round_rate_parent() to divider_determine_rate() rtc: ac100: convert from divider_round_rate() to divider_determine_rate() clk: actions: owl-composite: convert from owl_divider_helper_round_rate() to divider_determine_rate() clk: actions: owl-divider: convert from divider_round_rate() to divider_determine_rate() clk: bm1880: convert from divider_ro_round_rate() to divider_ro_determine_rate() clk: bm1880: convert from divider_round_rate() to divider_determine_rate() clk: hisilicon: clkdivider-hi6220: convert from divider_round_rate() to divider_determine_rate() clk: loongson1: convert from divider_round_rate() to divider_determine_rate() clk: milbeaut: convert from divider_ro_round_rate() to divider_ro_determine_rate() clk: milbeaut: convert from divider_round_rate() to divider_determine_rate() clk: nuvoton: ma35d1-divider: convert from divider_round_rate() to divider_determine_rate() clk: nxp: lpc32xx: convert from divider_round_rate() to divider_determine_rate() clk: qcom: alpha-pll: convert from divider_round_rate() to divider_determine_rate() clk: qcom: regmap-divider: convert from divider_ro_round_rate() to divider_ro_determine_rate() clk: qcom: regmap-divider: convert from divider_round_rate() to divider_determine_rate() clk: sophgo: sg2042-clkgen: convert from divider_round_rate() to divider_determine_rate() clk: sprd: div: convert from divider_round_rate() to divider_determine_rate() clk: stm32: stm32-core: convert from divider_ro_round_rate() to divider_ro_determine_rate() clk: stm32: stm32-core: convert from divider_round_rate_parent() to divider_determine_rate() clk: versaclock3: convert from divider_round_rate() to divider_determine_rate() clk: x86: cgu: convert from divider_round_rate() to divider_determine_rate() clk: zynqmp: divider: convert from divider_round_rate() to divider_determine_rate() drm/msm/dsi_phy_14nm: convert from divider_round_rate() to divider_determine_rate() phy: ti: phy-j721e-wiz: convert from divider_round_rate() to divider_determine_rate() clk: divider: remove divider_ro_round_rate_parent() clk: divider: remove divider_round_rate() and divider_round_rate_parent() drivers/clk/actions/owl-composite.c | 11 +-- drivers/clk/actions/owl-divider.c | 17 +--- drivers/clk/actions/owl-divider.h | 5 - drivers/clk/clk-bm1880.c | 13 +-- drivers/clk/clk-divider.c | 44 --------- drivers/clk/clk-loongson1.c | 5 +- drivers/clk/clk-milbeaut.c | 15 +-- drivers/clk/clk-versaclock3.c | 7 +- drivers/clk/hisilicon/clkdivider-hi6220.c | 6 +- drivers/clk/nuvoton/clk-ma35d1-divider.c | 7 +- drivers/clk/nxp/clk-lpc32xx.c | 6 +- drivers/clk/qcom/clk-alpha-pll.c | 21 ++-- drivers/clk/qcom/clk-regmap-divider.c | 16 +-- drivers/clk/sophgo/clk-cv18xx-ip.c | 154 ++++++++++++++++------------- drivers/clk/sophgo/clk-sg2042-clkgen.c | 15 +-- drivers/clk/sprd/div.c | 6 +- drivers/clk/stm32/clk-stm32-core.c | 42 +++----- drivers/clk/sunxi-ng/ccu_div.c | 25 +++-- drivers/clk/sunxi-ng/ccu_mp.c | 26 ++--- drivers/clk/sunxi-ng/ccu_mult.c | 16 +-- drivers/clk/sunxi-ng/ccu_mux.c | 49 +++++---- drivers/clk/sunxi-ng/ccu_mux.h | 8 +- drivers/clk/sunxi-ng/ccu_nkm.c | 25 ++--- drivers/clk/x86/clk-cgu.c | 6 +- drivers/clk/zynqmp/divider.c | 5 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_14nm.c | 7 +- drivers/phy/ti/phy-j721e-wiz.c | 5 +- drivers/rtc/rtc-ac100.c | 75 +++++++------- include/linux/clk-provider.h | 28 ------ 29 files changed, 257 insertions(+), 408 deletions(-) --- base-commit: f8f97927abf7c12382dddc93a144fc9df7919b77 change-id: 20260107-clk-divider-round-rate-1cfd117b0670 Best regards, -- Brian Masney