From patchwork Tue Jan 19 20:24:24 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Blumenstingl X-Patchwork-Id: 12030705 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4D4EEC433DB for ; Tue, 19 Jan 2021 20:26:31 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D97D723104 for ; Tue, 19 Jan 2021 20:26:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D97D723104 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=TkzRphXGLdCon/5yY/Qc0kuk+YE32pfn/+rLzL5K+fA=; b=meh8RnmBVmGkegiJ7Rg7JwqtUP WlgQu3wIZi5BqrW7S3M9gk8yrC/yLF7zr1lfFLNh4yY6vADFbLeTMUxE/NhK6ZDgCRD+qalQboI1p fcV5TJMYLVGkZ7o96v2gYSapR8RV20Pvh7eq4f+kzFpBe+ZXEC4/bLFzI9OUrTfZMjXGpWR/IsbwB 5D8c6hWUM6jQNHpUWaAH/yKV7IBoqJW9MLnMXvEDe8Rzv2M+pDXNDdx4WOsglxU1Knod61ft8Hp8f B8NBedK5MH69MoaB+WX29lVdcYqV89JYSd7MHVjobAGSF8pz0xHJDJ8YL7/OvdAcZUCjfANOwGyLN raZ4A+LA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1l1xYl-0007zi-77; Tue, 19 Jan 2021 20:25:03 +0000 Received: from mail-ej1-x633.google.com ([2a00:1450:4864:20::633]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1l1xYe-0007xl-I3; Tue, 19 Jan 2021 20:24:57 +0000 Received: by mail-ej1-x633.google.com with SMTP id a10so13745783ejg.10; Tue, 19 Jan 2021 12:24:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=rFyr2V+Jzdi4YW1yffMaIUqKhZ3/Vi5CLcZD0g+G3W0=; b=o+4RLf0mOmonrScZu/JxFwoEr0HqSw4KJX7HorYpAUIAC3Z4pFXORzdwqXx0ELKJQv 8jtosQrDAVVlwbeObGSkKXhJjIC6QWTdF9cRpQ7Eefmxi+gTLqvmRANRFHV0LuNNClqU jgscy3xuF5QZVAPUnw/SS5ctnagl0/iKvOobiusKJA0uvujbONo7kMgpwXogk3a31d5A i/yfg7+FSeBGtKzh9NMRxiOOe5nkCPrVLReLB+FoM0Lx1QSbSfNFSiRvRSB+jcqrsF3Q kU+izgGu38oIpK+jBaKmDsng+8FLAp6oi88N10LwOacMLGiTnvtS7rhTYeABR3Ru3ZQB Pfyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=rFyr2V+Jzdi4YW1yffMaIUqKhZ3/Vi5CLcZD0g+G3W0=; b=b0CMsurtUc31VzlsvMHW/+3rhQMzwi7klxr/Ya51bxOXriz9xoCGAnQ3OxiIvRtd6G XmO9hNERUaouhymj3sNAV48jizsPARazm9SaULY2YLbUr2mj6WFl0a0KY5i73rZZAqQq 8fW01rjo8NOGdu6ZvceozDWNIhzgP2CLxUXsYeotVKSuTm0ZqdwfRLt1K7kpj2xjtU96 hBU4JnATP9gucSaOeCszVc0xzKuuuirWLuZQ1Vs/pgfkuaLhUy5hZqZONkLsqs/6NVxK yHRlXxTlT8v+4DLOippNdi6qbUrUCMFSfaj4qUYMSbzOLx0l7TcG2uH4TQffb96sZ0cB rlFA== X-Gm-Message-State: AOAM531vf+Eac++r7N6glraSUHJrKRZG4RwNlzg4xPmFWXLEKJpGnwO2 wtpH18GkRPUIrkorJat1QX4JHfDQWRQ= X-Google-Smtp-Source: ABdhPJzgJWBS8Glb8O8e1TWNjzrEWbp0SXKsfSt9zOga9qYGgKUcy74g3uI6DG+n0NBnuIHe4x4Csw== X-Received: by 2002:a17:906:87c3:: with SMTP id zb3mr4123114ejb.244.1611087893049; Tue, 19 Jan 2021 12:24:53 -0800 (PST) Received: from localhost.localdomain (p200300f1373d4700428d5cfffeb99db8.dip0.t-ipconnect.de. [2003:f1:373d:4700:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id g18sm12876367edt.2.2021.01.19.12.24.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 Jan 2021 12:24:52 -0800 (PST) From: Martin Blumenstingl To: linux-amlogic@lists.infradead.org, netdev@vger.kernel.org Subject: [PATCH] net: stmmac: dwmac-meson8b: fix the RX delay validation Date: Tue, 19 Jan 2021 21:24:24 +0100 Message-Id: <20210119202424.591349-1-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.30.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210119_152456_627382_21DD1DAD X-CRM114-Status: GOOD ( 13.29 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Martin Blumenstingl , linux-kernel@vger.kernel.org, kuba@kernel.org, davem@davemloft.net, linux-arm-kernel@lists.infradead.org, Martijn van Deventer Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org When has_prg_eth1_rgmii_rx_delay is true then we support RX delays between 0ps and 3000ps in 200ps steps. Swap the validation of the RX delay based on the has_prg_eth1_rgmii_rx_delay flag so the 200ps check is now applied correctly on G12A SoCs (instead of only allow 0ps or 2000ps on G12A, but 0..3000ps in 200ps steps on older SoCs which don't support that). Fixes: de94fc104d58ea ("net: stmmac: dwmac-meson8b: add support for the RGMII RX delay on G12A") Reported-by: Martijn van Deventer Signed-off-by: Martin Blumenstingl --- Many thanks to Martijn for this excellent catch and for reporting this issue (off-list)! drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c index 55152d7ba99a..848e5c37746b 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c @@ -443,16 +443,16 @@ static int meson8b_dwmac_probe(struct platform_device *pdev) } if (dwmac->data->has_prg_eth1_rgmii_rx_delay) { - if (dwmac->rx_delay_ps != 0 && dwmac->rx_delay_ps != 2000) { + if (dwmac->rx_delay_ps > 3000 || dwmac->rx_delay_ps % 200) { dev_err(dwmac->dev, - "The only allowed RGMII RX delays values are: 0ps, 2000ps"); + "The RGMII RX delay range is 0..3000ps in 200ps steps"); ret = -EINVAL; goto err_remove_config_dt; } } else { - if (dwmac->rx_delay_ps > 3000 || dwmac->rx_delay_ps % 200) { + if (dwmac->rx_delay_ps != 0 && dwmac->rx_delay_ps != 2000) { dev_err(dwmac->dev, - "The RGMII RX delay range is 0..3000ps in 200ps steps"); + "The only allowed RGMII RX delays values are: 0ps, 2000ps"); ret = -EINVAL; goto err_remove_config_dt; }