Re: [PATCH net-next 0/2] Initial driver for Synopsys DWC XLGMAC
Hi Jie, I don't think we have the need to create the "dwc" subdirectory under "synopsys". Its preferable to have them directly under drivers/net/ethernet/synopsys. Regards, C.Palminha On 07-12-2016 03:57, Jie Deng wrote: > This series provides the support for 25/40/50/100 GbE > devices using Synopsys DWC Enterprise Ethernet (XLGMAC). > > The first patch adds support for Synopsys XLGMII. > The second patch provides the initial driver for Synopsys XLGMAC > > The driver has three layers by refactoring AMD XGBE. > > dwc-eth-xxx.x > The DWC ethernet core layer (DWC ECL). This layer contains codes > can be shared by different DWC series ethernet cores > > dwc-xxx.x (e.g. dwc-xlgmac.c) > The DWC MAC HW adapter layer (DWC MHAL). This layer contains > special support for a specific MAC. e.g. currently, XLGMAC. > > xxx-xxx-pci.c xxx-xxx-plat.c (e.g. dwc-xlgmac-pci.c) > The glue adapter layer (GAL). Vendors who adopt Synopsys Etherent > cores can develop a glue driver for their platform. > > Jie Deng (2): > net: phy: add extension of phy-mode for XLGMII > net: ethernet: Initial driver for Synopsys DWC XLGMAC > > Documentation/devicetree/bindings/net/ethernet.txt |1 + > MAINTAINERS|6 + > drivers/net/ethernet/synopsys/Kconfig |2 + > drivers/net/ethernet/synopsys/Makefile |1 + > drivers/net/ethernet/synopsys/dwc/Kconfig | 37 + > drivers/net/ethernet/synopsys/dwc/Makefile |9 + > drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c| 228 ++ > .../net/ethernet/synopsys/dwc/dwc-eth-debugfs.c| 328 +++ > drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c | 715 + > .../net/ethernet/synopsys/dwc/dwc-eth-ethtool.c| 567 > drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c | 3098 > > drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c | 252 ++ > drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c| 2319 +++ > drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c| 216 ++ > drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h | 1115 +++ > drivers/net/ethernet/synopsys/dwc/dwc-eth.h| 738 + > drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c | 538 > drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c | 135 + > drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h | 85 + > include/linux/phy.h|3 + > 20 files changed, 10393 insertions(+) > create mode 100644 drivers/net/ethernet/synopsys/dwc/Kconfig > create mode 100644 drivers/net/ethernet/synopsys/dwc/Makefile > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-debugfs.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ethtool.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth.h > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c > create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h >
Re: [PATCH net-next 0/2] Initial driver for Synopsys DWC XLGMAC
On 2016/12/8 23:59, Alexandre Torgue wrote: > Hi > > On 12/07/2016 04:57 AM, Jie Deng wrote: >> This series provides the support for 25/40/50/100 GbE >> devices using Synopsys DWC Enterprise Ethernet (XLGMAC). > > Can you explain which GMAC are you targeted ? > > A driver which support some Synopsys GMAC IP already exists. It support GMAC > 3.5, 3.7, 4.0, 4.10 versions. You can find it in: > drivers/net/ethernet/stmicro/stmmac/. When I look at all files your gonna to > create, it looks like to ones in stmmac driver so maybe you could easily add > your IP inside stmmac driver. > > Note that an other driver is existing for synopsys GMAC 4.0 IP. it is located > in drivers/net/ethernet/synopsys/dwc_eth_qos.c and coming from AXIS guys. A > task is ongoing to only have stmmac driver so it should be harmful to create a > new one. > > Regards > Alex > I didn't target any version of GMAC IP. GMAC IP (QoS IP) currently has two drivers in mainline drivers/net/ethernet/synopsys/dwc_eth_qos.c drivers/net/ethernet/stmicro/stmmac/ XGMAC IP: drivers/net/ethernet/amd/xgbe XLGMAC IP: no driver in mainline at present For more info about Synopsys Ethernet IP, Please check: http://www.synopsys.com/IP/InterfaceIP/Ethernet/Pages/default.aspx I think it should be better to integrate above drivers into drivers/net/ethernet/synopsys/. This helps to reuse codes and makes maintenance easier. I prefer to choose AMD XGBE as a basis. This driver integrated Synopsys internal driver and had most features supported. What do you think about this ? > > > >> >> The first patch adds support for Synopsys XLGMII. >> The second patch provides the initial driver for Synopsys XLGMAC >> >> The driver has three layers by refactoring AMD XGBE. >> >> dwc-eth-xxx.x >> The DWC ethernet core layer (DWC ECL). This layer contains codes >> can be shared by different DWC series ethernet cores >> >> dwc-xxx.x (e.g. dwc-xlgmac.c) >> The DWC MAC HW adapter layer (DWC MHAL). This layer contains >> special support for a specific MAC. e.g. currently, XLGMAC. >> >> xxx-xxx-pci.c xxx-xxx-plat.c (e.g. dwc-xlgmac-pci.c) >> The glue adapter layer (GAL). Vendors who adopt Synopsys Etherent >> cores can develop a glue driver for their platform. >> >> Jie Deng (2): >> net: phy: add extension of phy-mode for XLGMII >> net: ethernet: Initial driver for Synopsys DWC XLGMAC >> >> Documentation/devicetree/bindings/net/ethernet.txt |1 + >> MAINTAINERS|6 + >> drivers/net/ethernet/synopsys/Kconfig |2 + >> drivers/net/ethernet/synopsys/Makefile |1 + >> drivers/net/ethernet/synopsys/dwc/Kconfig | 37 + >> drivers/net/ethernet/synopsys/dwc/Makefile |9 + >> drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c| 228 ++ >> .../net/ethernet/synopsys/dwc/dwc-eth-debugfs.c| 328 +++ >> drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c | 715 + >> .../net/ethernet/synopsys/dwc/dwc-eth-ethtool.c| 567 >> drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c | 3098 >> >> drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c | 252 ++ >> drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c| 2319 +++ >> drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c| 216 ++ >> drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h | 1115 +++ >> drivers/net/ethernet/synopsys/dwc/dwc-eth.h| 738 + >> drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c | 538 >> drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c | 135 + >> drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h | 85 + >> include/linux/phy.h|3 + >> 20 files changed, 10393 insertions(+) >> create mode 100644 drivers/net/ethernet/synopsys/dwc/Kconfig >> create mode 100644 drivers/net/ethernet/synopsys/dwc/Makefile >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-debugfs.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ethtool.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth.h >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c >> create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h >>
Re: [PATCH net-next 0/2] Initial driver for Synopsys DWC XLGMAC
Hi On 12/07/2016 04:57 AM, Jie Deng wrote: This series provides the support for 25/40/50/100 GbE devices using Synopsys DWC Enterprise Ethernet (XLGMAC). Can you explain which GMAC are you targeted ? A driver which support some Synopsys GMAC IP already exists. It support GMAC 3.5, 3.7, 4.0, 4.10 versions. You can find it in: drivers/net/ethernet/stmicro/stmmac/. When I look at all files your gonna to create, it looks like to ones in stmmac driver so maybe you could easily add your IP inside stmmac driver. Note that an other driver is existing for synopsys GMAC 4.0 IP. it is located in drivers/net/ethernet/synopsys/dwc_eth_qos.c and coming from AXIS guys. A task is ongoing to only have stmmac driver so it should be harmful to create a new one. Regards Alex The first patch adds support for Synopsys XLGMII. The second patch provides the initial driver for Synopsys XLGMAC The driver has three layers by refactoring AMD XGBE. dwc-eth-xxx.x The DWC ethernet core layer (DWC ECL). This layer contains codes can be shared by different DWC series ethernet cores dwc-xxx.x (e.g. dwc-xlgmac.c) The DWC MAC HW adapter layer (DWC MHAL). This layer contains special support for a specific MAC. e.g. currently, XLGMAC. xxx-xxx-pci.c xxx-xxx-plat.c (e.g. dwc-xlgmac-pci.c) The glue adapter layer (GAL). Vendors who adopt Synopsys Etherent cores can develop a glue driver for their platform. Jie Deng (2): net: phy: add extension of phy-mode for XLGMII net: ethernet: Initial driver for Synopsys DWC XLGMAC Documentation/devicetree/bindings/net/ethernet.txt |1 + MAINTAINERS|6 + drivers/net/ethernet/synopsys/Kconfig |2 + drivers/net/ethernet/synopsys/Makefile |1 + drivers/net/ethernet/synopsys/dwc/Kconfig | 37 + drivers/net/ethernet/synopsys/dwc/Makefile |9 + drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c| 228 ++ .../net/ethernet/synopsys/dwc/dwc-eth-debugfs.c| 328 +++ drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c | 715 + .../net/ethernet/synopsys/dwc/dwc-eth-ethtool.c| 567 drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c | 3098 drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c | 252 ++ drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c| 2319 +++ drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c| 216 ++ drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h | 1115 +++ drivers/net/ethernet/synopsys/dwc/dwc-eth.h| 738 + drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c | 538 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c | 135 + drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h | 85 + include/linux/phy.h|3 + 20 files changed, 10393 insertions(+) create mode 100644 drivers/net/ethernet/synopsys/dwc/Kconfig create mode 100644 drivers/net/ethernet/synopsys/dwc/Makefile create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-debugfs.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ethtool.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth.h create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h
[PATCH net-next 0/2] Initial driver for Synopsys DWC XLGMAC
This series provides the support for 25/40/50/100 GbE devices using Synopsys DWC Enterprise Ethernet (XLGMAC). The first patch adds support for Synopsys XLGMII. The second patch provides the initial driver for Synopsys XLGMAC The driver has three layers by refactoring AMD XGBE. dwc-eth-xxx.x The DWC ethernet core layer (DWC ECL). This layer contains codes can be shared by different DWC series ethernet cores dwc-xxx.x (e.g. dwc-xlgmac.c) The DWC MAC HW adapter layer (DWC MHAL). This layer contains special support for a specific MAC. e.g. currently, XLGMAC. xxx-xxx-pci.c xxx-xxx-plat.c (e.g. dwc-xlgmac-pci.c) The glue adapter layer (GAL). Vendors who adopt Synopsys Etherent cores can develop a glue driver for their platform. Jie Deng (2): net: phy: add extension of phy-mode for XLGMII net: ethernet: Initial driver for Synopsys DWC XLGMAC Documentation/devicetree/bindings/net/ethernet.txt |1 + MAINTAINERS|6 + drivers/net/ethernet/synopsys/Kconfig |2 + drivers/net/ethernet/synopsys/Makefile |1 + drivers/net/ethernet/synopsys/dwc/Kconfig | 37 + drivers/net/ethernet/synopsys/dwc/Makefile |9 + drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c| 228 ++ .../net/ethernet/synopsys/dwc/dwc-eth-debugfs.c| 328 +++ drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c | 715 + .../net/ethernet/synopsys/dwc/dwc-eth-ethtool.c| 567 drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c | 3098 drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c | 252 ++ drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c| 2319 +++ drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c| 216 ++ drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h | 1115 +++ drivers/net/ethernet/synopsys/dwc/dwc-eth.h| 738 + drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c | 538 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c | 135 + drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h | 85 + include/linux/phy.h|3 + 20 files changed, 10393 insertions(+) create mode 100644 drivers/net/ethernet/synopsys/dwc/Kconfig create mode 100644 drivers/net/ethernet/synopsys/dwc/Makefile create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-dcb.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-debugfs.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-desc.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ethtool.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-hw.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-mdio.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-net.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-ptp.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth-regacc.h create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-eth.h create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac-pci.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.c create mode 100644 drivers/net/ethernet/synopsys/dwc/dwc-xlgmac.h -- 1.9.1