Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp4144591pxb; Mon, 30 Aug 2021 20:37:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxMsO5Tew3VuwU4aNfdsLCOcT5NQmGkeGOjwzVcSepzg3XScSFWa21DujIlYzXiKagtrHhA X-Received: by 2002:a05:6402:221b:: with SMTP id cq27mr16499819edb.374.1630381021806; Mon, 30 Aug 2021 20:37:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630381021; cv=none; d=google.com; s=arc-20160816; b=Fh8FTllQ5o8l6ngHcJgZU7rf+c7wDeRfRO7JWyWObcxO5Ws0LudqFS+IEx6Yio7AoH 6c18jFCjVt1ruZrDFqSbiQNyNLCEeTy/FZN1X22aQUx/VwlGymVNpzlUyDUV7V9TjcHR RZzz80a6N2N9rERqt7lNv7cvrVcgEgaVMACCzn0ennyOend04eEq7XEmddCuTFOPkO7P 7slETzeHN49RILhCdCGT3aDQXgyJtiMxpCs4tF2cpXDBKcY0Njum3bJbj4X6zJ042fbi r+dSecmHX+MgY8AVV1J9poZBoXP0Sehb7FmTnjF+cPNKYF5jnk2dxDg/dq5Y25rllE27 mtag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=+jebXGYOcGAdqrSGvpZFwPKvBCX3fMpYDUfVTSZjLhI=; b=WHLDZGwaRqMtEYwmJ5y2vdP7/pA47EsVqHfa0sOzlZKPYfWds0NIFapu0Zd9xPNKUH Fkcw7c0Llj6wteF/sdyjGHSPXZn4sCvrROVqMhxUoEBesc39zHodh2p6CCVrE6szREU3 lB85RofPt9QttonkUbOc9if471yPMMPn9OkLVaXr2+PJNYlr+yHIzdCCBZs8k/hb9YmS cu1XOhPgtzYtTUg2JEcusH0vXGALdR+Ao6d+sqW9nUpHv2gZVrMGUOxrwrRSity5jyQP AR04GNRF7XD/p9YyT7hQyAeGPhUDqnlv6frkBxlsdlXe+CrjsxNpx5DX4qDBSIQ7/Buz BySA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e24si16425906ejl.517.2021.08.30.20.36.38; Mon, 30 Aug 2021 20:37:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239509AbhHaDgD (ORCPT + 99 others); Mon, 30 Aug 2021 23:36:03 -0400 Received: from inva020.nxp.com ([92.121.34.13]:41178 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231959AbhHaDgC (ORCPT ); Mon, 30 Aug 2021 23:36:02 -0400 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 85E8C1A0B75; Tue, 31 Aug 2021 05:35:06 +0200 (CEST) Received: from aprdc01srsp001v.ap-rdc01.nxp.com (aprdc01srsp001v.ap-rdc01.nxp.com [165.114.16.16]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 4DAED1A0B00; Tue, 31 Aug 2021 05:35:06 +0200 (CEST) Received: from localhost.localdomain (mega.ap.freescale.net [10.192.208.232]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id 2FA8D183AC4C; Tue, 31 Aug 2021 11:35:04 +0800 (+08) From: Xiaoliang Yang To: davem@davemloft.net, linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: allan.nielsen@microchip.com, joergen.andreasen@microchip.com, UNGLinuxDriver@microchip.com, vinicius.gomes@intel.com, michael.chan@broadcom.com, vishal@chelsio.com, saeedm@mellanox.com, jiri@mellanox.com, idosch@mellanox.com, alexandre.belloni@bootlin.com, kuba@kernel.org, xiaoliang.yang_1@nxp.com, po.liu@nxp.com, vladimir.oltean@nxp.com, leoyang.li@nxp.com Subject: [PATCH v3 net-next 0/8] net: dsa: felix: psfp support on vsc9959 Date: Tue, 31 Aug 2021 11:45:28 +0800 Message-Id: <20210831034536.17497-1-xiaoliang.yang_1@nxp.com> X-Mailer: git-send-email 2.17.1 X-Virus-Scanned: ClamAV using ClamSMTP Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org VSC9959 hardware supports Per-Stream Filtering and Policing(PSFP). This patch series add PSFP support on tc flower offload of ocelot driver. Use chain 30000 to distinguish PSFP from VCAP blocks. Add gate and police set to support PSFP in VSC9959 driver. v2->v3 changes: - Reorder first two patches. Export struct ocelot_mact_entry, then add ocelot_mact_lookup() and ocelot_mact_write() functions. - Add PSFP list to struct ocelot, and init it by using ocelot->ops->psfp_init(). v1->v2 changes: - Use tc flower offload of ocelot driver to support PSFP add and delete. - Add PSFP tables add/del functions in felix_vsc9959.c. - Use list_for_each_entry to simplify the code. - Fix PSFP tables add/del issue. Vladimir Oltean (2): net: mscc: ocelot: export struct ocelot_mact_entry net: mscc: ocelot: add MAC table write and lookup operations Xiaoliang Yang (6): net: mscc: ocelot: set vcap IS2 chain to goto PSFP chain net: mscc: ocelot: add gate and police action offload to PSFP net: dsa: felix: support psfp filter on vsc9959 net: dsa: felix: add stream gate settings for psfp net: mscc: ocelot: use index to set vcap policer net: dsa: felix: use vcap policer to set flow meter for psfp drivers/net/dsa/ocelot/felix.c | 2 + drivers/net/dsa/ocelot/felix.h | 2 + drivers/net/dsa/ocelot/felix_vsc9959.c | 686 ++++++++++++++++++++- drivers/net/ethernet/mscc/ocelot.c | 56 +- drivers/net/ethernet/mscc/ocelot.h | 13 - drivers/net/ethernet/mscc/ocelot_flower.c | 74 ++- drivers/net/ethernet/mscc/ocelot_vcap.c | 103 ++-- drivers/net/ethernet/mscc/ocelot_vsc7514.c | 7 + include/soc/mscc/ocelot.h | 49 +- include/soc/mscc/ocelot_ana.h | 10 + include/soc/mscc/ocelot_vcap.h | 1 + 11 files changed, 931 insertions(+), 72 deletions(-) -- 2.17.1