On Wed, Feb 14, 2024 at 5:14 AM Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx> wrote: > > On Sat, 10 Feb 2024 14:45:58 -0600 > Adam Ford <aford173@xxxxxxxxx> wrote: > > > From: Lucas Stach <l.stach@xxxxxxxxxxxxxx> > > > > This adds the driver for the Samsung HDMI PHY found on the > > i.MX8MP SoC. Based on downstream implementation from > > Sandor Yu <Sandor.yu@xxxxxxx>. According to the TRM, the PHY > > receives parallel data from the link and serializes it. It > > also sets the PLL clock needed for the TX serializer. > > > > Tested-by: Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx> (v2) > > Tested-by: Richard Leitner <richard.leitner@xxxxxxxxxxx> (v2) > > Co-developed-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> > > Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> > > Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx> > > Tested-by: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx> > > Tested-by: Frieder Schrempf <frieder.schrempf@xxxxxxxxxx> # Kontron BL > > Tested-by: Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx> > > Signed-off-by: Adam Ford <aford173@xxxxxxxxx> > > [...] > > > +static int phy_clk_register(struct fsl_samsung_hdmi_phy *phy) > > +{ > > + struct device *dev = phy->dev; > > + struct device_node *np = dev->of_node; > > + struct clk_init_data init; > > + const char *parent_name; > > + struct clk *phyclk; > > + int ret; > > + > > + parent_name = __clk_get_name(phy->refclk); > > + > > + init.parent_names = &parent_name; > > + init.num_parents = 1; > > + init.flags = 0; > > + init.name = "hdmi_pclk"; > > + init.ops = &phy_clk_ops; > > + > > + phy->hw.init = &init; > > + > > + phyclk = devm_clk_register(dev, &phy->hw); > > + if (IS_ERR(phyclk)) > > + return dev_err_probe(dev, PTR_ERR(phyclk), > > + "failed to register clock\n"); > > + > > + ret = of_clk_add_provider(np, of_clk_src_simple_get, phyclk); > > As per my v8 review, this function is deprecated: > https://elixir.bootlin.com/linux/v6.8-rc4/source/drivers/clk/clk.c#L4881 > When I found out that the entire driver I pulled was the wrong starting point, and noticed that this version had very little in common with the previous one, I didn't review the feedback knowing tha tI would have thrown away any of the tags from it since it was such a drastic change. I should have caught it, but I missed it, so apologies for that. I will be sure to include this feedback in the next attempt. > However: > > [Tested using Avnet MSC SM2S-IMX8PLUS SoM on Avnet MSC SM2-MB-EP1] > Tested-by: Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx> Thanks for testing. adam > > Luca > > -- > Luca Ceresoli, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com