On 1/21/25 10:47, Krzysztof Kozlowski wrote: > On Mon, Jan 20, 2025 at 06:20:54PM +0100, Michal Wilczynski wrote: >> properties: >> compatible: >> - const: thead,th1520-clk-ap >> + enum: >> + - thead,th1520-clk-ap >> + - thead,th1520-clk-vo >> >> reg: >> maxItems: 1 >> >> clocks: >> items: >> - - description: main oscillator (24MHz) >> + - description: main oscillator (24MHz) or CLK_VIDEO_PLL > > thead,th1520-clk-ap gets also VIDEO_PLL? Aren't both serving the same > purpose from these devices point of view? Bindings are telling what this > device is expecting. Since thead,th1520-clk-ap configures PLL clocks it takes the oscillator 24MHz as an input, so no. The VO subsystem takes as an input VIDEO_PLL that's configured by the AP. I could do something like this if this needs to be formally expressed in the schema: if: properties: compatible: contains: const: thead,th1520-clk-ap then: properties: clocks: description: main oscillator (24MHz) if: properties: compatible: contains: const: thead,th1520-clk-vo then: properties: clocks: description: VIDEO_PLL (derived from AP) for the VO clock controller. > >> >> "#clock-cells": >> const: 1 >> @@ -51,3 +54,10 @@ examples: >> clocks = <&osc>; >> #clock-cells = <1>; >> }; >> + >> + clock-controller@ff010000 { >> + compatible = "thead,th1520-clk-vo"; > > Difference in one property does not justify new example. If there is > goign to be resend, just drop. > > >> + reg = <0xff010000 0x1000>; >> + clocks = <&clk CLK_VIDEO_PLL>; >> + #clock-cells = <1>; > > Best regards, > Krzysztof > >