From: Rob Herring <robh@kernel.org>
To: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: Daniel Vetter <daniel@ffwll.ch>, David Airlie <airlied@gmail.com>,
Helge Deller <deller@gmx.de>, Jaroslav Kysela <perex@perex.cz>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Liam Girdwood <lgirdwood@gmail.com>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Mark Brown <broonie@kernel.org>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Maxime Ripard <mripard@kernel.org>,
Michal Simek <michal.simek@amd.com>,
Saravana Kannan <saravanak@google.com>,
Takashi Iwai <tiwai@suse.com>,
Thomas Zimmermann <tzimmermann@suse.de>,
Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>,
devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org,
linux-arm-kernel@lists.infradead.org,
linux-fbdev@vger.kernel.org, linux-media@vger.kernel.org,
linux-omap@vger.kernel.org, linux-sound@vger.kernel.org,
Sakari Ailus <sakari.ailus@iki.fi>
Subject: Re: [PATCH v6 1/9] of: property: add of_graph_get_next_port()
Date: Tue, 8 Oct 2024 09:18:34 -0500 [thread overview]
Message-ID: <20241008141834.GA1254664-robh@kernel.org> (raw)
In-Reply-To: <875xqj9tdf.wl-kuninori.morimoto.gx@renesas.com>
On Thu, Sep 26, 2024 at 12:00:12AM +0000, Kuninori Morimoto wrote:
> We have endpoint base functions
> - of_graph_get_next_device_endpoint()
> - of_graph_get_device_endpoint_count()
> - for_each_of_graph_device_endpoint()
>
> Here, for_each_of_graph_device_endpoint() loop finds each endpoints
>
> ports {
> port@0 {
> (1) endpoint {...};
> };
> port@1 {
> (2) endpoint {...};
> };
> ...
> };
>
> In above case, it finds endpoint as (1) -> (2) -> ...
>
> Basically, user/driver knows which port is used for what, but not in
> all cases. For example on flexible/generic driver case, how many ports
> are used is not fixed.
>
> For example Sound Generic Card driver which is used from many venders
> can't know how many ports are used. Because the driver is very
> flexible/generic, it is impossible to know how many ports are used,
> it depends on each vender SoC and/or its used board.
>
> And more, the port can have multi endpoints. For example Generic Sound
> Card case, it supports many type of connection between CPU / Codec, and
> some of them uses multi endpoint in one port.
> Then, Generic Sound Card want to handle each connection via "port"
> instead of "endpoint".
> But, it is very difficult to handle each "port" via existing
> for_each_of_graph_device_endpoint(). Getting "port" via of_get_parent()
> from "endpoint" doesn't work. see below.
>
> ports {
> port@0 {
> (1) endpoint@0 {...};
> (2) endpoint@1 {...};
> };
> port@1 {
> (3) endpoint {...};
> };
> ...
> };
>
> In other case, we want to handle "ports" same as "port" for some reasons.
>
> node {
> => ports@0 {
> port@0 { ... };
> port@1 { ... };
> ...
> };
> => ports@1 {
As I said before. No where is this documented. We're not going to add
common helpers for something undocumented and non-standard. Plus, this
patch is doing a lot more than $subject says.
Rob
next prev parent reply other threads:[~2024-10-08 14:18 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-25 23:59 [PATCH v6 0/9] of: property: add of_graph_get_next_port/port_endpoint() Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 1/9] of: property: add of_graph_get_next_port() Kuninori Morimoto
2024-10-08 14:18 ` Rob Herring [this message]
2024-09-26 0:00 ` [PATCH v6 2/9] of: property: add of_graph_get_next_port_endpoint() Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 3/9] ASoC: test-component: use new of_graph functions Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 4/9] ASoC: rcar_snd: " Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 5/9] ASoC: audio-graph-card: " Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 6/9] ASoC: audio-graph-card2: " Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 7/9] gpu: drm: omapdrm: " Kuninori Morimoto
2024-09-26 0:00 ` [PATCH v6 8/9] fbdev: omapfb: " Kuninori Morimoto
2024-09-26 0:01 ` [PATCH v6 9/9] media: xilinx-tpg: " Kuninori Morimoto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241008141834.GA1254664-robh@kernel.org \
--to=robh@kernel.org \
--cc=airlied@gmail.com \
--cc=broonie@kernel.org \
--cc=daniel@ffwll.ch \
--cc=deller@gmx.de \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mchehab@kernel.org \
--cc=michal.simek@amd.com \
--cc=mripard@kernel.org \
--cc=perex@perex.cz \
--cc=sakari.ailus@iki.fi \
--cc=saravanak@google.com \
--cc=tiwai@suse.com \
--cc=tomi.valkeinen@ideasonboard.com \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.