From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f174.google.com (mail-pf1-f174.google.com [209.85.210.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 79EA83161A3 for ; Mon, 23 Mar 2026 06:31:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.174 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774247474; cv=none; b=ofWQknx5BQ4Ivr/Ubwfaz+KrlebFDCOi9u9vFSmzeohKquMXrIUIjbXrjBDQdRDOfzrsj3HS5JQEMUZAiK0mxeiL6jmwp8HS5tniA/Da8dXiD2kNO5c6lixugrdldhXaO5RIO63lC7EQ8o6jq2cmDWIjUMHy6jvp9QTUfm8KnhQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774247474; c=relaxed/simple; bh=dvhEk3O+a2ERwLtOA0cX9p85UC+OOoWreUsEp4G31h4=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=b0ULM5RHvDuPKe1HCkj7CPeLQrfyhL84ox9xTz2j1oz4KWj0aKV4PNei+teeVZbOc02iDNi7bGHlCkbHq2ikmySKcyfTzBE58M+sqBjvz0ogo+phuDT1ICAsdBKdvqZ13ljgqIC+mv68WKcZiRz6EKr6IIsZhr0qgW9MfHiuQgQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=U3VU6Z7A; arc=none smtp.client-ip=209.85.210.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="U3VU6Z7A" Received: by mail-pf1-f174.google.com with SMTP id d2e1a72fcca58-829ac4670c4so2898137b3a.0 for ; Sun, 22 Mar 2026 23:31:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1774247470; x=1774852270; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=+uJOOsx893BHAo1XKwzCoPb5W2B/EQDBZpSJL6AVlTw=; b=U3VU6Z7AH8eqwIs3UJ9Xyv7pq07tCbNbdiNXaGZAV9u8U3iWGPGAOT5Pn4DcNShVMc TOivh6o9lKZfqOqzMyVickPdAh9uGWWqwgRLI6Mf5K1y8StPp5L5QdeYGDXXIQI3cKf8 rFeGngvv4f7uDOAkJfDvPnHZS867bLPi1hezbezUnd+t7D6s3gRDfYBnPAWhCmh59l8U xoIyB67zx+EGXMOvVVzOovwGoZnS3LPEjlyEGoW4qKc0rW4f35vJazOL8zIzRcfVA8WC +zTXJcYrNfNLqQc8Z6/avayID7hSUD5nDmOXjmBZrES3GvEi1RXOw/1lm4r9CZW9eoNI 4mPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774247470; x=1774852270; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=+uJOOsx893BHAo1XKwzCoPb5W2B/EQDBZpSJL6AVlTw=; b=dxLcynyM10iolZJn9h0LnGn/oe8hnLKFN73KzkBWFFX31oc7Jg933YaeZxT3MmrhWf RxmhMkG7+y29zQBFcKPFi2s/UVxzGhcbSg3qvQ4DDjMRO9FGOVbaZ1qOBYO7FPtCmrlT jZ9xT+yWBf5lTQ3c9+nsZ+MhuN0HbRneS2rXu+5LojMGKCyjoAu+bcOf2Jhl5rBQQ84i p529UW5yn1Zgsx1liReDtQCYNYeq1N4wwUC5b+xO2ObcCZYdWTwQm+gS00ZPhLAaSPko AhEIK90q2cUgVKgygkbjD/7m+WLsQm3dx1ZaYkblTfHlrH0NckepYcqg8x6+Eyg3Slod 1BFA== X-Forwarded-Encrypted: i=1; AJvYcCU5Bw4+Tem6TnHhSyHJ5QSTkgb46zy8r61FnR/7q+bT/4IlZEL5d2MMfGjRjX9mix3ctpIdRgoE/X09bzc=@vger.kernel.org X-Gm-Message-State: AOJu0YzdQbcgGmkbl88odCahdodUN3PslV93KrTnYD70BYUULDl8LIF2 rjL6LfpteqtS6/w25rXwPv0iajTqYjIoDBn34IFWjQBR0AkfXsRak5e8 X-Gm-Gg: ATEYQzylP4YNHVwnoSzx8VlupC9Gu+iHdvwlmia8HDcdcrEYvFngNQPaMSx3+1WVbxU mYmZI/ppC6iXFqLH8I0Xgh92/1jS/+q/SQn3PB3Idr3Z9i3jwu8tqyLqAbgE5ErgxSo8q4S2FD0 ydWy3YsIAe8dL0G3ZJvMO0ntdfqz7KuJ3CiEypdzd3UpQSrlERDxgS/9O+7KBmYvFuetIrvHzzv wjVGQP66PXr+Tt7pYfBf895Xn+/JE6rSu50BLXIjt6sxaFYW0fIc3ts+KArepeaJ13jZihu9ISB /cLfVC5nZKPP8l9fFnzJpvYC9xWq5FTIQ23XPwviTubPGTG+HWut4DQ6wmKEZjpG/0Q70yhWKaB 7YJIGTAbtRnaf0wEwIyv0TJAk1RgeViT/bS+1Edse+Kjl5YHzwTglnTrbxgnjqmTu6DVk2I51Pe 7MMeoNlFd2OGgqU2kz+INo4MzIAh0pYPJ/od3U/sd9HN6OElvukav2eHm/WJ7l0cXjwehEEFkq5 vOt X-Received: by 2002:a05:6a20:7f82:b0:398:919a:ddf5 with SMTP id adf61e73a8af0-39bce9e9efemr10260089637.24.1774247470439; Sun, 22 Mar 2026 23:31:10 -0700 (PDT) Received: from [192.168.0.100] (60-250-196-139.hinet-ip.hinet.net. [60.250.196.139]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c743a938743sm6476741a12.19.2026.03.22.23.31.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 22 Mar 2026 23:31:09 -0700 (PDT) Message-ID: Date: Mon, 23 Mar 2026 14:31:05 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [net-next,v14,3/3] net: stmmac: dwmac-nuvoton: Add dwmac glue for Nuvoton MA35 family To: Simon Horman Cc: richardcochran@gmail.com, devicetree@vger.kernel.org, edumazet@google.com, linux-stm32@st-md-mailman.stormreply.com, joabreu@synopsys.com, linux-kernel@vger.kernel.org, krzk+dt@kernel.org, pabeni@redhat.com, kuba@kernel.org, andrew+netdev@lunn.ch, netdev@vger.kernel.org, conor+dt@kernel.org, schung@nuvoton.com, linux-arm-kernel@lists.infradead.org, davem@davemloft.net, robh@kernel.org, yclu4@nuvoton.com, andrew@lunn.ch, mcoquelin.stm32@gmail.com, ychuang3@nuvoton.com, openbmc@lists.ozlabs.org, peppe.cavallaro@st.com, alexandre.torgue@foss.st.com References: <20260316055427.1310569-4-a0987203069@gmail.com> <20260318082346.1825390-1-horms@kernel.org> Content-Language: en-US From: Joey Lu In-Reply-To: <20260318082346.1825390-1-horms@kernel.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 3/18/2026 4:23 PM, Simon Horman wrote: > This is an AI-generated review of your patch. The human sending this > email has considered the AI review valid, or at least plausible. > > For local reproduction steps see https://netdev-ai.bots.linux.dev/ai-local.html > --- > net: stmmac: dwmac-nuvoton: Add dwmac glue for Nuvoton MA35 family > > Add support for Gigabit Ethernet on Nuvoton MA35 series using dwmac > driver. > >> diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig >> --- a/drivers/net/ethernet/stmicro/stmmac/Kconfig >> +++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig > [ ... ] > >> diff --git a/drivers/net/ethernet/stmicro/stmmac/Makefile b/drivers/net/ethernet/stmicro/stmmac/Makefile >> --- a/drivers/net/ethernet/stmicro/stmmac/Makefile >> +++ b/drivers/net/ethernet/stmicro/stmmac/Makefile > [ ... ] > >> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-nuvoton.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-nuvoton.c >> --- /dev/null >> +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-nuvoton.c >> @@ -0,0 +1,136 @@ > [ ... ] > >> +static int nvt_gmac_probe(struct platform_device *pdev) >> +{ >> + struct plat_stmmacenet_data *plat_dat; >> + struct stmmac_resources stmmac_res; >> + struct device *dev = &pdev->dev; >> + struct nvt_priv_data *priv; >> + int ret; >> + >> + ret = stmmac_get_platform_resources(pdev, &stmmac_res); >> + if (ret) >> + return dev_err_probe(dev, ret, "Failed to get platform resources\n"); >> + >> + plat_dat = devm_stmmac_probe_config_dt(pdev, stmmac_res.mac); >> + if (IS_ERR(plat_dat)) >> + return dev_err_probe(dev, PTR_ERR(plat_dat), "Failed to get platform data\n"); >> + >> + priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); >> + if (!priv) >> + return dev_err_probe(dev, -ENOMEM, "Failed to allocate private data\n"); >> + >> + priv->regmap = syscon_regmap_lookup_by_phandle_args(dev->of_node, "nuvoton,sys", >> + 1, &priv->macid); >> + if (IS_ERR(priv->regmap)) >> + ret = dev_err_probe(dev, PTR_ERR(priv->regmap), "Failed to get sys register\n"); >> + >> + if (priv->macid > 1) >> + ret = dev_err_probe(dev, -EINVAL, "Invalid sys arguments\n"); >> ^^^^ > Does this code return the error on failure? The dev_err_probe() result is > assigned to ret but the function continues execution without returning. > > Russell King's v12 review suggested using set_phy_intf_sel callback, > which led to significant refactoring in v12. This refactoring appears to > have inadvertently broken the error handling here and below. > > The code should be: > if (IS_ERR(priv->regmap)) > return dev_err_probe(dev, PTR_ERR(priv->regmap), "Failed to get sys register\n"); > > if (priv->macid > 1) > return dev_err_probe(dev, -EINVAL, "Invalid sys arguments\n"); > > See Russell's v12 review: > https://lore.kernel.org/netdev/aYsurPBMnzWDZCco@shell.armlinux.org.uk/ Sorry for missing that, I'll fix it so that function properly returns failure. Joey > >> + >> + plat_dat->bsp_priv = priv; >> + plat_dat->set_phy_intf_sel = nvt_set_phy_intf_sel; >> + >> + return stmmac_pltfr_probe(pdev, plat_dat, &stmmac_res); >> +} > [ ... ]