devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ASoC: dt-bindings: renesas,rsnd: add post-init-providers property
@ 2024-09-04  7:21 Kuninori Morimoto
  2024-09-04 15:07 ` Rob Herring
  0 siblings, 1 reply; 3+ messages in thread
From: Kuninori Morimoto @ 2024-09-04  7:21 UTC (permalink / raw)
  To: Mark Brown, Rob Herring, Saravana Kannan; +Cc: Linux-ALSA, devicetree

sometimes, fwnode dependency cycles can be broken, and in such case,
rsnd driver will never be probed. To avoid such case, we would like to
use post-init-providers to avoid it.
Enable post-init-providers property on rsnd.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 Documentation/devicetree/bindings/sound/renesas,rsnd.yaml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
index 07ec6247d9def..cb44478d9e420 100644
--- a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
+++ b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
@@ -112,6 +112,10 @@ properties:
     description: List of necessary clock names.
     # details are defined below
 
+  post-init-providers:
+    description: ignore fw_devlink dependency cycles and avoid driver probe dead-lock
+    $ref: /schemas/types.yaml#/definitions/phandle-array
+
   # ports is below
   port:
     $ref: audio-graph-port.yaml#/definitions/port-base
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] ASoC: dt-bindings: renesas,rsnd: add post-init-providers property
  2024-09-04  7:21 [PATCH] ASoC: dt-bindings: renesas,rsnd: add post-init-providers property Kuninori Morimoto
@ 2024-09-04 15:07 ` Rob Herring
  2024-09-04 19:25   ` Saravana Kannan
  0 siblings, 1 reply; 3+ messages in thread
From: Rob Herring @ 2024-09-04 15:07 UTC (permalink / raw)
  To: Kuninori Morimoto; +Cc: Mark Brown, Saravana Kannan, Linux-ALSA, devicetree

On Wed, Sep 04, 2024 at 07:21:14AM +0000, Kuninori Morimoto wrote:
> sometimes, fwnode dependency cycles can be broken, and in such case,
> rsnd driver will never be probed. To avoid such case, we would like to
> use post-init-providers to avoid it.
> Enable post-init-providers property on rsnd.
> 
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> ---
>  Documentation/devicetree/bindings/sound/renesas,rsnd.yaml | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
> index 07ec6247d9def..cb44478d9e420 100644
> --- a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
> +++ b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
> @@ -112,6 +112,10 @@ properties:
>      description: List of necessary clock names.
>      # details are defined below
>  
> +  post-init-providers:
> +    description: ignore fw_devlink dependency cycles and avoid driver probe dead-lock

Drop. Don't need to describe (again) what a common property is. If you 
want to say what your dependency cycle is, that would be good.

> +    $ref: /schemas/types.yaml#/definitions/phandle-array

Already has a type, don't define one again.

What you need, if you know, is how many entries (maxItems).

Rob

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] ASoC: dt-bindings: renesas,rsnd: add post-init-providers property
  2024-09-04 15:07 ` Rob Herring
@ 2024-09-04 19:25   ` Saravana Kannan
  0 siblings, 0 replies; 3+ messages in thread
From: Saravana Kannan @ 2024-09-04 19:25 UTC (permalink / raw)
  To: Rob Herring; +Cc: Kuninori Morimoto, Mark Brown, Linux-ALSA, devicetree

On Wed, Sep 4, 2024 at 8:07 AM Rob Herring <robh@kernel.org> wrote:
>
> On Wed, Sep 04, 2024 at 07:21:14AM +0000, Kuninori Morimoto wrote:
> > sometimes, fwnode dependency cycles can be broken, and in such case,
> > rsnd driver will never be probed. To avoid such case, we would like to
> > use post-init-providers to avoid it.
> > Enable post-init-providers property on rsnd.

fwnode or fw_devlink cycles isn't broken. It's detecting the cycle
correctly. But it doesn't know one of the dependencies isn't an
initialization dependency. So you are providing additional information
to break the cycle. Please say something along those lines.

Here's a suggestion:

fw_devlink doesn't have enough information to break the cycle between
<list the device names>. Add post-init-providers property to <insert
the right device name> to indicate which link in the cycle to break.

-Saravana

> >
> > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> > ---
> >  Documentation/devicetree/bindings/sound/renesas,rsnd.yaml | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
> > index 07ec6247d9def..cb44478d9e420 100644
> > --- a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
> > +++ b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
> > @@ -112,6 +112,10 @@ properties:
> >      description: List of necessary clock names.
> >      # details are defined below
> >
> > +  post-init-providers:
> > +    description: ignore fw_devlink dependency cycles and avoid driver probe dead-lock
>
> Drop. Don't need to describe (again) what a common property is. If you
> want to say what your dependency cycle is, that would be good.
>
> > +    $ref: /schemas/types.yaml#/definitions/phandle-array
>
> Already has a type, don't define one again.
>
> What you need, if you know, is how many entries (maxItems).
>
> Rob

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-09-04 19:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-04  7:21 [PATCH] ASoC: dt-bindings: renesas,rsnd: add post-init-providers property Kuninori Morimoto
2024-09-04 15:07 ` Rob Herring
2024-09-04 19:25   ` Saravana Kannan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).