Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755229AbdDLQ3M (ORCPT ); Wed, 12 Apr 2017 12:29:12 -0400 Received: from mail-sn1nam01on0082.outbound.protection.outlook.com ([104.47.32.82]:18560 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754615AbdDLQZr (ORCPT ); Wed, 12 Apr 2017 12:25:47 -0400 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; From: Ioana Radulescu To: CC: , , , , , , , , , , , Subject: [PATCH v2 2/9] staging: fsl-dpaa2/eth: Add Ethernet driver overview document Date: Wed, 12 Apr 2017 11:25:31 -0500 Message-ID: <20170412162538.25302-3-ruxandra.radulescu@nxp.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170412162538.25302-1-ruxandra.radulescu@nxp.com> References: <20170412162538.25302-1-ruxandra.radulescu@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131364879397893087;(91ab9b29-cfa4-454e-5278-08d120cd25b8);() X-Forefront-Antispam-Report: CIP:192.88.168.50;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(979002)(6009001)(336005)(39410400002)(39450400003)(39840400002)(39380400002)(39850400002)(39400400002)(39860400002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(9170700003)(54906002)(36756003)(39060400002)(6916009)(356003)(77096006)(8656002)(4326008)(6666003)(2950100002)(2906002)(110136004)(38730400002)(50466002)(76176999)(50986999)(53936002)(48376002)(5003940100001)(7416002)(86362001)(47776003)(33646002)(1076002)(106466001)(2351001)(105606002)(8676002)(305945005)(8936002)(85426001)(50226002)(81166006)(189998001)(104016004)(5660300001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR03MB2273;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;MLV:ovrnspm;A:1;MX:1;PTR:InfoDomainNonexistent;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD020;1:HvTAAnRBZK9KIM84l8sYxLLfdHYTPzhhD7oPBqxa8rEeIWr++/5nIX5DYkfmJG6TYy7and5G+KQI+ZYZsy9OAw9iuRRWsBnQRPmoHrBov8eAzhIB8+9A7VjW82wm6obcFx0qxwAR6KWDFmQ6LkV6S5h5E48tJAjXgmCR3i2KXzsSi0uIrtmDEC1qDbp5+4OOyAiUQ+b8VETzaLpd61RXl9cmxCrCqZDXDGLdcgNmEO6zNlCLa302vURzNOCkqk8bROKlLQOo9QFPovF7RlT9/kxFb3mRg+k/t/pISXM5FhKBpeOif/ySy5n/a9VllrYpPXdRT70b9+wHq6jtrvULO9raMNxeeftiD5Jw4mAZ2L8SdhoqAJcm4g9LRxgdWwCH9IWAkCY3oNG9CDL2Kki9MJOy6QQFwLuPIZ9+0y6rnGVDp5JIJqm1p+Qd6Cf8V8DvsmeAvRpzsXxS0AW/pYyVx6nSH9KBT5H+VFJf+AFdKhimeMknKkjN3KHkrOwZJ8Zyqn0jya9iIxZRbb8p1RRhFMj+rLVRiz8HVawqt6z/CoquxH4Bg1cCz3PLFK1B1ZxeXU5PjTO7AcMaKnN38v3dc1ypfyob6OAN3uIW5Qifmlbrl71uDFX//mJOyMuAgMnv9GlgLDElH7vo/yIOvM5+sI5q9P6P/6E5O3hlwYAS5Ncv6vg0sUhrjt3w8voCwx77pTTw10JAOWZzK5obnggX95STXJ/3SpAli1t2w1nu/yI= MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 87bd5f72-8e74-44e0-33df-08d481c08ef0 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030255120)(201703131430075)(201703131517081);SRVR:BN3PR03MB2273; X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB2273;3:/wieX2v0Uu1Jc+7n+WJWND1YvFi91FhdFT84QyKSjEtNmwhGXZ4AVKTrWu6MfKguxw54BWAZczzS2p4mc6372A5Y8c/OcrU9/SMIbsScTZtj41pS/7dLeHjiPX7HdpRVvJh7s2oR7pFIZGpumW6bFRwzoAu7wJ0EET8XLghHRxP1ovLtSbe1PPpP9B/dmbN9ahzm7dje3T5X7IfXo2cMgoppTeeAr29AVMS4ZPUQ+h5/wSeVfUfByZXdSVvH19e0UckmNjcrrulcs7+qebXlD3boocQZfq5Zf8DUTuXvIQc5/PhM3bpYoEZwCWtkph4Aypu/4DSYF+F2Br3EpRKiG/lNi1/Q1jy3xlz0Wet+R1wvhf00vAskweWmFk0JL19apUR1ZCVruC3hTqM7aMG4OU7Ktugq3pVG3ZSnZN/jwDTnNJu4Qn+V99QrsnV2fJZx5G+bIKb4Sqw2p2JbGigmDg==;25:KvwpYyPHAtV9m4tYXfXv2Gi1Ce7gdae+kCOiD17nyH69HJnuyPbB8TEWzuBpHRRfzQeH4g3uWcxbLTzlzrU0Bao5rWHwQUm9AlN0jwibMwuLbvLxrNG7Po3PH/GWA8oNMrW63WFHUxNdKr9Txu1pDRHyONIjDAP3j6dBkxZwVnlwogGY9YzCQlH4WwkuAs3kDzOMtehYNvIR7TT4bvzXma+Z6cF9qEHGRcoxf25G5Iy/4efvnXNx4wJxYm1ck5zvJWHPXeqfsVQgPgAtvnniIdg2PlFxcX0NlklQOdVEdnW5Vq65ostNPbtH/gymHg5zwe5BItrTs6apQmZrtWJQoK5xp7CNgVfQM8l3lKXZiyZSb4xCl4wHtAvFpNThLDT9wP2p0kGBTbjwFxlxEBRdNZPm6E07cn0hPbhKj78hLbcB05PwY7JfvMn2vYOHWiYOlFxLWrv3mHnTqqRU0azUdA== X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB2273;31:VDquT1eqLX89Krl2wT05YCecCzOc9UnI4oPB/JHqI2PY2iiVLMs/SeGAO1jzuHIaL2sGVlbzSUZETbJt0AZ4NTr2TGzzbqX+Luu028TX1uvsBq8XxOo/wEEI0E9tKjWK+zLV9BVv4v409xr95ffhtWyPf7bJ2ClChdYud//euI4p838DF3+82/l8vpZKrdaFDkr0UlmMByZk1P9gQBFVGDhV2h9uq9Zn12EfE9F7pcVFRPdifHPXmEh59wA/S3+0sKdn3XMPPpWhSotqVpHYSUK8ccDqq03MwFSrUSuPTGc= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(227817650892897); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6095135)(601004)(2401047)(13024025)(13023025)(13015025)(13018025)(5005006)(13017025)(8121501046)(93006095)(93001095)(3002001)(10201501046)(6055026)(6096035)(20161123561025)(201703131430075)(201703131433075)(201703131448075)(201703161259075)(20161123556025)(20161123563025)(20161123565025);SRVR:BN3PR03MB2273;BCL:0;PCL:0;RULEID:(400006);SRVR:BN3PR03MB2273; X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB2273;4:RCHL1taaAPgR9CGIobVSCFpv+jlerInxcLNyHR+Q0pvpxykD1Sb41huscncVG6uokgN+gEo1g5Wh9+21VyNeYPvHIMoEvVS2UVkd/DYOu494i9q3O7aa46wMTpAoPaDrdBhUMw3mx/OjNxR4nivo4GwqgT+CYMqq8Oe/BQnv9JFebQXejRr585AZrUgF7gWrwfnrJjQiIgXI7wc4xmTSrxkceaSwSRkBdHRYHjl9CI5kRXf5d65WPdnehg7bvracA5TvNaWbGQkNd4S1i/gDt3YHTy/eHzJRsHqrbJ7nuVLF0rMP0FG7TmNJ9h8mLd7FDDk3Nn6WWjAyQ+iqUb60XW6+gArh92yUe2GcMcZhV9iRwA135ItFNaYqrElqf1CVrnzPBZn3MVFbZABaIFvAZ1mYFtqMiqsK9BObskYMQ7Pg7cqqJWbAmhbfvR1/VyNeLPBDV8dkoYrxH8ktItQSdrywxJ3RBuTe4d7EN6E+e16o9hjdLRnVqjkOwHOxI4nxXwUtIcMqvzB3/7W9+w9zSZAjT/EtUbtW7Y2vFmBywp1Z8NeB0Qo7VG2Ysr7LslmCfpOuNGu3BB1pGXHlyHvR0DlouDZl32qFwJwYOis9cjfi/cvcXkNFrSqom4xeAU6HDg5pyzgHJ9s03/3CAueq1Yl9nLet5PT5PfZUhPLHhDkenLZ9In89IlOeLJjTmxmDFwH8GjRfN4Cvnj2sCx2HQ/H5Eit266GoIDz4kQNTC1As+5y6T/fJjkV/jlhrpxGthE597980rLXT0LCbVSGzTcpRkc1xU4uuYy0kPbEAMHtUhgNWu6PjMOOCyg71aWmCV1YT3wldkFCrDipGaXBUwZbLSqz5tibQiDosKze9fjsX5XU5ih8tBboe5qRHf01xLgoKzC1GyPwUG7bM5LZnnzxFqnKNgGVaTV11ZxTJ8N8= X-Forefront-PRVS: 027578BB13 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BN3PR03MB2273;23:z4F8vyEjyedpML7NW4TljKktKOOTpeXiv6otUGBEQ?= =?us-ascii?Q?81te1abLveIsBip/Hp3rSdJ71lSC8gmLDr/yEQEuIIvo5wUbiBwlFm03u4Fr?= =?us-ascii?Q?uMOuzTCQRqk6yKOK7uARJT7MwiyvVauwbZ+AVzKfSjB15mhHkJOc+SG+178S?= =?us-ascii?Q?vOxQfb535rIHkUN6rtDGWh9IVh+ZTRz7Db8bR0z5EQzeckfEW3czWktRJLQV?= =?us-ascii?Q?BzLScTnbHQdLeD7zuX1/40/SjcWHhnM6mYlULecOPwYZL++5LFlmgsTXP/qR?= =?us-ascii?Q?w181afpXh0GKcDXhxq0Jj+FSFqr79t7piFeEAUkM7Y/b16KJmhASEmHzAjlv?= =?us-ascii?Q?Swk4z/gmfmaO+SBdZlKoHs2P/+zALsFCzOm5AewmqytzLt6GnW/M+Jl5Ypg5?= =?us-ascii?Q?KcYIF1kvwf2T2FsQzBIdvii11XPHChQ3jl8U2tJ4K5GxUzlrU3YFbyb2DjSI?= =?us-ascii?Q?K8BfGW2c1tx6bs8OCvaVVoi8+CpqGUBIhN8B9NQf5/OO2M+W9rZI/xp2yLnP?= =?us-ascii?Q?gPiyWgSnZmYbP20i8E3Gr3ZCqEDvTnOdx22b3mR8bmh9ig4nAXpqCgZhGtNU?= =?us-ascii?Q?GK3gXSDqy6N3lbAahcDdsNq2GWtO6irpMfajJ39QVfw3PF88ZbB9pJMrFzWh?= =?us-ascii?Q?nont6yURm3ZIhp1zTZSUsB3DREO/2E4oT5naC0eoRGqwh/PGz0aWg/n0FNdV?= =?us-ascii?Q?C8fBH8u5EDlVvRSRqx0sb4+008FPbXPf2m04l+E8DOJdso7nYBXZipGb5JMY?= =?us-ascii?Q?6n0cnA0JOhJ528RveHRyk+cB5ieJkhh9LwQkUpmHhHBLRlUtGMo7EKkAqcE4?= =?us-ascii?Q?/C4iOJn9o4jgcw9Pp9qSkuUx/HukXkCEbozIcH+DVPJH+N9mN0Se11122fWl?= =?us-ascii?Q?FJFPpm6zAuBch2zhSnstohA2i/DqA1Kudk9nqMXsXgh9qCf2/ZHipcvUC03c?= =?us-ascii?Q?1TKrFwkWIiMunFBgy1p0e0WmJVM+VagNCVZHCOw201OAvQsslNjTV71uar5V?= =?us-ascii?Q?2oNUmKi2+p1iXAAECuOwe6o7Yq0Z3+f4SFnHvLuIXvo/0PdH78isilKJ0OMn?= =?us-ascii?Q?Ff2AXTljFd9RW5OFAI7B+51hMFSNXYzcivjE1+FsZwbMc4LgcmtRomD5g4r9?= =?us-ascii?Q?ZBYCHkXyxk30TiwT7khAPpeSGgODjDiKJlPpB7Fc1fddUFT4RTmTy5U7k5w7?= =?us-ascii?Q?BMeJRTDkISda5u/aCvMDMWbooxdSKMRoobVTXDcEDqa1a7HrZcNlIob7oBUK?= =?us-ascii?Q?fYWuMqsbOH+lpAkyAoenDoGdPvv4DryIbyEz2eMMq8LUCNGz7jdhR2NwPE4T?= =?us-ascii?Q?v7WKQXw66hr7RK/9+P/C6Bx76/iJsJ8zgy3STfZqiXE9cd/tIKsZzXtgHCa8?= =?us-ascii?Q?2joLG/clecqbLLv7mumSecCXEw=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB2273;6:wWg4tFu+qfETRYFFkzOLl33G9zFefR0Byb84MoLgwQlAoorzJT2nV/UWI8hclTQho5E7Ydrx2MMGj1U8QxvUIyJxC34aq2JVBTF0IYuonxBqMHgUPX0VZB4u2W39DKXeLK+ik0vWBRA5Bw6r/ZxO9MAleJ5psgM0A6UEFFBwd6LBQ2mIsecHm6UWJTedAsXM26e/mnNPQLnkeK7IBt5Ua3Od08u3XqF5+q6i9mt9ofqdz3PZbILiw81tHTwitpJAMWcQOsrciH+KFlKN8wkMsd4mflmjGRsImJTn9625FG6hXnJtC9xXDEXJAZ2g7Stn/LV952uH9UiEeoB4YPW7IBHOPZdciJGD6xFs987O7BPR8X9OZWPQVmYAHrkrkUah5sOrfxVNH7sWOWRRv1EK5hOjXseuxRhB0m/PNDvFYjxmyMHsXqNXKNUpOXDwfVAohA6T0Ryljw3JOo/KQGDsTA==;5:ynCcfDeEzb1WmCHyAid7p5DNY4w91aHAPuJqqm4pTvNwsqe7W2FQMieWauN0rgp0i/gNimMdVaC4Hjger2Xr2qgdAQnpQMLAPMDN4uvSxzdGmaNnEDBELzOwiP8HKU/0qaM2QXpz80OgjlFdXthHIdV6Yd7GM3aQjIQXkiscQgetU64QJxr/33ZlfJ6xUqfO;24:mmbD9poIKSjOrisG93KN5h6nxvuKM4VLrN9/J373IPpAkse9kkngniu9m+a6SpIjG8cUgramQiIG/Lk9UYI4wrybU4HlxRgqjjbUye4X2AI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB2273;7:QjxuB+7LXLg5TbtMei92LC2DlUnahRzf5I2VJvwmIweNWJh1+rdcaq2VinQToFBSBBWvJToudpynZ6tS3MDELCmjgMxxD0om6gTdieRb/i/J5sgyLhW3XBmcgKOrp2JHB0McQNm1K4+kFrgGXlmx1OhqeKpkdCSTeY3RxhcDtCLSUZ5d+dgkiOHsioky5AE1+qfs0/HwmQ+TsWKVOSiqiUwolRRxQWKgsDBA9HRTYv99BQi5l4fqA2CFm6V7fZf3palqi7HGDR8m41Ep3TpIh/Z0OuzNyZtP82M03sdbqlfntarekQq3JBhEcBXQHAfpS0OQjzY2okSjSZKeevkmMA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2017 16:25:39.6177 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e;Ip=[192.88.168.50];Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2273 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 9054 Lines: 205 Add a README file describing the driver architecture, components and I/O interface. Signed-off-by: Ioana Radulescu --- v2: no changes drivers/staging/fsl-dpaa2/ethernet/README | 186 ++++++++++++++++++++++++++++++ 1 file changed, 186 insertions(+) create mode 100644 drivers/staging/fsl-dpaa2/ethernet/README diff --git a/drivers/staging/fsl-dpaa2/ethernet/README b/drivers/staging/fsl-dpaa2/ethernet/README new file mode 100644 index 000000000000..410952ecf657 --- /dev/null +++ b/drivers/staging/fsl-dpaa2/ethernet/README @@ -0,0 +1,186 @@ +Freescale DPAA2 Ethernet driver +=============================== + +This file provides documentation for the Freescale DPAA2 Ethernet driver. + + +Contents +======== + Supported Platforms + Architecture Overview + Creating a Network Interface + Features & Offloads + + +Supported Platforms +=================== +This driver provides networking support for Freescale DPAA2 SoCs, e.g. +LS2080A, LS2088A, LS1088A. + + +Architecture Overview +===================== +Unlike regular NICs, in the DPAA2 architecture there is no single hardware block +representing network interfaces; instead, several separate hardware resources +concur to provide the networking functionality: + - network interfaces + - queues, channels + - buffer pools + - MAC/PHY + +All hardware resources are allocated and configured through the Management +Complex (MC) portals. MC abstracts most of these resources as DPAA2 objects +and exposes ABIs through which they can be configured and controlled. A few +hardware resources, like queues, do not have a corresponding MC object and +are treated as internal resources of other objects. + +For a more detailed description of the DPAA2 architecture and its object +abstractions see: + drivers/staging/fsl-mc/README.txt + +Each Linux net device is built on top of a Datapath Network Interface (DPNI) +object and uses Buffer Pools (DPBPs), I/O Portals (DPIOs) and Concentrators +(DPCONs). + +Configuration interface: + + ----------------------- + | DPAA2 Ethernet Driver | + ----------------------- + . . . + . . . + . . . . . . . . . . . . + . . . + . . . + ---------- ---------- ----------- + | DPBP API | | DPNI API | | DPCON API | + ---------- ---------- ----------- + . . . software +=========== . ========== . ============ . =================== + . . . hardware + ------------------------------------------ + | MC hardware portals | + ------------------------------------------ + . . . + . . . + ------ ------ ------- + | DPBP | | DPNI | | DPCON | + ------ ------ ------- + +The DPNIs are network interfaces without a direct one-on-one mapping to PHYs. +DPBPs represent hardware buffer pools. Packet I/O is performed in the context +of DPCON objects, using DPIO portals for managing and communicating with the +hardware resources. + +Datapath (I/O) interface: + + ----------------------------------------------- + | DPAA2 Ethernet Driver | + ----------------------------------------------- + | ^ ^ | | + | | | | | + enqueue| dequeue| data | dequeue| seed | + (Tx) | (Rx, TxC)| avail.| request| buffers| + | | notify| | | + | | | | | + V | | V V + ----------------------------------------------- + | DPIO Driver | + ----------------------------------------------- + | | | | | software + | | | | | ================ + | | | | | hardware + ----------------------------------------------- + | I/O hardware portals | + ----------------------------------------------- + | ^ ^ | | + | | | | | + | | | V | + V | ================ V + ---------------------- | ------------- + queues ---------------------- | | Buffer pool | + ---------------------- | ------------- + ======================= + Channel + +Datapath I/O (DPIO) portals provide enqueue and dequeue services, data +availability notifications and buffer pool management. DPIOs are shared between +all DPAA2 objects (and implicitly all DPAA2 kernel drivers) that work with data +frames, but must be affine to the CPUs for the purpose of traffic distribution. + +Frames are transmitted and received through hardware frame queues, which can be +grouped in channels for the purpose of hardware scheduling. The Ethernet driver +enqueues TX frames on egress queues and after transmission is complete a TX +confirmation frame is sent back to the CPU. + +When frames are available on ingress queues, a data availability notification +is sent to the CPU; notifications are raised per channel, so even if multiple +queues in the same channel have available frames, only one notification is sent. +After a channel fires a notification, is must be explicitly rearmed. + +Each network interface can have multiple Rx, Tx and confirmation queues affined +to CPUs, and one channel (DPCON) for each CPU that services at least one queue. +DPCONs are used to distribute ingress traffic to different CPUs via the cores' +affine DPIOs. + +The role of hardware buffer pools is storage of ingress frame data. Each network +interface has a privately owned buffer pool which it seeds with kernel allocated +buffers. + + +DPNIs are decoupled from PHYs; a DPNI can be connected to a PHY through a DPMAC +object or to another DPNI through an internal link, but the connection is +managed by MC and completely transparent to the Ethernet driver. + + --------- --------- --------- + | eth if1 | | eth if2 | | eth ifn | + --------- --------- --------- + . . . + . . . + . . . + --------------------------- + | DPAA2 Ethernet Driver | + --------------------------- + . . . + . . . + . . . + ------ ------ ------ ------- + | DPNI | | DPNI | | DPNI | | DPMAC |----+ + ------ ------ ------ ------- | + | | | | | + | | | | ----- + =========== ================== | PHY | + ----- + +Creating a Network Interface +============================ +A net device is created for each DPNI object probed on the MC bus. Each DPNI has +a number of properties which determine the network interface configuration +options and associated hardware resources. + +DPNI objects (and the other DPAA2 objects needed for a network interface) can be +added to a container on the MC bus in one of two ways: statically, through a +Datapath Layout Binary file (DPL) that is parsed by MC at boot time; or created +dynamically at runtime, via the DPAA2 objects APIs. + + +Features & Offloads +=================== +Hardware checksum offloading is supported for TCP and UDP over IPv4/6 frames. +The checksum offloads can be independently configured on RX and TX through +ethtool. + +Hardware offload of unicast and multicast MAC filtering is supported on the +ingress path and permanently enabled. + +Scatter-gather frames are supported on both RX and TX paths. On TX, SG support +is configurable via ethtool; on RX it is always enabled. + +The DPAA2 hardware can process jumbo Ethernet frames of up to 10K bytes. + +The Ethernet driver defines a static flow hashing scheme that distributes +traffic based on a 5-tuple key: src IP, dst IP, IP proto, L4 src port, +L4 dst port. No user configuration is supported for now. + +Hardware specific statistics for the network interface as well as some +non-standard driver stats can be consulted through ethtool -S option. -- 2.11.0