Hi Hervé, On Thu, Apr 14, 2022 at 1:29 PM Herve Codina <herve.codina@xxxxxxxxxxx> wrote: > On Thu, 14 Apr 2022 10:45:54 +0200 > Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote: > > On Thu, Apr 14, 2022 at 9:40 AM Herve Codina <herve.codina@xxxxxxxxxxx> wrote: > > > The PCI rcar-gen2 does not call any clk_prepare_enable(). > > > > Correct, this driver manages the clocks indirectly through Runtime PM. > > > > > This lead to an access failure when the driver tries to access > > > the IP (at least on a RZ/N1D platform). > > > > I expect adding > > > > power-domans = <&sysctrl>; > > > > to the pci_usb node makes this patch redundant. > > Seems not enough. > I tried what you suggest : > - Added 'power-domains = <&systrl>;' to the pci_usb node > - Added missing '#power-domain-cells = <0>;' to sysctrl node > - Reverted my patch. > > The system crashed at boot: > [ 0.832958] Unhandled fault: external abort on non-linefetch (0x1008) at 0x90b5f848 That's indeed a typical symptom of accessing a module's registers while the module's clock is disabled. > I also added a trace printk in r9a06g032-clocks.c and > r9a06g032_attach_dev() was never called. > > Did I miss to set something ? Do you have CONFIG_PM and CONFIG_PM_GENERIC_DOMAINS enabled? Apparently ARCH_RZN1 does not select these options yet. 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