Re: [PATCH v3 2/6] PCI: kirin: Tidy up _probe() related function with dev_err_probe()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Aug 31, 2024 at 12:04:09PM +0800, Zhang Zekun wrote:
> The combination of dev_err() and the returned error code could be
> replaced by dev_err_probe() in driver's probe function. Let's,
> converting to dev_err_probe() to make code more simple.
> 
> Suggested-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> Signed-off-by: Zhang Zekun <zhangzekun11@xxxxxxxxxx>
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> ---
> v3: Wrap the line which is too long.
> 
>  drivers/pci/controller/dwc/pcie-kirin.c | 40 ++++++++++---------------
>  1 file changed, 16 insertions(+), 24 deletions(-)
> 
> diff --git a/drivers/pci/controller/dwc/pcie-kirin.c b/drivers/pci/controller/dwc/pcie-kirin.c
> index e9bda1746ca5..3c9d8da3a241 100644
> --- a/drivers/pci/controller/dwc/pcie-kirin.c
> +++ b/drivers/pci/controller/dwc/pcie-kirin.c
> @@ -216,10 +216,9 @@ static int hi3660_pcie_phy_start(struct hi3660_pcie_phy *phy)
>  
>  	usleep_range(PIPE_CLK_WAIT_MIN, PIPE_CLK_WAIT_MAX);
>  	reg_val = kirin_apb_phy_readl(phy, PCIE_APB_PHY_STATUS0);
> -	if (reg_val & PIPE_CLK_STABLE) {
> -		dev_err(dev, "PIPE clk is not stable\n");
> -		return -EINVAL;
> -	}
> +	if (reg_val & PIPE_CLK_STABLE)
> +		return dev_err_probe(dev, -EINVAL,
> +				     "PIPE clk is not stable\n");

I guess this is a timeout issue, so -ETIMEDOUT.

>  
>  	return 0;
>  }
> @@ -371,10 +370,9 @@ static int kirin_pcie_get_gpio_enable(struct kirin_pcie *pcie,
>  	if (ret < 0)
>  		return 0;
>  
> -	if (ret > MAX_PCI_SLOTS) {
> -		dev_err(dev, "Too many GPIO clock requests!\n");
> -		return -EINVAL;
> -	}
> +	if (ret > MAX_PCI_SLOTS)
> +		return dev_err_probe(dev, -EINVAL,
> +				     "Too many GPIO clock requests!\n");
>  
>  	pcie->n_gpio_clkreq = ret;
>  
> @@ -421,16 +419,14 @@ static int kirin_pcie_parse_port(struct kirin_pcie *pcie,
>  			}
>  
>  			pcie->num_slots++;
> -			if (pcie->num_slots > MAX_PCI_SLOTS) {
> -				dev_err(dev, "Too many PCI slots!\n");
> -				return -EINVAL;
> -			}
> +			if (pcie->num_slots > MAX_PCI_SLOTS)
> +				return dev_err_probe(dev, -EINVAL,
> +						     "Too many PCI slots!\n");
>  
>  			ret = of_pci_get_devfn(child);
> -			if (ret < 0) {
> -				dev_err(dev, "failed to parse devfn: %d\n", ret);
> -				return ret;
> -			}
> +			if (ret < 0)
> +				return dev_err_probe(dev, ret,
> +						     "failed to parse devfn\n");
>  
>  			slot = PCI_SLOT(ret);
>  
> @@ -725,16 +721,12 @@ static int kirin_pcie_probe(struct platform_device *pdev)
>  	struct dw_pcie *pci;
>  	int ret;
>  
> -	if (!dev->of_node) {
> -		dev_err(dev, "NULL node\n");
> -		return -EINVAL;
> -	}
> +	if (!dev->of_node)
> +		return dev_err_probe(dev, -EINVAL, "NULL node\n");

This check is pointless, so you should drop it.

>  
>  	data = of_device_get_match_data(dev);
> -	if (!data) {
> -		dev_err(dev, "OF data missing\n");
> -		return -EINVAL;
> -	}
> +	if (!data)
> +		return dev_err_probe(dev, -EINVAL, "OF data missing\n");

-ENODATA

- Mani

-- 
மணிவண்ணன் சதாசிவம்




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux