On Thu, Dec 17, 2020 at 11:32 AM Stephen Boyd <sboyd@xxxxxxxxxx> wrote: > > Quoting Sergio Paracuellos (2020-12-17 02:14:10) > > On Thu, Dec 17, 2020 at 11:07 AM Stephen Boyd <sboyd@xxxxxxxxxx> wrote: > > > > > > Quoting Sergio Paracuellos (2020-12-17 02:01:39) > > > > > > > > On Thu, Dec 17, 2020 at 9:58 AM Stephen Boyd <sboyd@xxxxxxxxxx> wrote: > > > > > > > > > > Quoting Sergio Paracuellos (2020-11-22 01:55:52) > > > > > > > > > > > diff --git a/Documentation/devicetree/bindings/clock/mediatek,mt7621-clk.yaml b/Documentation/devicetree/bindings/clock/mediatek,mt7621-clk.yaml > > > > > > new file mode 100644 > > > > > > index 000000000000..6aca4c1a4a46 > > > > > > --- /dev/null > > > > > > +++ b/Documentation/devicetree/bindings/clock/mediatek,mt7621-clk.yaml > > > > > > > > > > > + compatible = "mediatek,mt7621-sysc", "syscon"; > > > > > > + reg = <0x0 0x100>; > > > > > > + > > > > > > + pll { > > > > > > > > > > clock-controller? Why can't the parent device be the clk provider and > > > > > have #clock-cells? > > > > > > > > > > > > > I don't get your point, sorry. Can you please explain this a bit more > > > > or point to me to an example to understand the real meaning of this? > > > > > > It looks like this is a made up child node of syscon so that a driver > > > can probe in the kernel. It would be more DT friendly to create a > > > platform device from the parent node's driver, or just register the clks > > > with the framework directly in that driver. > > > > We cannot create a platform device because we need clocks available in > > 'plat_time_init' before setting up the timer for the GIC. > > The only way I see to avoid this syscon and having this as a child > > node is to use architecture operations in > > 'arch/mips/include/asm/mach-ralink/ralink_regs.h' > > instead of getting a phandle using the regmap is being currently used... > > Can that be done with > > CLK_OF_DECLARE_DRIVER("mediatek,mt7621-sysc", my_timer_clk_init) > > ? Is the syscon used anywhere besides by the clk driver? Yes, for example all the gates use them to access SYSC_REG_CLKCFG1 in all of their 'mt7621_gate_ops' and also in all 'recalc_rate' functions where SYSC_REG_SYSTEM_CONFIG0, is readed.