Hi Shimoda-san, On Fri, Oct 25, 2019 at 10:44 AM Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> wrote: > > From: Geert Uytterhoeven, Sent: Friday, October 25, 2019 4:47 PM > > On Fri, Oct 25, 2019 at 3:36 AM Yoshihiro Shimoda > > <yoshihiro.shimoda.uh@xxxxxxxxxxx> wrote: > > > > From: Geert Uytterhoeven, Sent: Thursday, October 24, 2019 8:35 PM > > > <snip> > > > > > --- a/drivers/clk/renesas/rcar-usb2-clock-sel.c > > > > > +++ b/drivers/clk/renesas/rcar-usb2-clock-sel.c > > > > > > > @@ -131,6 +156,14 @@ static int rcar_usb2_clock_sel_probe(struct platform_device *pdev) > > > > > pm_runtime_enable(dev); > > > > > pm_runtime_get_sync(dev); > > > > > > > > pm_runtime_get_sync() will have already enabled the first module clock listed in > > > > the DT "clocks" property. > > > > > > > > If you want the driver to manage all clocks itself, perhaps the PM Runtime > > > > calls should be dropped? > > > > > > I'm thinking PM Runtime calls are related to power domain control so that we cannot > > > drop it. Or, since the hardware is the Always-on domain, can we drop it anyway? > > > > That's right: if the hardware block ever ends up in a non-always-on > > power domain, > > you won't have a choice but to use PM Runtime. > > So, should I keep the PM Runtime calls? I think they're good to have. Just make sure the PM Runtime status matches the state of the other clocks. > # In such the case, I should add to describe power-domains property into > # the dt-binding doc though :) Indeed. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx 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