From patchwork Fri Dec 14 16:48:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frank Wunderlich X-Patchwork-Id: 1013638 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=public-files.de Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 43Gc4C6GcTz9s4s for ; Sat, 15 Dec 2018 03:50:35 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729939AbeLNQuZ (ORCPT ); Fri, 14 Dec 2018 11:50:25 -0500 Received: from mout.gmx.net ([212.227.15.18]:58569 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729823AbeLNQuZ (ORCPT ); Fri, 14 Dec 2018 11:50:25 -0500 Received: from localhost.localdomain ([91.14.94.237]) by mail.gmx.com (mrgmx002 [212.227.17.190]) with ESMTPSA (Nemesis) id 0M5Lmp-1hMTtl0LdP-00zZMi; Fri, 14 Dec 2018 17:49:14 +0100 From: Frank Wunderlich To: Matthias Brugger , netdev@vger.kernel.org, Sean Wang , Andrew Lunn , linux-mediatek@lists.infradead.org Cc: Frank Wunderlich Subject: [PATCH 6/8] net: dsa: tell GDMA when we are turning on the special tag Date: Fri, 14 Dec 2018 17:48:45 +0100 Message-Id: <20181214164847.4851-7-frank-w@public-files.de> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181214164847.4851-1-frank-w@public-files.de> References: <20181214164847.4851-1-frank-w@public-files.de> X-Provags-ID: V03:K1:JPDICO2Ts0bLANIY8dEuEZS+Re/fdWEsbIzEDXIrVROzYLpn19k 4DrDEDPUiGZlPqXsh3XpPVP8fq7PdmE/61RlO91WMyVOQWhJctIqWZ+LkD2gHuvA+xFOoWx ZQpzyC76cBdzuWCdjByjSdSLTK2OM0I8YMoM9Km6ccphCLeDaL97Ae5Jr4hp+/SHKJMx+EZ w920l0L63Or3BItEXiC9Q== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1; V03:K0:X8bwpFtINFA=:lj9EVAIELlw3VMjmDsXCbc rINd8IwJC6LaCN4L4+BRfat89P5lN/zHxqgyRS1BABs+jxpJK3F3tvBgTx/PsfEAKJ6Nxct5a UnjIE0dnrlVhNP4MXTqsJ3Ne0vgY5FyxCY7bjZ4L4zehsoCpsHgU8d+9tBjuKjhvu6Sak+Q9Q 50SCdO0alP9w7J26IDVyKfP9dKFTh+db/+jz2cGB1F7mf7H3T/wvtDIj/TnETJoV5lKSadPgB aAXQfc8p8QRAVSnadTVMS9dq42ck/3OVpQksvEolbB1e3FOFfV0PVa5qH2wUpuPZIiKvqpKiC goApqBTrNNnNkYDvmeF5uul7hflEiwlFavTUHKwqsBjS350xTfcHQTewnEFWg/O1vcC7JuTdp 0ajtkC4zQgnaxxG9LL0PIrjlI/KHeT1XY6CCR4UoQpBCCt84POmeIyT52Gj+Y5YIvawNcQ7Au JXuisfTJWj9530WOhEyn04J8z1HSvlgUrSfFSAH/U1PG0z6NPjjJRfvJrNzxmY5g04ggBbEw3 bTa1ekechRpgqt/5rfP0ehTiOehN9fobBEU338oQ8gX7ku5hP1sdR3LXkbWrl44qLR3+LSCVV BYHphmBUbFlQqR4bTlB88DBZvoC3jG3uNPgoDQ41J8gN7lC4Je+cce8BRzPDwc4mHa1mh8VxB iMoLiQOUSA+UB2H58iUW1ISSpKYULB9mTZlvD6cRX8mKrEJ8aY9PEaImlHA3HE3YTum5ZGfKF EMUS93sXIXNfj6m+1vTANeByyqRAT6/4Au2QGutL0S2Znur3WbZO7XVj1NhEtnQOoOBu1V+rS lFILe2QKalH1fvmhg0HmbnTDihkD0CyVsnaTAUQUxLl76aDog95rLCFl8YAibti6PZtH8vRv5 XEmphIP2M2bhwa4HgheitgOFgQrccgrUOsmTeZXnmFsFinINIMpUzaaxDQh0B5 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Enabling this bit will make the RX DMA descriptor enable the SP bit for all ingress traffic inside the return descriptor. The PPE needs this to know that a SP is present. based on https://github.com/openwrt/openwrt/blob/master/target/linux/mediatek/patches-4.14/0044-net-next-dsa-mediatek-tell-GDMA-when-we-are-turning-.patch Signed-off-by: Frank Wunderlich --- drivers/net/dsa/mt7530.c | 6 ++++++ drivers/net/dsa/mt7530.h | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c index 441320d4d779..83669f53cb36 100644 --- a/drivers/net/dsa/mt7530.c +++ b/drivers/net/dsa/mt7530.c @@ -681,6 +681,12 @@ mt7530_cpu_port_enable(struct mt7530_priv *priv, mt7530_write(priv, MT7530_PVC_P(port), PORT_SPEC_TAG); + /* Enable Mediatek header mode on the GMAC that the cpu port + * connects to + */ + regmap_write_bits(priv->ethernet, MTK_GDMA_FWD_CFG(port), + GDMA_SPEC_TAG, GDMA_SPEC_TAG); + /* Setup the MAC by default for the cpu port */ mt7530_write(priv, MT7530_PMCR_P(port), PMCR_CPUP_LINK); diff --git a/drivers/net/dsa/mt7530.h b/drivers/net/dsa/mt7530.h index d9b407a22a58..310f2536175b 100644 --- a/drivers/net/dsa/mt7530.h +++ b/drivers/net/dsa/mt7530.h @@ -23,6 +23,10 @@ #define TRGMII_BASE(x) (0x10000 + (x)) +/* Registers for GDMA configuration access */ +#define MTK_GDMA_FWD_CFG(x) (0x500 + (x * 0x1000)) +#define GDMA_SPEC_TAG BIT(24) + /* Registers to ethsys access */ #define ETHSYS_CLKCFG0 0x2c #define ETHSYS_TRGMII_CLK_SEL362_5 BIT(11)