Hi Geert-san,
> From: Geert Uytterhoeven, Sent: Wednesday, September 5, 2018 11:00 PM
>
> Hi Shimoda-san,
>
> On Fri, Aug 31, 2018 at 12:36 PM Yoshihiro Shimoda
> <[email protected]> wrote:
> > R-Car Gen3 needs to enable clocks of both host and peripheral.
> > Since [eo]hci-platform disables the reset(s) when the drivers are
> > removed, renesas_usbhs driver doesn't work correctly. To fix this
> > issue, this patch adds multiple clocks management on this
> > renesas_usbhs driver.
> >
> > Signed-off-by: Yoshihiro Shimoda <[email protected]>
>
> Thanks for your patch!
>
> > --- a/drivers/usb/renesas_usbhs/common.c
> > +++ b/drivers/usb/renesas_usbhs/common.c
>
> > @@ -336,11 +337,26 @@ static void usbhsc_power_ctrl(struct usbhs_priv
> > *priv, int enable)
> > {
> > struct platform_device *pdev = usbhs_priv_to_pdev(priv);
> > struct device *dev = usbhs_priv_to_dev(priv);
> > + int ret;
> >
> > if (enable) {
> > /* enable PM */
> > pm_runtime_get_sync(dev);
> >
> > + /* enable clks if exist */
> > + if (priv->num_clks) {
> > + ret = clk_bulk_prepare(priv->num_clks, priv->clks);
> > + if (!ret) {
> > + ret = clk_bulk_enable(priv->num_clks,
> > + priv->clks);
> > + if (ret) {
> > + clk_bulk_unprepare(priv->num_clks,
> > + priv->clks);
> > + return;
> > + }
> > + }
>
> I think you misunderstood my comment: you can replace the calls to
> clk_bulk_prepare() and clk_bulk_enable() by a single call to
> clk_bulk_prepare_enable().
Oops! I overlooked the clk_bulk_prepare_enable()..
I'll submit v3 patch.
Best regards,
Yoshihiro Shimoda
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 --
> [email protected]
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like
> that.
> -- Linus Torvalds