Hi Geert-san, Thank you for your review! > From: Geert Uytterhoeven, Sent: Monday, November 18, 2019 7:25 PM > > Hi Shimoda-san, > > On Fri, Nov 1, 2019 at 8:03 AM Yoshihiro Shimoda > <yoshihiro.shimoda.uh@xxxxxxxxxxx> wrote: <snip> > > --- a/drivers/clk/renesas/rcar-usb2-clock-sel.c > > +++ b/drivers/clk/renesas/rcar-usb2-clock-sel.c > > > @@ -128,6 +146,14 @@ static int rcar_usb2_clock_sel_probe(struct platform_device *pdev) > > if (IS_ERR(priv->base)) > > return PTR_ERR(priv->base); > > > > + priv->clks[CLK_INDEX_EHCI_OHCI].clk = devm_clk_get(dev, "ehci_ohci"); > > + if (IS_ERR(priv->clks[CLK_INDEX_EHCI_OHCI].clk)) > > + return PTR_ERR(priv->clks[CLK_INDEX_EHCI_OHCI].clk); > > + > > + priv->clks[CLK_INDEX_HS_USB].clk = devm_clk_get(dev, "hs-usb-if"); > > + if (IS_ERR(priv->clks[CLK_INDEX_HS_USB].clk)) > > + return PTR_ERR(priv->clks[CLK_INDEX_HS_USB].clk); > > + > > Is these any specific reason you're not just filling in the .id fields first, > and calling devm_clk_bulk_get()? > > static const struct clk_bulk_data rcar_usb2_clocks[] = { > { .id = "ehci_ohci", }, > { .id = "hs-usb-if", }, > }; > > memcpy(priv->clks, rcar_usb2_clocks, sizeof(priv->clks)); > ... = devm_clk_bulk_get(dev, ARRAY_SIZE(priv->clks), priv->clks); > ... > > That way you can drop the enums, and use ARRAY_SIZE(rcar_usb2_clocks) > instead of CLK_NUM. I don't know why I didn't use devm_clk_bulk_get()... I'll fix the code. Best regards, Yoshihiro Shimoda