From patchwork Mon May 29 06:22:06 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Madalin Bucur X-Patchwork-Id: 768019 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [103.22.144.68]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3wbmrn0MnZz9s74 for ; Mon, 29 May 2017 16:23:21 +1000 (AEST) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3wbmrm6f2SzDqN8 for ; Mon, 29 May 2017 16:23:20 +1000 (AEST) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0074.outbound.protection.outlook.com [104.47.38.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3wbmqf3tvLzDq9m for ; Mon, 29 May 2017 16:22:21 +1000 (AEST) Received: from BLUPR0301CA0019.namprd03.prod.outlook.com (10.162.113.157) by CY4PR03MB2566.namprd03.prod.outlook.com (10.173.42.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9; Mon, 29 May 2017 06:22:16 +0000 Received: from BN1BFFO11FD006.protection.gbl (2a01:111:f400:7c10::1:110) by BLUPR0301CA0019.outlook.office365.com (2a01:111:e400:5259::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9 via Frontend Transport; Mon, 29 May 2017 06:22:16 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1BFFO11FD006.mail.protection.outlook.com (10.58.144.69) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1075.5 via Frontend Transport; Mon, 29 May 2017 06:22:16 +0000 Received: from fsr-fed2164-101.ea.freescale.net (fsr-fed2164-101.ea.freescale.net [10.171.73.197]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v4T6MDdZ019883; Sun, 28 May 2017 23:22:13 -0700 From: Madalin Bucur To: , Subject: [PATCH] Documentation: networking: add DPAA Ethernet document Date: Mon, 29 May 2017 09:22:06 +0300 Message-ID: <1496038926-15315-1-git-send-email-madalin.bucur@nxp.com> X-Mailer: git-send-email 2.1.0 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131405125366280068; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39410400002)(39860400002)(39380400002)(39450400003)(39840400002)(39850400002)(39400400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(498600001)(36756003)(77096006)(305945005)(5660300001)(54906002)(8656002)(3450700001)(86362001)(189998001)(4326008)(2906002)(104016004)(6666003)(50226002)(5003940100001)(50466002)(8936002)(38730400002)(48376002)(47776003)(8676002)(81166006)(85426001)(53936002)(106466001)(33646002)(43066003)(105606002)(50986999)(356003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR03MB2566; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD006; 1:I9483MeMWK77GZBmkOx5tZmrmZxEub5/6nHOVBT5ECYw2EzldpuvTRi2oJcFqJrgrr3ex/R3Hiec9emGYeN9ISWT1GAi6+A9BOlgPrKK1VZ6r4/k4UgsH16YE1cUdw8wyTbAMcVXyhjiusy7z9hBFXytp/2yp2tjS2qnd3tY9KjvsK89TVEPr7tn/f4fxbjTZQLUoh/7uOtjpAIJA8LhbwqC7SZzKnVcFsmcgXTbasH0GW0M+ZlZfKf0vVPAxF2dGpij/c41KB2iPAAzDcBopMlEcigOqN0AltgtzxuuFsLkV64ZE6JA/pa1ovolakz9uRCT6IB1wJY2EH57phZMRg3AP4DM5EsspfEewlWEwGrUGXUxUWDiTxeCNFzyRWkLy5O90C921vWqkFgwYuID4qR6HQ/T9PyepNzeZxKDsAO1EbZYpfFpq72E9oF9VKkL8ZxYQaURHQzy+REo0FjttbbHmrYi3Hzt1qR7EmIsHnm6sR/leAC3i7WavChiF1cwJOGOKy/Xi5xC/18omLrsSPdlqgc9K+wT2IwJUfcZKViL7FXDQ9CmBK0cayWcaSCiy2B0o+xF2eBZQQk2yfvzLj3/gYyq6NFDQpVLyddWh6ShlWzlnG1+p9Z4fnfFu8ZGqGbyKvT2RDI4u90XFLCL4i+viSk8nvLE0x3kQmefdbM= MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PR03MB2566: X-MS-Office365-Filtering-Correlation-Id: 50462e69-ca9b-4396-0e25-08d4a65b0d94 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:CY4PR03MB2566; X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2566; 3:yWOnc3T/LfIIhLN4Q3qmOSxZidJmpFj3G+WJtfEYvT+wz1wI+3IAIsk0tDhg3f50txf/1bsRI7hEE9ZiZidY4JMmj/JbhtWKlimJOCrCKLZJy9jR6pfCX15Gceeue757Ug268zqyAjYoEYkEDRvMwVs8aVSPDiaFP+vfTMwT1XzQiRBgmicy3o8tFSqeEk7zeKWsqes11V4/mg+cvustLJYG07lQaEjxTJhfpuYpoBptxN5Avv8DkIWyYDjxJeJJDmNd5J5Yu9E7M1LgElUZn4Pn9mW/yi7bb0yHNXUefqjgwNXHkwLik3YttmRX28Awp/njfPKk/d2FylPyKX/FlKMtv5d9EKrRCGthKgCn5IkEXO72G8XprrMVv8cyFkGsuAyfYfG5kKbpsEjvyMGvWC/ASJx9Yw00wdr0Y6H0YmFjlnnaRopJJUWfmOqHX4tf; 25:M08xWGe2QH19pL5K02cGUbU5ojawxD/Z+LXfFoVghfxz2p+9Box2xXlJadCIcpSuZm/ezv2136FE9RYLfUVEMxLunsOceI5B5jaSnsoOqiyn1qim+gv6qjbZOK8t3dXDCZNSYnC/E/0M/qfLrHT3WC7uqL7oUXNP4CHEQHewfpxJK5sk4D7zKwo/NKPe0lD68cnboQCADoQjkps9rv2aDVl6ThLNdOACMBPujS+mgbnE9j4MZGDEUhjRCTXn9SCk5GgzW8MzVL9Qibfnu+pyQ2R0HnJw+0TSpAAwAlRr+L2+jossz8cTLmusXSp0d2a41J/NK60tUJ6U9gsd4rd1CDnyzju0I8LLJRZRR1WUeiNsdAnozqwGoAfjZpcsNacPN5PCLKbXmkZ7u8AIu+94TMbzEw3e2lp89cZct1RWOOfXYQlNJY94GxCU3NT7yrhKnHLx2ZlsB/DacauYtoPaNaa9wudrq+65QD52JyTks9I= X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2566; 31:+dvVh822R0ZYGmVc4FeiTC619RIxiO0huMqzhA9+XE7DdY1AwEoDwgii/QKZTFB3tKRETo9I/J/NoW/2W+YsWbF6eLXTvY6Q25ciA1edUH7XuvomZw3nCYCryp4YUfkfNQNtlLlcFAsSt7W/j29pjWC2a8hT/CGxQaYM9us8j9GEk5WmdhWAAIzHqYgdVVEP2uxugtcGDMzQhnvplAa6fImug5OPBHNXKBH0taEzsXGb54FohSTsZ+Ar2nMY2kEAd+S2iUkm0hIk6XDJ4O46Q4BxjKsOBtzqyHBi5KdMHhc= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(601004)(2401047)(13016025)(5005006)(8121501046)(13018025)(10201501046)(3002001)(93006095)(93001095)(6055026)(6096035)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123559100)(20161123561025)(20161123556025)(20161123563025)(20161123565025); SRVR:CY4PR03MB2566; BCL:0; PCL:0; RULEID:(400006); SRVR:CY4PR03MB2566; X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2566; 4:UNg8sYKYksW0FZffof79A2y3iFE3YNib/K/VTdLQaJDM8U8V8VqH5GuKOP91ZK1ITNUMRB7DvliO5xaDEn9yrOBv3u48jfLGCNftLMs/eLnVhRtYV0IFtoXLn9SiROv6UqVQccQddWM8K7wGQS+95sZYlvHn7yUMVEte1QFUkZ6k00achSjJ8Jo/EDmRIaSCbcDUXxEzt0aJ/f3zTZNHZwkvnAKk7gieB+iBR1dmybyfWtsARjpZ0xt+EUqsVXtjnXDzrIzq/mUEm1IOsLOjwurYKV71IxZsvkxpaOJooEJrS3uVji03Llzn940bdzaTFiDkn0vNUsWhhYdS4jUwL4F5aJkuTtJcR10QLqXWaNUUj3bPs9eV2lOwM88MuRSMosdeKHqwsOPlYq+6kLHSQUxW6WthXYxAkEpGTcv4j1r4k9CDxd4KMJZx7AaJfZOk1U2xdpHN6fVMshen9YpNWwKX3X+yLurKMonDF7SauDero+1+iux7w5gC6E2EtZcTNuUPEaRaMDtDGBkpz5tKUQ4Jw6enwLFw/FncpcYxN0C/CUItQZjI4Gt+wq0LXTrj447tVvS+OYxCmLRKNNTqK4Xm1DHC3UabA7wDVVmSOGNX89SaMiew2/zagwAYt1lMN0nEguSJuKfHp0OaWINYkc+YyvYfLes5Os1LxcXstfUIO7EPfNRo7Aydf/7Dhuy/YDrUE8rpuWAoVKeu19DRBAHaPGD7uu43IK6swrbz0ZdHm8IWmQQwFAxBU27C5WC9QeQ2ca/ySuI0WwkCzKmQNH6px7ydPbavX89KvbGBd/kFssI7/CM6qveuqylC1WqY1L6rramVhfuNqsxe7wbX5P4tM2/TKDeKJ9qUwQSRBoBnl2oC2ayBW8Vah2P3o+U4VOFNpGLtQBukWYaWU0RXZg== X-Forefront-PRVS: 0322B4EDE1 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR03MB2566; 23:9QkVO0nVGFTUL5LGsHfQ/yrT3oSBpfZIMkhGTYJWN?= =?us-ascii?Q?stLSojXb6TBgnA4bdUqltEFpRxBIXxGGxioqVWKyAfsWQqN+rTyXYZjtqcNT?= =?us-ascii?Q?ij4ZzosoYEcvlkPOWEIE8RfVb1LR59twEpVYua5SgQgNDv8mnHMHuqXgB2i+?= =?us-ascii?Q?MouoIADfBJZ0zcHYx5re0tycHDhdhLa4t2W0Gu0LP+2NPXRXZpDEeEHldBGg?= =?us-ascii?Q?E3+HbIZOrJD/mKTmm/Sk7PFhCpE6ZSlicvOJur0IdfclhuEgwVMgVNIwm5o/?= =?us-ascii?Q?DJyEdX4DXeNGDZrwYyFn/2zpMfIWT6mXVWbahfO0O6lR5xFlZQQuxInX1wPb?= =?us-ascii?Q?/iWWUMwM3CGZYqPMjXciMEWsMYiF7gldyucXUfyLMIPROTBHpEH8dN/oUhxy?= =?us-ascii?Q?Retcv5f/5r4Rq1MPxXHhXE+KLBctLaN/zywYlN5hH6Q7MYFn6OhxCYeaigwJ?= =?us-ascii?Q?f8Gy3j4NQH58MQjlFPq12xaOzj3GcJpdPsK0LOtnvBLYDB2HqDSYg4gDIvhl?= =?us-ascii?Q?7a0a/N0YAYkR79SLmu7AsZ4MtmeZumUfdonpMnmBUlBBwf48Td94CE/0rcKd?= =?us-ascii?Q?SlC4fB5bto/7IWFcKNyvh4FDs/StmQBAhaacTWT0oXuSghtuqXLnSWQMXzPO?= =?us-ascii?Q?xrjVTYhryfzY6j441gVnGSax66IqXLPFr8XAwHEKslYhsrJdg64ZCkKajJB5?= =?us-ascii?Q?0D106mJcB1bhIVkP7Hx4sIwIkh+Omuua665qvpfqIqE4QjgMedDV5e07aALx?= =?us-ascii?Q?MQxqizO2OLqkwchiKkKF36ouCbTImvSvQ+1zCPyipCNmpaBHncrXGLtGHU66?= =?us-ascii?Q?+zzk6EKF769K8AGdrSmLj2kBcmQu+ZQ8zRmJMvYi/8coOBG8qZCRunLEbjTP?= =?us-ascii?Q?/3hO3eEoHV7BKM6EgC75kyCxgVilTqq3E7F3nJMjpFx9w7RMIOM86Q0uSiTQ?= =?us-ascii?Q?bhYWUAKRwDdOW4IOOG2R7a0+rj4zxk0M6gGKtkJNps01bCxtx8zBhyYerCK4?= =?us-ascii?Q?oHkPLHJ2dcJYmQATMx5yk99eKOGBe41P7XHi5tThbKgcdaMcbBwzErYT1whH?= =?us-ascii?Q?9LJ867f4I0/gitu/uK+8oj75gQB+KWqq0wja/915lSd7kcny1ADUAgILOsms?= =?us-ascii?Q?vqxZIbDHFXwcTl5+B69nOaYbxb+uJv3y97OC0SGIM5X5gQBn72lBTmwmShlJ?= =?us-ascii?Q?UujMPl63B9DtRk=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2566; 6:i6pZYiq6xey5O0JEunNHgx2o8o4FramXmXhcAVSYPHCIfIlkWNoS+bBqzP9ZvGIjOxC/kJavRNcmKcGC4TVwc0896hWM1/E69HsGh7JMoif7pNsiMWjDv4xS+fvOS/0mgAmIT90vM352ciCRXXvx1t+rDJN8gqhPsQNxZD1SG+nWWFKtNwplRySUosVkahv5m8h7RLChSIFBuW0s6227JSsW2b2A2wSSwaP4IlRh8BBysHK3el90sEXMYzu9QCcb6DgsIceCDNqS3YatAV7u3HoxDTBdcM+pJoJowtK4PSFyCm9nlG0LdsxExl216tMmz3q6yot1vfBE+HcdtRjz6UOeT3MljbG+MwSAmtFJkoNqCGTYFeRj3Q3psbyZrwS3x6ivWvQWitPMWefoU43mP1DnO6hhV87t9rxpkcnC1IEUMyOQ81LUDaVR/yU3xjzipMYwN14KnNPp+qbRwo7I+CyyrerGZNK67RNOy/zefmv2hJ1epMerp6rGqvpcvYncRnk3/Ly5YWoj715Z023neQ==; 5:ndRG33RSYJMDjYMQ2Sc7Sg1RRSp+e057zOvljyNXGrjTSI5mtny8QVAKpWJgdyir4djoPN8LRmT3Fmgc1i//W5oiyTf9i4z/sa3EgShhl2SMklE1rzlf1VHneZilHNTlqMLku7omp9WbRLwXggG7i6JEt2kWM58xN8tF5ATBmd+FgxIrjNMAmt3EgYMJLeJX; 24:JikvkHrdC5kBH7+Agy23ivDST6vm3Bc1tTKx4SHFfYCYmZ8dOCu/67WBZ/ZJoc7LICxR73Sq7413xG6N69sxt63PYrvZkzrLCAXBX8zX+L0= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2566; 7:1qYs4WY9ZYMbWKAoVQay+go/Dk9QQfvvRY8elVP+5zvJGLPrrcuFyjYazEstBPtpv5kGU/7eE2dZeXcejpllrtUYZy1I0Y6yMCv+OvwZRxcEzLlChxsjaeDu6YdJLkGs4YNUbqWu6V15a+mn6aVE4sHaauJal63qc0lqg4XPI6uophGHULu1cuUA6yOuyiP1uho0t0HSirzhkN3DIjDGYKVMIFlCMO9AfS21tfOufjgZlH1xehXNzGAMSPtNzUJh3cb6nSCs3gZEQQV488NnSr6Mr8OfF/Uz9CL0o3mwZhKlFTZdFPFxkJt4+iX/g99S06Sm3b4bNUhMr+L0C/rinw== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 May 2017 06:22:16.3784 (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.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR03MB2566 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: madalin.bucur@nxp.com Cc: Camelia Groza , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Madalin Bucur Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" Signed-off-by: Madalin Bucur Signed-off-by: Camelia Groza --- Documentation/networking/dpaa.txt | 194 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 194 insertions(+) create mode 100644 Documentation/networking/dpaa.txt diff --git a/Documentation/networking/dpaa.txt b/Documentation/networking/dpaa.txt new file mode 100644 index 0000000..76e016d --- /dev/null +++ b/Documentation/networking/dpaa.txt @@ -0,0 +1,194 @@ +The QorIQ DPAA Ethernet Driver +============================== + +Authors: +Madalin Bucur +Camelia Groza + +Contents +======== + + - DPAA Ethernet Overview + - DPAA Ethernet Supported SoCs + - Configuring DPAA Ethernet in your kernel + - DPAA Ethernet Frame Processing + - DPAA Ethernet Features + - Debugging + +DPAA Ethernet Overview +====================== + +DPAA stands for Data Path Acceleration Architecture and it is a +set of networking acceleration IPs that are available on several +generations of SoCs, both on PowerPC and ARM64. + +The Freescale DPAA architecture consists of a series of hardware blocks +that support Ethernet connectivity. The Ethernet driver depends upon the +following drivers in the Linux kernel: + + - Peripheral Access Memory Unit (PAMU) (* needed only for PPC platforms) + drivers/iommu/fsl_* + - Frame Manager (FMan) + drivers/net/ethernet/freescale/fman + - Queue Manager (QMan), Buffer Manager (BMan) + drivers/soc/fsl/qbman + +A simplified view of the dpaa_eth interfaces mapped to FMan MACs: + + dpaa_eth /eth0\ ... /ethN\ + driver | | | | + ------------- ---- ----------- ---- ------------- + -Ports / Tx Rx \ ... / Tx Rx \ + FMan | | | | + -MACs | MAC0 | | MACN | + / dtsec0 \ ... / dtsecN \ (or tgec) + / \ / \(or memac) + --------- -------------- --- -------------- --------- + FMan, FMan Port, FMan SP, FMan MURAM drivers + --------------------------------------------------------- + FMan HW blocks: MURAM, MACs, Ports, SP + --------------------------------------------------------- + +The dpaa_eth relation to the QMan, BMan and FMan: + ________________________________ + dpaa_eth / eth0 \ + driver / \ + --------- -^- -^- -^- --- --------- + QMan driver / \ / \ / \ \ / | BMan | + |Rx | |Rx | |Tx | |Tx | | driver | + --------- |Dfl| |Err| |Cnf| |FQs| | | + QMan HW |FQ | |FQ | |FQs| | | | | + / \ / \ / \ \ / | | + --------- --- --- --- -v- --------- + | FMan QMI | | + | FMan HW FMan BMI | BMan HW | + ----------------------- -------- + +where the acronyms used above (and in the code) are: +DPAA = Data Path Acceleration Architecture +FMan = DPAA Frame Manager +QMan = DPAA Queue Manager +BMan = DPAA Buffers Manager +QMI = QMan interface in FMan +BMI = BMan interface in FMan +FMan SP = FMan Storage Profiles +MURAM = Multi-user RAM in FMan +FQ = QMan Frame Queue +Rx Dfl FQ = default reception FQ +Rx Err FQ = Rx error frames FQ +Tx Cnf FQ = Tx confirmation FQs +Tx FQs = transmission frame queues +dtsec = datapath three speed Ethernet controller (10/100/1000 Mbps) +tgec = ten gigabit Ethernet controller (10 Gbps) +memac = multirate Ethernet MAC (10/100/1000/10000) + +DPAA Ethernet Supported SoCs +============================ + +The DPAA drivers enable the Ethernet controllers present on the following SoCs: + +# PPC +P1023 +P2041 +P3041 +P4080 +P5020 +P5040 +T1023 +T1024 +T1040 +T1042 +T2080 +T4240 +B4860 + +# ARM +LS1043A +LS1046A + +Configuring DPAA Ethernet in your kernel +======================================== + +To enable the DPAA Ethernet driver, the following Kconfig options are required: + +# common for arch/arm64 and arch/powerpc platforms +CONFIG_FSL_DPAA=y +CONFIG_FSL_FMAN=y +CONFIG_FSL_DPAA_ETH=y +CONFIG_FSL_XGMAC_MDIO=y + +# for arch/powerpc only +CONFIG_FSL_PAMU=y + +# common options needed for the PHYs used on the RDBs +CONFIG_VITESSE_PHY=y +CONFIG_REALTEK_PHY=y +CONFIG_AQUANTIA_PHY=y + +DPAA Ethernet Frame Processing +============================== + +On Rx, buffers for the incoming frames are retrieved from one of the three +existing buffers pools. The driver initializes and seeds these, each with +buffers of different sizes: 1KB, 2KB and 4KB. + +On Tx, all transmitted frames are returned to the driver through Tx +confirmation frame queues. The driver is then responsible for freeing the +buffers. In order to do this properly, a backpointer is added to the buffer +before transmission that points to the skb. When the buffer returns to the +driver on a confirmation FQ, the skb can be correctly consumed. + +DPAA Ethernet Features +====================== + +Currently the DPAA Ethernet driver enables the basic features required for +a Linux Ethernet driver. The support for advanced features will be added +gradually. + +The driver has Rx and Tx checksum offloading for UDP and TCP. Currently the Rx +checksum offload feature is enabled by default and cannot be controlled through +ethtool. + +The driver has support for multiple prioritized Tx traffic classes. Priorities +range from 0 (lowest) to 3 (highest). These are mapped to HW workqueues with +strict priority levels. Each traffic class contains NR_CPU TX queues. By +default, only one traffic class is enabled and the lowest priority Tx queues +are used. Higher priority traffic classes can be enabled with the mqprio +qdisc. For example, all four traffic classes are enabled on an interface with +the following command. Furthermore, skb priority levels are mapped to traffic +classes as follows: + + * priorities 0 to 3 - traffic class 0 (low priority) + * priorities 4 to 7 - traffic class 1 (medium-low priority) + * priorities 8 to 11 - traffic class 2 (medium-high priority) + * priorities 12 to 15 - traffic class 3 (high priority) + +tc qdisc add dev root handle 1: \ + mqprio num_tc 4 map 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 hw 1 + +Debugging +========= + +The following statistics are exported for each interface through ethtool: + + - interrupt count per CPU + - Rx packets count per CPU + - Tx packets count per CPU + - Tx confirmed packets count per CPU + - Tx S/G frames count per CPU + - Tx error count per CPU + - Rx error count per CPU + - Rx error count per type + - congestion related statistics: + - congestion status + - time spent in congestion + - number of time the device entered congestion + - dropped packets count per cause + +The driver also exports the following information in sysfs: + + - the FQ IDs for each FQ type + /sys/devices/platform/dpaa-ethernet.0/net//fqids + + - the IDs of the buffer pools in use + /sys/devices/platform/dpaa-ethernet.0/net//bpids