mbox series

[v3,00/24] of: property: add port base loop

Message ID 87o7d26qla.wl-kuninori.morimoto.gx@renesas.com (mailing list archive)
Headers show
Series of: property: add port base loop | expand

Message

Kuninori Morimoto Jan. 31, 2024, 5:04 a.m. UTC
Hi Rob

This is v3 of port base loop patch-set

We have "endpoint" base functions
	- of_graph_get_next_endpoint()
	- of_graph_get_endpoint_count()
	- for_each_endpoint_of_node()

But to handling "port" base things, it is not useful. We want to have
"port" base functions, too. This patch-set adds it.

Because current existing drivers couldn't use "port" base functions,
it were implemented in a different way. This patch-set doesn't try
to full-replace to avoid unknown bug, try easy / quick replace only
for now, but easy to know how "port" base functions are needed.

Because I can't test the driver which I can't use, non-ASoC drivers
needs Tested-by, Acked-by.

This patch-set renames existing "endpoint" to *_device_*
because it is rather than focusing to device's endpoint instead of
port's endpoint.

	- of_graph_get_next_endpoint()
	+ of_graph_get_next_device_endpoint()

	- of_graph_get_endpoint_count()
	+ of_graph_get_device_endpoint_count()

	- for_each_endpoint_of_node()
	+ for_each_device_endpoint_of_node()


[PATCH 01/24] - [PATCH 02/24] : tidyup existing endpoint function kerneldoc
[PATCH 03/24] - [PATCH 11/24] : replace existing function to *_device_*
[PATCH 12/24] - [PATCH 24/24] : add new function and use it

v2 -> v3
	- tidyup existing endpoint function kerneldoc
	- replace exising function to *_device_*

v1 -> v2
	- tidyup function explain
	- add missing header on each files

https://lore.kernel.org/r/87jzo0uda2.wl-kuninori.morimoto.gx@renesas.com
https://lore.kernel.org/r/87fryhklhb.wl-kuninori.morimoto.gx@renesas.com


Kuninori Morimoto (24):
   1) of: property: add missing kerneldoc for of_graph_get_endpoint_count()
   2) of: property: use unsigned int return on of_graph_get_endpoint_count()
   3) of: property: rename of_graph_get_next_endpoint() to of_graph_get_next_device_endpoint()
   4) video: fbdev: switch to use of_graph_get_next_device_endpoint()
   5) media: i2c: switch to use of_graph_get_next_device_endpoint()
   6) media: platform: switch to use of_graph_get_next_device_endpoint()
   7) gpu: drm: switch to use of_graph_get_next_device_endpoint()
   8) hwtracing: switch to use of_graph_get_next_device_endpoint()
   9) staging: switch to use of_graph_get_next_device_endpoint()
  10) ASoC: switch to use of_graph_get_next_device_endpoint()
  11) of: remove of_graph_get_next_endpoint() define
  12) of: property: add port base loop
  13) of: property: use of_graph_get_next_port() on of_graph_get_next_endpoint()
  14) of: property: add of_graph_get_next_endpoint()
  15) drm: omapdrm: use of_graph_get_next_endpoint()
  16) media: xilinx-tpg: use of_graph_get_next_endpoint()
  17) ASoC: audio-graph-card: use of_graph_get_next_endpoint()
  18) ASoC: audio-graph-card2: use of_graph_get_next_port()
  19) ASoC: audio-graph-card2: use of_graph_get_next_endpoint()
  20) ASoC: test-component: use for_each_port_of_node()
  21) fbdev: omapfb: use of_graph_get_remote_port()
  22) fbdev: omapfb: use of_graph_get_next_port()
  23) fbdev: omapfb: use of_graph_get_next_endpoint()
  24) fbdev: omapfb: use of_graph_get_next_device_endpoint()

 .clang-format                                 |   2 +-
 drivers/gpu/drm/armada/armada_drv.c           |   2 +-
 drivers/gpu/drm/bridge/tc358767.c             |   2 +-
 drivers/gpu/drm/drm_of.c                      |   6 +-
 drivers/gpu/drm/meson/meson_drv.c             |   4 +-
 drivers/gpu/drm/msm/msm_drv.c                 |   2 +-
 drivers/gpu/drm/mxsfb/lcdif_drv.c             |   2 +-
 drivers/gpu/drm/omapdrm/dss/base.c            |   2 +-
 drivers/gpu/drm/omapdrm/dss/dpi.c             |   2 +-
 drivers/gpu/drm/omapdrm/dss/sdi.c             |   2 +-
 .../drm/panel/panel-raspberrypi-touchscreen.c |   2 +-
 drivers/gpu/drm/pl111/pl111_drv.c             |   2 +-
 drivers/gpu/drm/renesas/rcar-du/rcar_du_kms.c |   2 +-
 drivers/gpu/drm/stm/ltdc.c                    |   4 +-
 drivers/gpu/drm/tiny/arcpgu.c                 |   2 +-
 .../hwtracing/coresight/coresight-platform.c  |   4 +-
 drivers/media/i2c/adv7343.c                   |   2 +-
 drivers/media/i2c/adv748x/adv748x-core.c      |   2 +-
 drivers/media/i2c/adv7604.c                   |   2 +-
 drivers/media/i2c/isl7998x.c                  |   2 +-
 drivers/media/i2c/max9286.c                   |   2 +-
 drivers/media/i2c/mt9p031.c                   |   2 +-
 drivers/media/i2c/mt9v032.c                   |   2 +-
 drivers/media/i2c/ov2659.c                    |   2 +-
 drivers/media/i2c/ov5645.c                    |   2 +-
 drivers/media/i2c/ov5647.c                    |   2 +-
 drivers/media/i2c/s5c73m3/s5c73m3-core.c      |   2 +-
 drivers/media/i2c/s5k5baf.c                   |   2 +-
 drivers/media/i2c/tc358743.c                  |   2 +-
 drivers/media/i2c/tda1997x.c                  |   2 +-
 drivers/media/i2c/tvp514x.c                   |   2 +-
 drivers/media/i2c/tvp5150.c                   |   4 +-
 drivers/media/i2c/tvp7002.c                   |   2 +-
 drivers/media/platform/atmel/atmel-isi.c      |   4 +-
 drivers/media/platform/intel/pxa_camera.c     |   2 +-
 .../microchip/microchip-sama5d2-isc.c         |   2 +-
 .../microchip/microchip-sama7g5-isc.c         |   2 +-
 drivers/media/platform/qcom/camss/camss.c     |   2 +-
 drivers/media/platform/renesas/renesas-ceu.c  |   2 +-
 .../platform/samsung/exynos4-is/fimc-is.c     |   2 +-
 .../platform/samsung/exynos4-is/mipi-csis.c   |   2 +-
 drivers/media/platform/st/stm32/stm32-dcmi.c  |   4 +-
 .../media/platform/ti/am437x/am437x-vpfe.c    |   2 +-
 drivers/media/platform/ti/davinci/vpif.c      |   3 +-
 .../media/platform/ti/davinci/vpif_capture.c  |   3 +-
 drivers/media/platform/video-mux.c            |   2 +-
 drivers/media/platform/xilinx/xilinx-tpg.c    |   3 +-
 drivers/media/platform/xilinx/xilinx-vipp.c   |   2 +-
 drivers/of/property.c                         | 126 ++++++++++++++----
 .../deprecated/atmel/atmel-sama5d2-isc.c      |   2 +-
 .../deprecated/atmel/atmel-sama7g5-isc.c      |   2 +-
 drivers/staging/media/tegra-video/csi.c       |   2 +-
 drivers/staging/media/tegra-video/vi.c        |   2 +-
 drivers/staging/media/tegra-video/vip.c       |   2 +-
 drivers/video/fbdev/amba-clcd.c               |   2 +-
 drivers/video/fbdev/omap2/omapfb/dss/dpi.c    |   3 +-
 drivers/video/fbdev/omap2/omapfb/dss/dsi.c    |   3 +-
 drivers/video/fbdev/omap2/omapfb/dss/dss-of.c | 101 +-------------
 drivers/video/fbdev/omap2/omapfb/dss/dss.c    |   9 +-
 drivers/video/fbdev/omap2/omapfb/dss/hdmi4.c  |   3 +-
 drivers/video/fbdev/omap2/omapfb/dss/hdmi5.c  |   3 +-
 .../omap2/omapfb/dss/omapdss-boot-init.c      |   2 +-
 drivers/video/fbdev/omap2/omapfb/dss/sdi.c    |   3 +-
 drivers/video/fbdev/omap2/omapfb/dss/venc.c   |   3 +-
 drivers/video/fbdev/pxafb.c                   |   2 +-
 include/linux/of_graph.h                      |  51 +++++--
 include/video/omapfb_dss.h                    |  11 --
 sound/soc/codecs/ak4613.c                     |   2 +-
 sound/soc/generic/audio-graph-card.c          |   2 +-
 sound/soc/generic/audio-graph-card2.c         |  33 ++---
 sound/soc/generic/simple-card-utils.c         |   6 +-
 sound/soc/generic/test-component.c            |   4 +-
 sound/soc/sh/rcar/core.c                      |   4 +-
 73 files changed, 247 insertions(+), 251 deletions(-)

Comments

Dmitry Baryshkov Jan. 31, 2024, 6:30 a.m. UTC | #1
On Wed, 31 Jan 2024 at 07:05, Kuninori Morimoto
<kuninori.morimoto.gx@renesas.com> wrote:
>
> The return type and the variable of of_graph_get_endpoint_count()
> should be unsigned. Tidyup it.

'the variable'?

I'd have added a few words telling that return type can be unsigned
because there is no error reporting for this function.

>
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> ---
>  drivers/of/property.c    | 2 +-
>  include/linux/of_graph.h | 4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/of/property.c b/drivers/of/property.c
> index 4e879faa1710..25d73409aeee 100644
> --- a/drivers/of/property.c
> +++ b/drivers/of/property.c
> @@ -817,7 +817,7 @@ EXPORT_SYMBOL(of_graph_get_remote_port);
>   *
>   * Return: count of endpoint of this device node
>   */
> -int of_graph_get_endpoint_count(const struct device_node *np)
> +unsigned int of_graph_get_endpoint_count(const struct device_node *np)
>  {
>         struct device_node *endpoint;
>         int num = 0;
> diff --git a/include/linux/of_graph.h b/include/linux/of_graph.h
> index 4d7756087b6b..a4bea62bfa29 100644
> --- a/include/linux/of_graph.h
> +++ b/include/linux/of_graph.h
> @@ -41,7 +41,7 @@ struct of_endpoint {
>  bool of_graph_is_present(const struct device_node *node);
>  int of_graph_parse_endpoint(const struct device_node *node,
>                                 struct of_endpoint *endpoint);
> -int of_graph_get_endpoint_count(const struct device_node *np);
> +unsigned int of_graph_get_endpoint_count(const struct device_node *np);
>  struct device_node *of_graph_get_port_by_id(struct device_node *node, u32 id);
>  struct device_node *of_graph_get_next_endpoint(const struct device_node *parent,
>                                         struct device_node *previous);
> @@ -68,7 +68,7 @@ static inline int of_graph_parse_endpoint(const struct device_node *node,
>         return -ENOSYS;
>  }
>
> -static inline int of_graph_get_endpoint_count(const struct device_node *np)
> +static inline unsigned int of_graph_get_endpoint_count(const struct device_node *np)
>  {
>         return 0;
>  }
> --
> 2.25.1
>


--
With best wishes
Dmitry
Kuninori Morimoto Feb. 1, 2024, 12:12 a.m. UTC | #2
Hi Dmitry

Thank you for your review

> > The return type and the variable of of_graph_get_endpoint_count()
> > should be unsigned. Tidyup it.
> 
> 'the variable'?
> 
> I'd have added a few words telling that return type can be unsigned
> because there is no error reporting for this function.

I see. v4 will be

	Because of of_graph_get_endpoint_count() doesn't report error,
	just return count of endpoint, the return type of it should be
	unsigned. Tidyup it.

Thank you for your help !!

Best regards
---
Renesas Electronics
Ph.D. Kuninori Morimoto