Re: [PATCH v5 1/2] dt-bindings: clk: microchip: Add Microchip PolarFire host binding
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2021-06-30 17:26:51
Also in:
linux-devicetree
Hi Daire, On Fri, May 28, 2021 at 4:19 PM [off-list ref] wrote:
From: Daire McNamara <daire.mcnamara@microchip.com> Add device tree bindings for the Microchip PolarFire system clock controller Signed-off-by: Daire McNamara <daire.mcnamara@microchip.com>
Thanks for your patch!
quoted hunk ↗ jump to hunk
--- /dev/null +++ b/Documentation/devicetree/bindings/clock/microchip,mpfs.yaml@@ -0,0 +1,67 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/microchip,mpfs.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Microchip PolarFire Clock Control Module Binding + +maintainers: + - Daire McNamara <daire.mcnamara@microchip.com> + +description: | + Microchip PolarFire clock control (CLKCFG) is an integrated clock controller, + which gates and enables all peripheral clocks. + + This device tree binding describes 33 gate clocks. Clocks are referenced by + user nodes by the CLKCFG node phandle and the clock index in the group, from + 0 to 32. + +properties: + compatible: + const: microchip,mpfs-clkcfg + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + '#clock-cells': + const: 1 + description: | + The clock consumer should specify the desired clock by having the clock + ID in its "clocks" phandle cell. See include/dt-bindings/clock/microchip,mpfs-clock.h + for the full list of PolarFire clock IDs. + + clock-output-names: + maxItems: 33
Do you need clock-output-names? From a quick glance, the driver doesn't seem to need it.
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - '#clock-cells'
+ - clock-output-names
+
+additionalProperties: false
+
+examples:
+ # Clock Config node:
+ - |
+ #include <dt-bindings/clock/microchip,mpfs-clock.h>
+ soc {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ clkcfg: clock-controller@20002000 {
+ compatible = "microchip,mpfs-clkcfg";
+ reg = <0x0 0x20002000 0x0 0x1000>;
+ clocks = <&ref>;
+ #clock-cells = <1>;
+ clock-output-names = "cpu", "axi", "ahb", "envm", "mac0", "mac1", "mmc", "timer",
+ "mmuart0", "mmuart1", "mmuart2", "mmuart3", "mmuart4",
+ "spi0", "spi1", "i2c0", "i2c1", "can0", "can1", "usb", "rsvd",
+ "rtc", "qspi", "gpio0", "gpio1", "gpio2", "ddrc",
+ "fic0", "fic1", "fic2", "fic3", "athena", "cfm";
+ };
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds