From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtpout-02.galae.net (smtpout-02.galae.net [185.246.84.56]) (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 13E3E2E8DFC; Tue, 12 May 2026 13:27:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.246.84.56 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778592461; cv=none; b=Mk07iaZEjB7judJFrbEtgEk6gRsWdJYLHaAZDEV5aWHH9PqnSgnNq8DeDDiEMr2DeL3RqZZ4w0XWVOA+vaebMdMGtav1nP/I3IcvM+J1HxcKO9PtfltpdayUUd86rOI0nn0u4Ph3MP04f0idV3pbETvg45FFJA/rvS5GtV7kX4k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778592461; c=relaxed/simple; bh=GOucduZf8AmFUdwTFZY5EAcAJajv7H8fkDYDb+9hqbY=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=O96r5Uc7sjRy5JjGsdtRUteUEusdXmjdUA4rj3Azv6c5vQunSOA7W16bFcI/Ith9vbW3c4NDIrUMKLEG0M66ombR1k6EknFBshKYdGeuglYOA8yPvY4Q61lnkQsSl/LZqFd644O3fXR4yuMbRBRdrHS5dMZOkXvsLrO4iav0sVI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com; spf=pass smtp.mailfrom=bootlin.com; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b=cXPzCeDY; arc=none smtp.client-ip=185.246.84.56 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bootlin.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="cXPzCeDY" Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-02.galae.net (Postfix) with ESMTPS id A52681A3586; Tue, 12 May 2026 13:27:35 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 7310860646; Tue, 12 May 2026 13:27:35 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id B57EE11AF8CDC; Tue, 12 May 2026 15:27:30 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1778592454; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding; bh=SVf9x1fU9es/DZnj3Ad/SGfYJ7Y6+3Fw0H1+dTnnGt8=; b=cXPzCeDYR6Cr8oPnBasKrkABbUTHDVMPh75B0txHEZ5Sf1jES/3NTN/+gfbhvkocPdak8d IETPrT8ht/eFeuMCIoY81Ld3AG9ggX7W0kcdTdjd/0umymF1/eeTy/MrPVvn5W14IbUsl8 aUqIVpj5mpIJ92p+3H4z2v6NUM5HyQWiaA9JG94TLA4HG4NZcaukNBeu6oxC/j3sFZDALq zUfC8tVzOjmkKxXZ/PY1/AeBxrE5YELT/91+PnK/yAUOSNnjZ0YIlEDCGy0g4caNIDMq55 v+vJY0qvmGb3G5/5zDS1IyAdt4QNnBqDMMGv66QC4DGxhL4jgb/AjjLr4HYg9w== From: =?utf-8?q?Beno=C3=AEt_Monin?= Subject: [PATCH v6 0/9] Add clock and reset support for Mobileye EyeQ7H Date: Tue, 12 May 2026 15:26:59 +0200 Message-Id: <20260512-clk-eyeq7-v6-0-0540cce18fb2@bootlin.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-B4-Tracking: v=1; b=H4sIAKMqA2oC/2XRzW7DIAwH8FeJOI8KA4Gkp73HtAMfzorWJi3J0 Kqq7z6n1bZEORr79xeyb2zEnHBk++rGMpY0pqGnwrxULBxc/4E8RaqZFLIWjbA8HD85XvFiedc Gg06rCKphNH/O2KXvR9bbO9WHNE5Dvj6iC8yvz5RWqEVKAS646mohta+jQfnqh2E6pn4XhhObc 4r8syClXlpJtgGrdQTqxnZr1a81AmBl1WzRR++sF6DU1up/q8TKarJtND62kb6NYWvrhYXl1kp N1nQmOieDVMau7f25yIyXL7rF9Nwm825ETv1TmvZVsTvgOSgavv8APYbh4MABAAA= X-Change-ID: 20250807-clk-eyeq7-f9c6ea43d138 To: Vladimir Kondratiev , Gregory CLEMENT , =?utf-8?q?Th=C3=A9o_Lebrun?= , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Michael Turquette , Stephen Boyd , Brian Masney , Philipp Zabel Cc: =?utf-8?q?Beno=C3=AEt_Monin?= , Thomas Petazzoni , linux-mips@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org, Krzysztof Kozlowski , Sari Khoury X-Mailer: b4 0.15.2 X-Last-TLS-Session-Version: TLSv1.3 This patchset brings the support of the Other Logic Blocks (OLB) found in the first Mobileye SoC based on the RISC-V architecture, the EyeQ7H. Despite the change from MIPS to RISC-V, the Other Logic Blocks provide similar clock and reset functions to the controllers of the chip. This series introduces the device tree bindings of the SoC and the necessary changes to the clock and reset eyeq drivers. Since this series affects drivers used on Mobileye MIPS SoCs, mainly clk-eyeq, I tested that it does not introduce regressions on EyeQ5, EyeQ6H, and EyeQ6Lplus evaluation boards. In detail, the first patch adds the dt-bindings yaml and headers for the EyeQ7H OLB. Patch 2 adds the compatible entries to the reset-eyeq driver, and the necessary changes for the reset domains found in the EyeQ7H OLB. Patches 3 and 4 rework the handling of parent clocks in __clk_hw_register_fixed_factor() to make it identical to other clock types like divider or gate. This allows simplifying the registration functions built on top of the now exported __clk_hw_register_fixed_factor(). A new clk_hw_register_fixed_factor_pdata() is added that will be used in clk-eyeq later in the series. Patch 5 renames the defines and functions related to the PLL with the PLL type fracg, to make room for the other types of PLL found the in EyeQ7H OLB. Patch 6 introduces a new generic type of clock structure that can represents all clocks found in OLB. Then patch 7 and 8 converts all clocks defined in the driver to the new struct eqc_clock and remove all the previous separate clocks structures. Patch 9 adds the list of clocks as match data for the 14 OLB present in the EyeQ7H SoC, and the functions needed to probe the two PLL types found in the chip. This series is based on v7.1-rc3 as all the prerequisites have been merged. It also applies cleanly on the clk-next branch. Signed-off-by: Benoît Monin --- Changes in v6: - Rebased on v7.1-rc3. - Dropped the MAINTAINER update for now, this will go with the SoC series. - Link to v5: https://lore.kernel.org/r/20260317-clk-eyeq7-v5-0-6f6daa2c2367@bootlin.com Changes in v5: - Rebased in v7.0-rc1 + version 4 of eyeq6plus series. - Remove an superfluous whitespace and tidy up macros in clk-provider.h. - Link to v4: https://lore.kernel.org/r/20260304-clk-eyeq7-v4-0-9d6bd9d24bec@bootlin.com Changes in v4: - Rebased on v7.0-rc1 + version 3 of eyeq6plus series. - Link to v3: https://lore.kernel.org/r/20260114-clk-eyeq7-v3-0-8ebdba7b0133@bootlin.com Changes in v3: - Fix eyeq7h-olb DT bindings following Krzysztof review. - Link to v2: https://lore.kernel.org/r/20251224-clk-eyeq7-v2-0-81744d1025d9@bootlin.com Changes in v2: - Move the dt-bindings to their own files and sort the compatibles. - Reorder the changes in reset-eyeq and make the register access more readable. - Drop the validity check on even divider. Unnecessary since it is always called from a clock .set_rate(). - Drop the parameters check on divider registration. Will be posted separately. - Switch to a new generic struct for describing the clocks. - Add an entry to MAINTAINERS. - Link to v1: https://lore.kernel.org/r/20250903-clk-eyeq7-v1-0-3f5024b5d6e2@bootlin.com To: Vladimir Kondratiev To: Benoît Monin To: Gregory CLEMENT To: Théo Lebrun To: Rob Herring To: Krzysztof Kozlowski To: Conor Dooley To: Michael Turquette To: Stephen Boyd To: Brian Masney To: Philipp Zabel Cc: Thomas Petazzoni Cc: linux-mips@vger.kernel.org Cc: devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: linux-clk@vger.kernel.org --- Benoît Monin (9): dt-bindings: soc: mobileye: Add EyeQ7H OLB reset: eyeq: Add EyeQ7H compatibles clk: fixed-factor: Rework initialization with parent clocks clk: fixed-factor: Export __clk_hw_register_fixed_factor() clk: eyeq: Prefix the PLL registers with the PLL type clk: eyeq: Introduce a generic clock type clk: eyeq: Convert clocks declaration to eqc_clock clk: eyeq: Drop PLL, dividers, and fixed factors structs clk: eyeq: Add EyeQ7H compatibles .../bindings/soc/mobileye/mobileye,eyeq7h-olb.yaml | 192 +++ drivers/clk/clk-eyeq.c | 1245 +++++++++++++------- drivers/clk/clk-fixed-factor.c | 72 +- drivers/reset/reset-eyeq.c | 268 ++++- include/dt-bindings/clock/mobileye,eyeq7h-clk.h | 119 ++ include/linux/clk-provider.h | 56 +- 6 files changed, 1456 insertions(+), 496 deletions(-) --- base-commit: bb1459368dd795c43380057523f571d5eb0ddded change-id: 20250807-clk-eyeq7-f9c6ea43d138 Best regards, -- Benoît Monin, Bootlin Embedded Linux and Kernel engineering https://bootlin.com