Add the required LAN969x clock bindings.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
Changes in v2:
* Rename file to microchip,lan9691.h
include/dt-bindings/clock/microchip,lan9691.h | 24 +++++++++++++++++++
1 file changed, 24 insertions(+)
create mode 100644 include/dt-bindings/clock/microchip,lan9691.h
diff --git a/include/dt-bindings/clock/microchip,lan9691.h b/include/dt-bindings/clock/microchip,lan9691.h
new file mode 100644
index 000000000000..260370c2b238
--- /dev/null
+++ b/include/dt-bindings/clock/microchip,lan9691.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+
+#ifndef _DT_BINDINGS_CLK_LAN9691_H
+#define _DT_BINDINGS_CLK_LAN9691_H
+
+#define GCK_ID_QSPI0 0
+#define GCK_ID_QSPI2 1
+#define GCK_ID_SDMMC0 2
+#define GCK_ID_SDMMC1 3
+#define GCK_ID_MCAN0 4
+#define GCK_ID_MCAN1 5
+#define GCK_ID_FLEXCOM0 6
+#define GCK_ID_FLEXCOM1 7
+#define GCK_ID_FLEXCOM2 8
+#define GCK_ID_FLEXCOM3 9
+#define GCK_ID_TIMER 10
+#define GCK_ID_USB_REFCLK 11
+
+/* Gate clocks */
+#define GCK_GATE_USB_DRD 12
+#define GCK_GATE_MCRAMC 13
+#define GCK_GATE_HMATRIX 14
+
+#endif
--
2.52.0
On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > Add the required LAN969x clock bindings. I do not see clock bindings actually here. Where is the actual binding? Commit msg does not help me at all to understand why you are doing this without actual required bindings. Please use subject prefixes matching the subsystem. You can get them for example with 'git log --oneline -- DIRECTORY_OR_FILE' on the directory your patch is touching. For bindings, the preferred subjects are explained here: https://www.kernel.org/doc/html/latest/devicetree/bindings/submitting-patches.html#i-for-patch-submitters Bindings never have a "include" prefix. A nit, subject: drop second/last, redundant "bindings". The "dt-bindings" prefix is already stating that these are bindings. See also: https://elixir.bootlin.com/linux/v6.17-rc3/source/Documentation/devicetree/bindings/submitting-patches.rst#L18 Best regards, Krzysztof
On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > > Add the required LAN969x clock bindings. > > I do not see clock bindings actually here. Where is the actual binding? > Commit msg does not help me at all to understand why you are doing this > without actual required bindings. I guess it is a bit confusing, there is no schema here, these are the clock indexes that reside in dt-bindings and are used by the SoC DTSI. I guess I should have titled this something like: dt-bindings: clock: lan969x: add binding includes for LAN969x clock IDs Regards, Robert > > Please use subject prefixes matching the subsystem. You can get them for > example with 'git log --oneline -- DIRECTORY_OR_FILE' on the directory > your patch is touching. For bindings, the preferred subjects are > explained here: > https://www.kernel.org/doc/html/latest/devicetree/bindings/submitting-patches.html#i-for-patch-submitters > Bindings never have a "include" prefix. > > A nit, subject: drop second/last, redundant "bindings". The > "dt-bindings" prefix is already stating that these are bindings. > See also: > https://elixir.bootlin.com/linux/v6.17-rc3/source/Documentation/devicetree/bindings/submitting-patches.rst#L18 > > Best regards, > Krzysztof > -- Robert Marko Staff Embedded Linux Engineer Sartura d.d. Lendavska ulica 16a 10000 Zagreb, Croatia Email: robert.marko@sartura.hr Web: www.sartura.hr
On 24/12/2025 11:30, Robert Marko wrote: > On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: >> >> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: >>> Add the required LAN969x clock bindings. >> >> I do not see clock bindings actually here. Where is the actual binding? >> Commit msg does not help me at all to understand why you are doing this >> without actual required bindings. > > I guess it is a bit confusing, there is no schema here, these are the > clock indexes that > reside in dt-bindings and are used by the SoC DTSI. I understand as not used by drivers? Then no ABI and there is no point in putting them into bindings. Best regards, Krzysztof
On Wed, Dec 24, 2025 at 2:05 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On 24/12/2025 11:30, Robert Marko wrote: > > On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > >> > >> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > >>> Add the required LAN969x clock bindings. > >> > >> I do not see clock bindings actually here. Where is the actual binding? > >> Commit msg does not help me at all to understand why you are doing this > >> without actual required bindings. > > > > I guess it is a bit confusing, there is no schema here, these are the > > clock indexes that > > reside in dt-bindings and are used by the SoC DTSI. > > I understand as not used by drivers? Then no ABI and there is no point > in putting them into bindings. It is not included by the driver directly, but it requires these exact indexes to be passed so its effectively ABI. LAN966x does the same, but they differ in number of clocks and their indexes. Regards, Robert > > Best regards, > Krzysztof -- Robert Marko Staff Embedded Linux Engineer Sartura d.d. Lendavska ulica 16a 10000 Zagreb, Croatia Email: robert.marko@sartura.hr Web: www.sartura.hr
On 24/12/2025 15:01, Robert Marko wrote: > On Wed, Dec 24, 2025 at 2:05 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: >> >> On 24/12/2025 11:30, Robert Marko wrote: >>> On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: >>>> >>>> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: >>>>> Add the required LAN969x clock bindings. >>>> >>>> I do not see clock bindings actually here. Where is the actual binding? >>>> Commit msg does not help me at all to understand why you are doing this >>>> without actual required bindings. >>> >>> I guess it is a bit confusing, there is no schema here, these are the >>> clock indexes that >>> reside in dt-bindings and are used by the SoC DTSI. >> >> I understand as not used by drivers? Then no ABI and there is no point >> in putting them into bindings. > > It is not included by the driver directly, but it requires these exact > indexes to be passed > so its effectively ABI. How it requires the exact index? In what way? I do not see anything in the gck driver using/relying on these values. Nothing. Please point me to the line which directly uses these values.... or how many times I will need to write this is not ABI? Best regards, Krzysztof
On 25/12/2025 09:47:34+0100, Krzysztof Kozlowski wrote: > On 24/12/2025 15:01, Robert Marko wrote: > > On Wed, Dec 24, 2025 at 2:05 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > >> > >> On 24/12/2025 11:30, Robert Marko wrote: > >>> On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > >>>> > >>>> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > >>>>> Add the required LAN969x clock bindings. > >>>> > >>>> I do not see clock bindings actually here. Where is the actual binding? > >>>> Commit msg does not help me at all to understand why you are doing this > >>>> without actual required bindings. > >>> > >>> I guess it is a bit confusing, there is no schema here, these are the > >>> clock indexes that > >>> reside in dt-bindings and are used by the SoC DTSI. > >> > >> I understand as not used by drivers? Then no ABI and there is no point > >> in putting them into bindings. > > > > It is not included by the driver directly, but it requires these exact > > indexes to be passed > > so its effectively ABI. > > How it requires the exact index? In what way? I do not see anything in > the gck driver using/relying on these values. Nothing. Please point me > to the line which directly uses these values.... or how many times I > will need to write this is not ABI? > The index here is the exact id that needs to be set in the PMC_PCR register and so it is dictated by the hardware. -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Thu, Dec 25, 2025 at 05:24:55PM +0100, Alexandre Belloni wrote: > On 25/12/2025 09:47:34+0100, Krzysztof Kozlowski wrote: > > On 24/12/2025 15:01, Robert Marko wrote: > > > On Wed, Dec 24, 2025 at 2:05 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > >> > > >> On 24/12/2025 11:30, Robert Marko wrote: > > >>> On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > >>>> > > >>>> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > > >>>>> Add the required LAN969x clock bindings. > > >>>> > > >>>> I do not see clock bindings actually here. Where is the actual binding? > > >>>> Commit msg does not help me at all to understand why you are doing this > > >>>> without actual required bindings. > > >>> > > >>> I guess it is a bit confusing, there is no schema here, these are the > > >>> clock indexes that > > >>> reside in dt-bindings and are used by the SoC DTSI. > > >> > > >> I understand as not used by drivers? Then no ABI and there is no point > > >> in putting them into bindings. > > > > > > It is not included by the driver directly, but it requires these exact > > > indexes to be passed > > > so its effectively ABI. > > > > How it requires the exact index? In what way? I do not see anything in > > the gck driver using/relying on these values. Nothing. Please point me > > to the line which directly uses these values.... or how many times I > > will need to write this is not ABI? > > > > The index here is the exact id that needs to be set in the PMC_PCR > register and so it is dictated by the hardware. So not a binding between Linux and DTS. Best regards, Krzysztof
On Sat, Dec 27, 2025 at 12:17 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On Thu, Dec 25, 2025 at 05:24:55PM +0100, Alexandre Belloni wrote: > > On 25/12/2025 09:47:34+0100, Krzysztof Kozlowski wrote: > > > On 24/12/2025 15:01, Robert Marko wrote: > > > > On Wed, Dec 24, 2025 at 2:05 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > > >> > > > >> On 24/12/2025 11:30, Robert Marko wrote: > > > >>> On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > > >>>> > > > >>>> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > > > >>>>> Add the required LAN969x clock bindings. > > > >>>> > > > >>>> I do not see clock bindings actually here. Where is the actual binding? > > > >>>> Commit msg does not help me at all to understand why you are doing this > > > >>>> without actual required bindings. > > > >>> > > > >>> I guess it is a bit confusing, there is no schema here, these are the > > > >>> clock indexes that > > > >>> reside in dt-bindings and are used by the SoC DTSI. > > > >> > > > >> I understand as not used by drivers? Then no ABI and there is no point > > > >> in putting them into bindings. > > > > > > > > It is not included by the driver directly, but it requires these exact > > > > indexes to be passed > > > > so its effectively ABI. > > > > > > How it requires the exact index? In what way? I do not see anything in > > > the gck driver using/relying on these values. Nothing. Please point me > > > to the line which directly uses these values.... or how many times I > > > will need to write this is not ABI? > > > > > > > The index here is the exact id that needs to be set in the PMC_PCR > > register and so it is dictated by the hardware. > > So not a binding between Linux and DTS. > What would be your suggestion on moving forwarding regarding the clock HW indexes? LAN966x does the same with HW clock indexes in the dt-bindings includes. Regards, Robert > Best regards, > Krzysztof > -- Robert Marko Staff Embedded Linux Engineer Sartura d.d. Lendavska ulica 16a 10000 Zagreb, Croatia Email: robert.marko@sartura.hr Web: www.sartura.hr
On 29/12/2025 13:07, Robert Marko wrote: >>>>>> I understand as not used by drivers? Then no ABI and there is no point >>>>>> in putting them into bindings. >>>>> >>>>> It is not included by the driver directly, but it requires these exact >>>>> indexes to be passed >>>>> so its effectively ABI. >>>> >>>> How it requires the exact index? In what way? I do not see anything in >>>> the gck driver using/relying on these values. Nothing. Please point me >>>> to the line which directly uses these values.... or how many times I >>>> will need to write this is not ABI? >>>> >>> >>> The index here is the exact id that needs to be set in the PMC_PCR >>> register and so it is dictated by the hardware. >> >> So not a binding between Linux and DTS. >> > > What would be your suggestion on moving forwarding regarding the clock > HW indexes? The same as for every other hardware constant, like interrupts, registers and addresses - you use the value directly. If you want nicer names, we moved them to DTS headers for several platforms (see several commits in the past). Best regards, Krzysztof
On 25/12/2025 17:25:07+0100, Alexandre Belloni wrote: > On 25/12/2025 09:47:34+0100, Krzysztof Kozlowski wrote: > > On 24/12/2025 15:01, Robert Marko wrote: > > > On Wed, Dec 24, 2025 at 2:05 PM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > >> > > >> On 24/12/2025 11:30, Robert Marko wrote: > > >>> On Wed, Dec 24, 2025 at 11:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > >>>> > > >>>> On Tue, Dec 23, 2025 at 09:16:12PM +0100, Robert Marko wrote: > > >>>>> Add the required LAN969x clock bindings. > > >>>> > > >>>> I do not see clock bindings actually here. Where is the actual binding? > > >>>> Commit msg does not help me at all to understand why you are doing this > > >>>> without actual required bindings. > > >>> > > >>> I guess it is a bit confusing, there is no schema here, these are the > > >>> clock indexes that > > >>> reside in dt-bindings and are used by the SoC DTSI. > > >> > > >> I understand as not used by drivers? Then no ABI and there is no point > > >> in putting them into bindings. > > > > > > It is not included by the driver directly, but it requires these exact > > > indexes to be passed > > > so its effectively ABI. > > > > How it requires the exact index? In what way? I do not see anything in > > the gck driver using/relying on these values. Nothing. Please point me > > to the line which directly uses these values.... or how many times I > > will need to write this is not ABI? > > > > The index here is the exact id that needs to be set in the PMC_PCR > register and so it is dictated by the hardware. This is the line you are looking for: https://elixir.bootlin.com/linux/v6.18.2/source/drivers/clk/at91/clk-generated.c#L44 regmap_write(gck->regmap, gck->layout->offset, (gck->id & gck->layout->pid_mask)); > > > -- > Alexandre Belloni, co-owner and COO, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
© 2016 - 2026 Red Hat, Inc.