[{"id":3683739,"web_url":"http://patchwork.ozlabs.org/comment/3683739/","msgid":"<ade67190-4a3b-4a86-92e5-5f4a4376db2c@baylibre.com>","list_archive_url":null,"date":"2026-04-28T19:00:03","subject":"Re: [PATCH v2 7/9] net: dwc_eth_qos: Add mediatek support","submitter":{"id":87228,"url":"http://patchwork.ozlabs.org/api/people/87228/","name":"David Lechner","email":"dlechner@baylibre.com"},"content":"On 4/28/26 8:17 AM, Julien Stephan wrote:\n> Synopsys DWC Ethernet QOS device support for MediaTek SoCs.\n> in particular this initial commit adds support for Genio 520/720 and\n> Genio 510/700 EVKs\n> \n> Signed-off-by: fanyi zhang <fanyi.zhang@mediatek.com>\n> Signed-off-by: Julien Stephan <jstephan@baylibre.com>\n> ---\n\n...\n\n> +static int mtk_config_dt(struct udevice *dev)\n> +{\tstruct eth_pdata *pdata = dev_get_plat(dev);\n> +\tstruct eqos_mtk_priv *mtk_pdata = pdata->priv_pdata;\n> +\tstruct ofnode_phandle_args args;\n> +\tu32 tx_delay_ps, rx_delay_ps;\n> +\tint ret;\n> +\n> +\tif (!dev_read_u32(dev, \"mediatek,tx-delay-ps\", &tx_delay_ps)) {\n> +\t\tif (tx_delay_ps > DELAY_MAX_PS) {\n> +\t\t\tpr_err(\"%s: dev=%p Invalid TX clock delay: %dps\\n\",\n> +\t\t\t       __func__, dev, tx_delay_ps);\n> +\t\t\treturn -EINVAL;\n> +\t\t}\n> +\t}\n> +\n> +\tif (!dev_read_u32(dev, \"mediatek,rx-delay-ps\", &rx_delay_ps)) {\n> +\t\tif (rx_delay_ps > DELAY_MAX_PS) {\n> +\t\t\tpr_err(\"%s: dev=%p Invalid RX clock delay: %dps\\n\",\n> +\t\t\t       __func__, dev, rx_delay_ps);\n> +\t\t\treturn -EINVAL;\n> +\t\t}\n> +\t}\n> +\n> +\tmtk_pdata->tx_delay_stage = tx_delay_ps / DELAY_PS_PER_STAGE;\n> +\tmtk_pdata->rx_delay_stage = rx_delay_ps / DELAY_PS_PER_STAGE;\n\nPossible uninitialized use of tx_delay_ps and rx_delay_ps.\n\n> +\n> +\tmtk_pdata->tx_inv = dev_read_bool(dev, \"mediatek,txc-inverse\");\n> +\tmtk_pdata->rx_inv = dev_read_bool(dev, \"mediatek,rxc-inverse\");\n> +\tmtk_pdata->rmii_clk_from_mac = dev_read_bool(dev, \"mediatek,rmii-clk-from-mac\");\n> +\tmtk_pdata->rmii_rxc = dev_read_bool(dev, \"mediatek,rmii-rxc\");\n> +\n> +\tret = dev_read_phandle_with_args(dev, \"mediatek,pericfg\", NULL, 0, 0, &args);\n> +\tif (ret) {\n> +\t\tpr_err(\"Failed to get mediatek,pericfg property: %d\\n\", ret);\n> +\t\treturn ret;\n> +\t}\n> +\n> +\tmtk_pdata->peri_regmap = syscon_node_to_regmap(args.node);\n> +\tif (IS_ERR(mtk_pdata->peri_regmap)) {\n> +\t\tpr_err(\"%s: dev=%p Invalid perif_cfg reg\\n\", __func__, dev);\n\nThis error message is a bit misleading. The actual problem is that\nsyscon_node_to_regmap() failed.\n\n> +\t\treturn -EINVAL;\n\nWhy not return PTR_ERR(mtk_pdata->peri_regmap)?\n\n> +\t}\n> +\n> +\treturn 0;\n> +}\n> +\n> +static int eqos_probe_resources_mtk(struct udevice *dev)\n> +{\n> +\tstruct eqos_priv *eqos = dev_get_priv(dev);\n> +\tstruct eth_pdata *pdata = dev_get_plat(dev);\n> +\tstruct eqos_mtk_priv *mtk_pdata;\n> +\tint ret;\n> +\n> +\tdebug(\"%s(dev=%p):\\n\", __func__, dev);\n> +\n> +\tret = eqos_get_base_addr_dt(dev);\n> +\tif (ret) {\n> +\t\tdev_err(dev, \"eqos_get_base_addr_dt failed: %d\\n\", ret);\n> +\t\treturn ret;\n> +\t}\n> +\n> +\tmtk_pdata = calloc(1, sizeof(struct eqos_mtk_priv));\n> +\tif (!mtk_pdata)\n> +\t\treturn -ENOMEM;\n> +\n> +\tpdata->priv_pdata = mtk_pdata;\n> +\n> +\tret = mtk_config_dt(dev);\n> +\tif (ret) {\n> +\t\tdev_err(dev, \"mtk config dt failed: %d\\n\", ret);\n> +\t\tgoto err;\n> +\t}\n> +\n> +\tret = mtk_clk_init(dev);\n> +\tif (ret)\n> +\t\tgoto err;\n> +\n> +\tpdata->phy_interface = eqos->config->interface(dev);\n> +\tif (pdata->phy_interface == PHY_INTERFACE_MODE_NA) {\n> +\t\tdev_err(dev, \"Invalid PHY interface\\n\");\n> +\t\tret = -EINVAL;\n> +\t\tgoto err;\n> +\t}\n> +\n> +\tret = mtk_set_interface(dev);\n> +\tif (ret)\n> +\t\tgoto err;\n> +\n> +\tret = mtk_set_delay(dev);\n> +\tif (ret)\n> +\t\tgoto err;\n> +\n> +\tdebug(\"%s: OK\\n\", __func__);\n\nFWIW, log_msg_ret() is good for debugging return values.\n\n> +\treturn 0;\n> +err:\n> +\tfree(mtk_pdata);\n> +\treturn ret;\n> +}\n> +","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=baylibre-com.20251104.gappssmtp.com\n header.i=@baylibre-com.20251104.gappssmtp.com header.a=rsa-sha256\n header.s=20251104 header.b=qGXveXwX;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=85.214.62.61; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)","phobos.denx.de;\n dmarc=none (p=none dis=none) header.from=baylibre.com","phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de","phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=baylibre-com.20251104.gappssmtp.com\n header.i=@baylibre-com.20251104.gappssmtp.com header.b=\"qGXveXwX\";\n\tdkim-atps=neutral","phobos.denx.de;\n dmarc=none (p=none dis=none) header.from=baylibre.com","phobos.denx.de;\n spf=pass smtp.mailfrom=dlechner@baylibre.com"],"Received":["from phobos.denx.de (phobos.denx.de [85.214.62.61])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g4wbc5D38z1yHv\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 08:49:16 +1000 (AEST)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id EEB70846D5;\n\tWed, 29 Apr 2026 00:48:18 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id 4480E8469A; Tue, 28 Apr 2026 21:00:18 +0200 (CEST)","from mail-oa1-x29.google.com (mail-oa1-x29.google.com\n [IPv6:2001:4860:4864:20::29])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 2391084698\n for <u-boot@lists.denx.de>; Tue, 28 Apr 2026 21:00:07 +0200 (CEST)","by mail-oa1-x29.google.com with SMTP id\n 586e51a60fabf-4303eb92930so1879314fac.3\n for <u-boot@lists.denx.de>; Tue, 28 Apr 2026 12:00:07 -0700 (PDT)","from ?IPV6:2600:8803:e7e4:500:efba:bc47:a81b:dd0f?\n ([2600:8803:e7e4:500:efba:bc47:a81b:dd0f])\n by smtp.gmail.com with ESMTPSA id\n 586e51a60fabf-4340d841467sm93954fac.16.2026.04.28.12.00.03\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Tue, 28 Apr 2026 12:00:05 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=ham\n autolearn_force=no version=3.4.2","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=baylibre-com.20251104.gappssmtp.com; s=20251104; t=1777402805;\n x=1778007605;\n darn=lists.denx.de;\n h=content-transfer-encoding:in-reply-to:from:content-language\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=ajfFDTo/ard7eUnJJqDy1rOYVdBe5jB5N8PtsNEfxbs=;\n b=qGXveXwXfi5GTxo4yMLJ7JMOb5V31k2jnNN1U/6yCVGhBhI3aaC2rITrQwSLKco1u8\n l7yo7eTlRFN/Tagau752DjbBootyiMX7LxnOGm5ElF7OKpPcSY8+iqr2ToWa7nI7QMJH\n CNgZPqkOrN2cRaKK654DjNKAWWeys9h+WF/O79mk98+KfFX0J60ZjfAMret9vbVvMHdh\n LxvraMdri5dlqLafiIfxvzXG/j+OBeJI0i1CTXOK1Byz9ebZ9NhhpErnJFvl1zce93pe\n vumouBTl8ejXGTaB/kE95eQIPmOlZlTzkKeUFEbMeRdLlJYV4mT1YoFzz8ZWQLOtTsaZ\n lvDQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777402805; x=1778007605;\n h=content-transfer-encoding:in-reply-to:from:content-language\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=ajfFDTo/ard7eUnJJqDy1rOYVdBe5jB5N8PtsNEfxbs=;\n b=MkqOO0kbrmDK4RnkMLnYSWm3HKxBTCXCLNhL0j3QPOgEu4Z5yhWGlAeXDiGx8z+ZCF\n IVmRCYsK2nMrRoyM/qqcAJSB+NmD1iVvIPtQRHsADP6R6apO35Lk3e5H+wAqVDqIvxqC\n OGFha/FCv58mdrXIvuOAk1fgNwulPNRVkFINwce5pNQpaNl71Jo0Z+MoubGXKAz1iJxV\n 1u4/o2JxDlzusRpn4kLZ6ssSyNtUsWAk+66GptH8IKBF6/+NEBj/n7001sK5iDdsCuPK\n KROFs4enn1qyBqxOtCLQXpFr6HDXFtwbpgndh3J5cWQCLoYU177CbAZROG/s5guEyL+Q\n xueA==","X-Forwarded-Encrypted":"i=1;\n AFNElJ9Lbz3zqNqKvEay5cD6dja0NUUKg13yxHKIA4HDlGDCnNbIsWxGMndAz2jc/RBtTOAOkXFa7SA=@lists.denx.de","X-Gm-Message-State":"AOJu0YwMBCFkEmMOxI6lphd50afaqgWiilsce+tna2NFdDW5+pLmCYJY\n 4eyb+hHCRUwdAprB8cF1o8c7VuaDUFckDsEnnrhzj/FVfvy6j56W/GU3Ji9w7Wn3Lt0=","X-Gm-Gg":"AeBDieu5/Y+oPlgICBckVSRY3ah5l2srgMkvkDio1zBrcsbthmDUUHlZSFWqgZivbnO\n BOhQCLDKyLb63v3K0ydtU/2xR6lDfTDpWZ/oNNEfc0hjQPThnMSM4VnXaP5mtrM7271FP7v7fxl\n oqTJfWcEinFV37ZqnvBKpmspuQ3bJ49QVY4SGziQGEQCrFkmHKQTNdJ7RSbM2++jtJDflrXloqV\n xsMr5k/w1viT359lxHRg28ImBL5H0Zx10QyQnUmGfEox/dIjDc+Ya4wZ2v/XOOPCc064jn4k9mq\n 8c/5g9yOif58h0Qj2f3ghMbTcMgmwJXAoWokWTvLYjNQhEqJ4+DyYnkB3yoQp5sMjpg9QIGdQ1M\n 12BLVdPpe+et8HmZLGnYAlffNTE9889Zv3AdN5SuMQeX/6G0Pc5+Spcg60PFKZuNNomXmntOj3P\n v0lUBr3D1LdfIU1kw1FRbkDQKKNaF/mfAw4abici3sJc3u0cxtv6b5uB1ieMRpcQqHY4tSrjeG6\n 7XQwzL5mm8HtSuSpXoZJQg=","X-Received":"by 2002:a05:6870:c03:b0:422:e938:6b49 with SMTP id\n 586e51a60fabf-433f3b8d5f8mr2509926fac.38.1777402805444;\n Tue, 28 Apr 2026 12:00:05 -0700 (PDT)","Message-ID":"<ade67190-4a3b-4a86-92e5-5f4a4376db2c@baylibre.com>","Date":"Tue, 28 Apr 2026 14:00:03 -0500","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 7/9] net: dwc_eth_qos: Add mediatek support","To":"Julien Stephan <jstephan@baylibre.com>, u-boot@lists.denx.de","Cc":"GSS_MTK_Uboot_upstream <GSS_MTK_Uboot_upstream@mediatek.com>,\n Jerome Forissier <jerome.forissier@arm.com>, Tom Rini <trini@konsulko.com>,\n Christian Marangi <ansuelsmth@gmail.com>,\n Robert Marko <robert.marko@sartura.hr>, Simon Glass <sjg@chromium.org>,\n Yao Zi <me@ziyao.cc>, Quentin Schulz <quentin.schulz@cherry.de>,\n Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>,\n Marek Vasut <marek.vasut+renesas@mailbox.org>,\n \"Lucien.Jheng\" <lucienzx159@gmail.com>, Weijie Gao\n <weijie.gao@mediatek.com>, Romain Gantois <romain.gantois@bootlin.com>,\n Siddharth Vadapalli <s-vadapalli@ti.com>,\n Yanqing Wang <ot_yanqing.wang@mediatek.com>, Beiyan Yun <root@infi.wang>,\n Ryder Lee <ryder.lee@mediatek.com>, Chunfeng Yun\n <chunfeng.yun@mediatek.com>,\n Igor Belwon <igor.belwon@mentallysanemainliners.org>,\n Neil Armstrong <neil.armstrong@linaro.org>,\n Kory Maincent <kory.maincent@bootlin.com>,\n Ilias Apalodimas <ilias.apalodimas@linaro.org>,\n Kuan-Wei Chiu <visitorckw@gmail.com>, Raymond Mao\n <raymond.mao@riscstar.com>, Peng Fan <peng.fan@nxp.com>,\n Stefan Roese <stefan.roese@mailbox.org>,\n Philip Molloy <philip.molloy@analog.com>,\n fanyi zhang <fanyi.zhang@mediatek.com>, Jonas Karlman <jonas@kwiboo.se>,\n Kever Yang <kever.yang@rock-chips.com>, Marek Vasut\n <marek.vasut@mailbox.org>, Patrick Delaunay <patrick.delaunay@foss.st.com>,\n Heiko Stuebner <heiko@sntech.de>, Samuel Holland\n <samuel.holland@sifive.com>,\n Christophe Roullier <christophe.roullier@foss.st.com>,\n Patrice Chotard <patrice.chotard@foss.st.com>,\n Chris-QJ Chen <chris-qj.chen@mediatek.com>,\n Macpaul Lin <macpaul.lin@mediatek.com>,\n Sam Protsenko <semen.protsenko@linaro.org>,\n Michael Trimarchi <michael@amarulasolutions.com>,\n Sky Huang <SkyLake.Huang@mediatek.com>,\n Leo Yu-Chi Liang <ycliang@andestech.com>, Tommy Shih\n <tommy.shih@airoha.com>, Kevin-KW Huang <kevin-kw.huang@airoha.com>","References":"\n <20260428-add-ethernet-support-for-genio-520-720-v2-0-9cf2f0884bd8@baylibre.com>\n <20260428-add-ethernet-support-for-genio-520-720-v2-7-9cf2f0884bd8@baylibre.com>","Content-Language":"en-US","From":"David Lechner <dlechner@baylibre.com>","In-Reply-To":"\n <20260428-add-ethernet-support-for-genio-520-720-v2-7-9cf2f0884bd8@baylibre.com>","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"7bit","X-Mailman-Approved-At":"Wed, 29 Apr 2026 00:48:15 +0200","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.39","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<https://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>","X-Virus-Scanned":"clamav-milter 0.103.8 at phobos.denx.de","X-Virus-Status":"Clean"}}]