[PATCH v5 1/7] of: Make of_graph_get_port_by_id take a const device_node

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Oct 19 05:02:13 PDT 2021


Hi Maxime,

Thank you for the patch.

On Wed, Sep 29, 2021 at 10:42:28AM +0200, Maxime Ripard wrote:
> of_graph_get_port_by_id doesn't modify the device_node pointer it takes
> as argument, so we can make it const.

>From a C point of view that's right, but conceptually speaking, is it
right to return a non-const child port node of a const device_node ?

> Signed-off-by: Maxime Ripard <maxime at cerno.tech>
> ---
>  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 3fd74bb34819..739d5d1c8c3a 100644
> --- a/drivers/of/property.c
> +++ b/drivers/of/property.c
> @@ -603,7 +603,7 @@ EXPORT_SYMBOL(of_graph_parse_endpoint);
>   * Return: A 'port' node pointer with refcount incremented. The caller
>   * has to use of_node_put() on it when done.
>   */
> -struct device_node *of_graph_get_port_by_id(struct device_node *parent, u32 id)
> +struct device_node *of_graph_get_port_by_id(const struct device_node *parent, u32 id)
>  {
>  	struct device_node *node, *port;
>  
> diff --git a/include/linux/of_graph.h b/include/linux/of_graph.h
> index 4d7756087b6b..87f3f4d0d0df 100644
> --- a/include/linux/of_graph.h
> +++ b/include/linux/of_graph.h
> @@ -42,7 +42,7 @@ 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);
> -struct device_node *of_graph_get_port_by_id(struct device_node *node, u32 id);
> +struct device_node *of_graph_get_port_by_id(const struct device_node *node, u32 id);
>  struct device_node *of_graph_get_next_endpoint(const struct device_node *parent,
>  					struct device_node *previous);
>  struct device_node *of_graph_get_endpoint_by_regs(
> @@ -74,7 +74,7 @@ static inline int of_graph_get_endpoint_count(const struct device_node *np)
>  }
>  
>  static inline struct device_node *of_graph_get_port_by_id(
> -					struct device_node *node, u32 id)
> +					const struct device_node *node, u32 id)
>  {
>  	return NULL;
>  }

-- 
Regards,

Laurent Pinchart



More information about the linux-arm-kernel mailing list