Re: [PATCH 05/11] of: Ratify of_dma_configure() interface

From: Christoph Hellwig
Date: Mon Sep 30 2019 - 08:57:54 EST


On Thu, Sep 26, 2019 at 07:24:49PM -0500, Rob Herring wrote:
> -int of_dma_configure(struct device *dev, struct device_node *np, bool force_dma)
> +int of_dma_configure(struct device *dev, struct device_node *parent, bool force_dma)

This creates a > 80 char line.

> {
> u64 dma_addr, paddr, size = 0;
> int ret;
> bool coherent;
> unsigned long offset;
> const struct iommu_ops *iommu;
> + struct device_node *np;
> u64 mask;
>
> + np = dev->of_node;
> + if (!np)
> + np = parent;
> + if (!np)
> + return -ENODEV;

I have to say I find the older calling convention simpler to understand.
If we want to enforce the invariant I'd rather do that explicitly:

if (dev->of_node && np != dev->of_node)
return -EINVAL;