Hi Sudeep, > -----Original Message----- > From: Sudeep Holla [mailto:sudeep.holla@xxxxxxx] > Sent: Tuesday, May 15, 2018 2:34 AM > To: Jolly Shah <JOLLYS@xxxxxxxxxx>; ard.biesheuvel@xxxxxxxxxx; > mingo@xxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx; matt@xxxxxxxxxxxxxxxxxxx; > hkallweit1@xxxxxxxxx; keescook@xxxxxxxxxxxx; > dmitry.torokhov@xxxxxxxxx; mturquette@xxxxxxxxxxxx; > sboyd@xxxxxxxxxxxxxx; michal.simek@xxxxxxxxxx; robh+dt@xxxxxxxxxx; > mark.rutland@xxxxxxx; linux-clk@xxxxxxxxxxxxxxx > Cc: Sudeep Holla <sudeep.holla@xxxxxxx>; Rajan Vaja <RAJANV@xxxxxxxxxx>; > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > devicetree@xxxxxxxxxxxxxxx > Subject: Re: [PATCH v6 04/11] firmware: xilinx: Add query data API > > > > On 14/05/18 20:16, Jolly Shah wrote: > > HI Sudeep, > > > > [...] > > >> > >> Can you give more insight into this ? How will be this used ? How > >> this aligns with data we get from DT ? I am just trying to understand > >> how is this information split between this API and DT for example. > >> > > > > This API is used to get clock information from firmware and register > > clocks accordingly in driver. In our case, firmware maintains database > > of all clocks available on chip. DT will provide information for off > > chip reference clocks only. This is to avoid duplication of clocks > > data in DT and firmware both as firmware anyways need clock data to > > manage them. > > > > I wanted to understand the difference with example. What kind of information > you get from DT and what you get from firmware ? > > -- > Regards, > Sudeep Below is an example showing PLL and Leaf clock derivation: Input ref clocks->Mux->Multiplier/Divider->PLL* Pll1/pll2/pll3/pll4->Mux->Divider->Gate->Leaf clock1 Here Off chip input ref clock information comes from DT. Rest information for Pll/leaf clocks come from firmware using query API. For clock driver, query API is used to get topology, flags, parents etc information per clock. Thanks, Jolly Shah ��.n��������+%������w��{.n����z�{��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f