From patchwork Wed Dec 11 09:51:58 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xiaojun Liu X-Patchwork-Id: 63741 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id D3D4DA04F1; Wed, 11 Dec 2019 10:52:03 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 257A21B994; Wed, 11 Dec 2019 10:52:02 +0100 (CET) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-eopbgr140129.outbound.protection.outlook.com [40.107.14.129]) by dpdk.org (Postfix) with ESMTP id C4FA534EF for ; Wed, 11 Dec 2019 10:52:00 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UgkYI4nfp6dXuT9WP548GivYe+EQJEdRGyGlG9x+xQrqG6FSRp3Xu9br+PqVZl7cukjaoJD4EFLtkmJObdHAdcwimc7RxwaRkMszRa6POdFmRU9zpzF3BV5YqvJiQgLrz5C0ZeovQvZ0ZIu0ZqOmlXovRnMCj9SxfgmCdE7xJajgdZTf0PcYqLB0aF2kZMXS5Y7ToPL/QtbMbDWIHz8qp81F6m45glX9XwThrKyYc/o6MCLSwyANWPaoKCKCa1MtPhVtDSG+TzrhhEsEZKJ4ySguCZAQEdJHy4n991v7z6BbZ1jdaCe5D+nSh0RhQ00AsN4pMXlq+PHl/7pMMvpPqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5v+FobVr06ZTcFAB6hu3j/CgB3CjW9Pyl+0v6GeZ95I=; b=L/6V2UQ3AKcwtoe+3NouZbXJZHdGp9Okq8oNHEi4JthCkTO3vmqRDfcq59qNEUY+SJ71eysfnugwyXHU+MVed4/FebadzQW87Lrx9stSF1Bte4kXyZIIB4+dwC8mO8uSvEuwMLe2buGh6mpqhUL6AGEieZctCde8EAP9V3iSifxuMnMWw++xb4XxMS8mO2YGDU9hoc43Wy3pgIBTQTJhHXghGp+lxQkyJhZIMD7vasjr49l4d8zZLSZcY2P4KEQIFOBWnimMlnU06BNe3UuFsbzsDdsXi4cdk4Qn1SOXWUbFAB4cY4OcQWmmkPbqNMkCHGa6i0jiFX6Yy7gtPrml0A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=silicom.co.il; dmarc=pass action=none header.from=silicom.co.il; dkim=pass header.d=silicom.co.il; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=SILICOMLTD.onmicrosoft.com; s=selector2-SILICOMLTD-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5v+FobVr06ZTcFAB6hu3j/CgB3CjW9Pyl+0v6GeZ95I=; b=T2ILCK7s92bzE6gzooE/oMkqcF6rYrYzkJBUVqktbv8utJHHewWgBow+oQdyGmbup/ruy+XmjHM11FuCQvTsC0gCN7gmyKfS1wyIW10RoH1Uo2bmlE8gE3lPUUWVdmQLVESIMO2dl64iAogEA/23AuM2Duu0MM41R0NfocnZpkI= Received: from DB7PR04MB5196.eurprd04.prod.outlook.com (20.176.234.140) by DB7PR04MB4203.eurprd04.prod.outlook.com (52.135.131.12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2538.14; Wed, 11 Dec 2019 09:51:58 +0000 Received: from DB7PR04MB5196.eurprd04.prod.outlook.com ([fe80::cdaa:fcae:322b:59ed]) by DB7PR04MB5196.eurprd04.prod.outlook.com ([fe80::cdaa:fcae:322b:59ed%7]) with mapi id 15.20.2516.018; Wed, 11 Dec 2019 09:51:58 +0000 From: Xiaojun Liu To: "xiao.w.wang@intel.com" , "qi.z.zhang@intel.com" , "ngai-mint.kwan@intel.com" , "jakub.fornal@intel.co" , "jacob.e.keller@intel.com" CC: "dev@dpdk.org" , Xiaojun Liu Thread-Topic: [PATCH v2 0/7] support switch management Thread-Index: AQHVsAigriNscwtQbUeBgjjdweYzFA== Date: Wed, 11 Dec 2019 09:51:58 +0000 Message-ID: <1576057875-7677-1-git-send-email-xiaojun.liu@silicom.co.il> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HK2PR02CA0180.apcprd02.prod.outlook.com (2603:1096:201:21::16) To DB7PR04MB5196.eurprd04.prod.outlook.com (2603:10a6:10:1a::12) authentication-results: spf=none (sender IP is ) smtp.mailfrom=xiaojun.liu@silicom.co.il; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 1.8.3.1 x-originating-ip: [113.110.226.253] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e4d2d31e-5dba-47b8-205b-08d77e1fc349 x-ms-traffictypediagnostic: DB7PR04MB4203: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2657; x-forefront-prvs: 024847EE92 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(346002)(366004)(136003)(39850400004)(376002)(396003)(199004)(189003)(2906002)(71200400001)(81156014)(64756008)(316002)(66556008)(6506007)(44832011)(8676002)(52116002)(81166006)(26005)(66476007)(54906003)(110136005)(66946007)(186003)(36756003)(6512007)(4326008)(86362001)(2616005)(107886003)(6486002)(66446008)(8936002)(5660300002)(478600001); DIR:OUT; SFP:1102; SCL:1; SRVR:DB7PR04MB4203; H:DB7PR04MB5196.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: silicom.co.il does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: X7fUvSh07iCDt+MMC8/KLFvgWELjmKpFjuSBnj9WZc7lOeXBUuLE7fZGjK03WIa2Bx31ldRuPVLNf/4akchMBhxC14Q6Tl4jJduLNT5FbUdcEj2kotwQpNKOWnW8Fy5yoPG38Z1NDi/s9G3Eh8+F4dyQBU+dDnzICoLAu0MPllJLWrGlomwHZQ+fIMozIFyXyoFnZ6SmFJNias8djyzz/DrYpmZdnRINVU27fAzHMu7fVFfv1hMnpddJxJFK9foHuQjFDG2xKSdpJbt/uIclEoAQQy59E20vspv3FO2JnfwqKdFqbG+W7er1uxVFQprq+tm8URt2OpYplBecPZ50+EXLA7RmNUUQkv8Fc4yLxslO0i1KsozOP1gKI0OFDCUCPSFLGr6Gw9DCokjWNuVUJaJlfJekhyee5aH2p32jyBA/qrXK9cNsb17CmUGDe+Qk MIME-Version: 1.0 X-OriginatorOrg: silicom.co.il X-MS-Exchange-CrossTenant-Network-Message-Id: e4d2d31e-5dba-47b8-205b-08d77e1fc349 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Dec 2019 09:51:58.4248 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: c9e326d8-ce47-4930-8612-cc99d3c87ad1 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: HesAcGUPmxlPgeO9cvHvfslrdFAbV+C6eCh1j8xf4hHVT3Nx4yQza1ROkoziG8hXvqy5C1Zo9omee3cjljq6MfwMP7XYUL493WOkFs1Gph0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4203 Subject: [dpdk-dev] [PATCH v2 0/7] support switch management X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" To avoid configuration for both kernel driver and userspace SDK outside DPDK, we add switch management in FM10K DPDK PMD driver. To enable switch management, you need add CONFIG_RTE_FM10K_MANAGEMENT=y in config/common_linux when building. Xiaojun Liu (7): net/fm10k: add i2c sbus registers definition net/fm10k: add some modules of port net/fm10k: add config ffu statistics support net/fm10k: add flow and switch management net/fm10k: add switch initialization net/fm10k: add mirror and filter ctrl net/fm10k: add dpdk port mapping drivers/net/fm10k/Makefile | 22 + drivers/net/fm10k/fm10k_ethdev.c | 580 +++++- drivers/net/fm10k/switch/fm10k_config.c | 855 ++++++++ drivers/net/fm10k/switch/fm10k_config.h | 171 ++ drivers/net/fm10k/switch/fm10k_debug.h | 19 + drivers/net/fm10k/switch/fm10k_ext_port.c | 841 ++++++++ drivers/net/fm10k/switch/fm10k_ext_port.h | 136 ++ drivers/net/fm10k/switch/fm10k_ffu.c | 1209 +++++++++++ drivers/net/fm10k/switch/fm10k_ffu.h | 31 + drivers/net/fm10k/switch/fm10k_flow.c | 872 ++++++++ drivers/net/fm10k/switch/fm10k_flow.h | 26 + drivers/net/fm10k/switch/fm10k_i2c.c | 310 +++ drivers/net/fm10k/switch/fm10k_i2c.h | 54 + drivers/net/fm10k/switch/fm10k_regs.h | 2202 ++++++++++++++++++++ drivers/net/fm10k/switch/fm10k_sbus.c | 292 +++ drivers/net/fm10k/switch/fm10k_sbus.h | 40 + drivers/net/fm10k/switch/fm10k_serdes.c | 1886 +++++++++++++++++ drivers/net/fm10k/switch/fm10k_serdes.h | 32 + drivers/net/fm10k/switch/fm10k_sm.c | 182 ++ drivers/net/fm10k/switch/fm10k_sm.h | 78 + drivers/net/fm10k/switch/fm10k_spico_code.c | 2966 +++++++++++++++++++++++++++ drivers/net/fm10k/switch/fm10k_spico_code.h | 21 + drivers/net/fm10k/switch/fm10k_stats.c | 1242 +++++++++++ drivers/net/fm10k/switch/fm10k_stats.h | 257 +++ drivers/net/fm10k/switch/fm10k_switch.c | 2562 +++++++++++++++++++++++ drivers/net/fm10k/switch/fm10k_switch.h | 336 +++ 26 files changed, 17188 insertions(+), 34 deletions(-) create mode 100644 drivers/net/fm10k/switch/fm10k_config.c create mode 100644 drivers/net/fm10k/switch/fm10k_config.h create mode 100644 drivers/net/fm10k/switch/fm10k_debug.h create mode 100644 drivers/net/fm10k/switch/fm10k_ext_port.c create mode 100644 drivers/net/fm10k/switch/fm10k_ext_port.h create mode 100644 drivers/net/fm10k/switch/fm10k_ffu.c create mode 100644 drivers/net/fm10k/switch/fm10k_ffu.h create mode 100644 drivers/net/fm10k/switch/fm10k_flow.c create mode 100644 drivers/net/fm10k/switch/fm10k_flow.h create mode 100644 drivers/net/fm10k/switch/fm10k_i2c.c create mode 100644 drivers/net/fm10k/switch/fm10k_i2c.h create mode 100644 drivers/net/fm10k/switch/fm10k_regs.h create mode 100644 drivers/net/fm10k/switch/fm10k_sbus.c create mode 100644 drivers/net/fm10k/switch/fm10k_sbus.h create mode 100644 drivers/net/fm10k/switch/fm10k_serdes.c create mode 100644 drivers/net/fm10k/switch/fm10k_serdes.h create mode 100644 drivers/net/fm10k/switch/fm10k_sm.c create mode 100644 drivers/net/fm10k/switch/fm10k_sm.h create mode 100644 drivers/net/fm10k/switch/fm10k_spico_code.c create mode 100644 drivers/net/fm10k/switch/fm10k_spico_code.h create mode 100644 drivers/net/fm10k/switch/fm10k_stats.c create mode 100644 drivers/net/fm10k/switch/fm10k_stats.h create mode 100644 drivers/net/fm10k/switch/fm10k_switch.c create mode 100644 drivers/net/fm10k/switch/fm10k_switch.h