[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250901-lumpy-lilac-ara-add2e2@kuoka>
Date: Mon, 1 Sep 2025 07:01:05 +0200
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Jack Ping CHNG <jchng@...linear.com>
Cc: netdev@...r.kernel.org, devicetree@...r.kernel.org,
davem@...emloft.net, andrew+netdev@...n.ch, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org,
yzhu@...linear.com, sureshnagaraj@...linear.com
Subject: Re: [PATCH net-next v3 2/2] net: maxlinear: Add support for MxL LGM
SoC
On Fri, Aug 29, 2025 at 08:48:43PM +0800, Jack Ping CHNG wrote:
> +
> +static int mxl_eth_probe(struct platform_device *pdev)
> +{
> + struct mxl_eth_drvdata *drvdata;
> + struct device_node *eth_np, *np;
> + struct reset_control *rst;
> + int ret, i = 0;
> +
> + drvdata = devm_kzalloc(&pdev->dev, sizeof(*drvdata), GFP_KERNEL);
> + if (!drvdata)
> + return -ENOMEM;
> +
> + drvdata->port_base =
> + devm_platform_ioremap_resource_byname(pdev, "port");
Very odd wrapping. That's one line or wrap according to Linux coding
style.
> + if (IS_ERR(drvdata->port_base))
> + return PTR_ERR(drvdata->port_base);
> +
> + drvdata->ctrl_base =
> + devm_platform_ioremap_resource_byname(pdev, "ctrl");
Fix wrapping
> + if (IS_ERR(drvdata->ctrl_base))
> + return PTR_ERR(drvdata->ctrl_base);
> +
> + drvdata->clks = devm_clk_get_enabled(&pdev->dev, "ethif");
> + if (IS_ERR(drvdata->clks))
> + return dev_err_probe(&pdev->dev, PTR_ERR(drvdata->clks),
> + "failed to get/enable clock\n");
> +
> + rst = devm_reset_control_get(&pdev->dev, NULL);
> + if (IS_ERR(rst))
> + return dev_err_probe(&pdev->dev, PTR_ERR(rst),
> + "failed to get reset control\n");
> +
> + reset_control_assert(rst);
> + udelay(1);
> + reset_control_deassert(rst);
> +
> + platform_set_drvdata(pdev, drvdata);
> +
> + eth_np = of_get_child_by_name(pdev->dev.of_node, "ethernet-ports");
> + if (!eth_np)
> + return dev_err_probe(&pdev->dev, -ENODEV,
> + "no ethernet-ports node found!\n");
> +
> + for_each_available_child_of_node(eth_np, np) {
No, I asked you to use scoped loop.
> + ret = mxl_eth_create_ndev(pdev, np, &drvdata->ndevs[i++]);
> + if (ret) {
> + of_node_put(np);
Best regards,
Krzysztof
Powered by blists - more mailing lists