Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755256AbdDGIpW (ORCPT ); Fri, 7 Apr 2017 04:45:22 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:25297 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1753281AbdDGIpS (ORCPT ); Fri, 7 Apr 2017 04:45:18 -0400 From: To: , , , , , CC: , , , , , , , , Subject: [PATCH net-next v4 0/5] net-next: dsa: add Mediatek MT7530 support Date: Fri, 7 Apr 2017 16:45:04 +0800 Message-ID: <1491554709-9723-1-git-send-email-sean.wang@mediatek.com> X-Mailer: git-send-email 1.7.9.5 MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3575 Lines: 78 From: Sean Wang MT7530 is a 7-ports Gigabit Ethernet Switch that could be found on Mediatek router platforms such as MT7623A or MT7623N which includes 7-port Gigabit Ethernet MAC and 5-port Gigabit Ethernet PHY. Among these ports, The port from 0 to 4 are the user ports connecting with the remote devices while the port 5 and 6 are the CPU ports connecting into Mediatek Ethernet GMAC. The patch series integrated Mediatek MT7530 into DSA support which includes the most of the essential callbacks such as tag insertion for port distinguishing, port control, bridge offloading, STP setup and ethtool operations to allow DSA to model each user port into independently standalone netdevice as the other DSA driver had done. Changes since v1: - rebased into 4.11-rc1 - refined binding document including below five items - changed the type of mediatek,mcm into bool - used reset controller binding for MCM reset and removed "mediatek,ethsys" property from binding - reused CPU port's ethernet Phandle instead of creating new one and removed "mediatek,ethernet" property from binding - aligned naming for GPIO reset with dsa/marvell.txt - added phy-mode as required property child nodes within ports container - handled gpio reset with devm_gpiod_* API - refined comment words - removed condition for CDM setting since the setup looks both fine for all cases - allowed of_find_net_device_by_node() working with pointing the device node into real netdev instance - fixed Kbuild warnings Changes since v2: - reuse readx_poll_timeout() to poll - add proper macro instead of hard coding - treat inconsistent cpu port as warning - remove the usage for regmap-debugfs - show error message when invalid id is found - put the logic for the setup of trgmii into adjut_link() - refine and reuse logic between port_[disable,enable], and default port setup - correct typo Changes since v3: - used struct as the parameter for readx_poll_timeout() and kill extra lpriv defined - moved around function to get out of an additional declaration - fixed kbuild errors caused by missing proper include in the latest tree Sean Wang (5): dt-bindings: net: dsa: add Mediatek MT7530 binding net-next: dsa: add Mediatek tag RX/TX handler net-next: ethernet: mediatek: add CDM able to recognize the tag for DSA net-next: ethernet: mediatek: add device_node of GMAC pointing into the netdev instance net-next: dsa: add dsa support for Mediatek MT7530 switch .../devicetree/bindings/net/dsa/mt7530.txt | 92 ++ drivers/net/dsa/Kconfig | 8 + drivers/net/dsa/Makefile | 2 +- drivers/net/dsa/mt7530.c | 1125 ++++++++++++++++++++ drivers/net/dsa/mt7530.h | 402 +++++++ drivers/net/ethernet/mediatek/mtk_eth_soc.c | 8 + drivers/net/ethernet/mediatek/mtk_eth_soc.h | 4 + include/net/dsa.h | 1 + net/dsa/Kconfig | 2 + net/dsa/Makefile | 1 + net/dsa/dsa.c | 3 + net/dsa/dsa_priv.h | 3 + net/dsa/tag_mtk.c | 118 ++ 13 files changed, 1768 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/net/dsa/mt7530.txt create mode 100644 drivers/net/dsa/mt7530.c create mode 100644 drivers/net/dsa/mt7530.h create mode 100644 net/dsa/tag_mtk.c -- 1.9.1