From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E611DC43381 for ; Wed, 20 Feb 2019 19:32:33 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B175E2089F for ; Wed, 20 Feb 2019 19:32:33 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=Mellanox.com header.i=@Mellanox.com header.b="HzMoSx4/" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726853AbfBTTca (ORCPT ); Wed, 20 Feb 2019 14:32:30 -0500 Received: from mail-eopbgr00055.outbound.protection.outlook.com ([40.107.0.55]:56667 "EHLO EUR02-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725847AbfBTTca (ORCPT ); Wed, 20 Feb 2019 14:32:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Un6643EAMddxNcMDjRB6o7013mmWvA4JWCShIhCHU7Y=; b=HzMoSx4/zpsWxgafqHq6Zq8EqPXYUzpfzX0jSPVJzn5llyHsQCvbnbIJjJ3dVUue8UAGUQnbGalyilboC/2wJLZL2HfhqrZW9qwnEtybRiOTG4QBqFpCJ1f0oqONinGMwF39ifqABkTDUu3xs2iE13wMGxY99/4Swobr9I8x1hY= Received: from AM6PR05MB5240.eurprd05.prod.outlook.com (20.177.196.214) by AM6PR05MB4871.eurprd05.prod.outlook.com (20.177.34.223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1622.19; Wed, 20 Feb 2019 19:32:18 +0000 Received: from AM6PR05MB5240.eurprd05.prod.outlook.com ([fe80::3542:889c:3a85:3866]) by AM6PR05MB5240.eurprd05.prod.outlook.com ([fe80::3542:889c:3a85:3866%5]) with mapi id 15.20.1643.014; Wed, 20 Feb 2019 19:32:18 +0000 From: Ido Schimmel To: "netdev@vger.kernel.org" CC: "davem@davemloft.net" , Jiri Pirko , Petr Machata , mlxsw , Ido Schimmel Subject: [PATCH net-next 04/10] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_pms in mlxsw_sp_sb_vals Thread-Topic: [PATCH net-next 04/10] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_pms in mlxsw_sp_sb_vals Thread-Index: AQHUyVL9nRO719GmrUiYH9mdXmAA2Q== Date: Wed, 20 Feb 2019 19:32:18 +0000 Message-ID: <20190220193141.16498-5-idosch@mellanox.com> References: <20190220193141.16498-1-idosch@mellanox.com> In-Reply-To: <20190220193141.16498-1-idosch@mellanox.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM6PR10CA0061.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:80::38) To AM6PR05MB5240.eurprd05.prod.outlook.com (2603:10a6:20b:64::22) authentication-results: spf=none (sender IP is ) smtp.mailfrom=idosch@mellanox.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [77.138.249.209] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a8c10544-c71e-4f9b-f1be-08d6976a200a x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605104)(4618075)(2017052603328)(7153060)(7193020);SRVR:AM6PR05MB4871; x-ms-traffictypediagnostic: AM6PR05MB4871: x-microsoft-exchange-diagnostics: =?iso-8859-1?Q?1;AM6PR05MB4871;23:oKtYSXAE6G/X4ZhRtlyCBrPI9OKEYPCkvbLt25T?= =?iso-8859-1?Q?r2boXRFW73gVgElH1biHh7xG5rq25XMWbk98PmB+DPxkJvOUJ7v651apcN?= =?iso-8859-1?Q?eWm7u829SjT2ICdXYYo326gLqY7S0Fz33VVXZtNGAdC70CbZl7p5KCFdid?= =?iso-8859-1?Q?TdUPRiR/+6augEjFhXjhJ8mR/PgA0N/m7vyNfXfnRHVKlqBH+g5cQjNjzX?= =?iso-8859-1?Q?M1Ewl0lbRCJQ58Sw0jXgKL2WvKPKKXxg2yxbeOhPv4IQxdC4f6gmL0LTCg?= =?iso-8859-1?Q?FT6ZmQjt+o7Eo604LRol8ATe+nldD5XbExL425KVo8rkVndddja4fjZwGa?= =?iso-8859-1?Q?4kWHr2DvqgweNUgTsDsXYJ/1CggchzAmUrf2ic+E+O9HAkazgrvjutBK8M?= =?iso-8859-1?Q?8h5IdIBJQWp4DO3HWztufi5bMNvKdqNA/cpXvAyxhB13zXx27oL0fmmRr3?= =?iso-8859-1?Q?TPHLVriQ2qIcOVY8GgOPzQtWKS6k0vDVv1RDLbq/m0YEqy5QU9VyS+fBZu?= =?iso-8859-1?Q?pqos1yIHQ7aZzEKpeH7NmigcegPmKjdFqZ68ZMFFYYiPSDsNIpuRTcvP/b?= =?iso-8859-1?Q?vvay1nNldyAbjerCVp9w8bUbgDVN5y/AJqKtx0FC1GFhBvCd5PhtcWdK9S?= =?iso-8859-1?Q?l/1wwuG7xXBh2h1WFAgyKo4LP7qkx4yGGNxqIAHXXd2u+/98s9a1AGtkw4?= =?iso-8859-1?Q?Fq0ZYjtPctNIoR+8Pu0J4fwHtqC/kKMZItxlxkbyEiKWlVA8OWkQVtWV1L?= =?iso-8859-1?Q?YGKcsVJNHq8RAWNcsLdAOteJpowzL3HhIvu3/88ohiTh+c2K+PBxZeuMhM?= =?iso-8859-1?Q?bIZVmQyVB3kEM16DgcR6z+mcvsE9Qk3Dxl8s5PmJiCb1PUbgqA763C9NGq?= =?iso-8859-1?Q?n25rvnklO0rbbvGy50DjFcZ26wNkkem4BCTaKduElkuIYqL4FlqNeqp6Bt?= =?iso-8859-1?Q?uKnMzETRm3nXsvh8xCLUyWpLyr3QNDh7OOT/0xYPUyg1lLE2ivICf5ER/9?= =?iso-8859-1?Q?dbY4wqqIFa2xUjUmmvwk7jy5nMgjXH1vlYBsdabukpTKepAR2Lifs6QHlD?= =?iso-8859-1?Q?/8A8CmEflLvZ/GEVQ3gOSdmvPbgWyNBcem2+BwhFXP2WEoJw6txwkvPaah?= =?iso-8859-1?Q?kjMIjJnFQQjjFOUsu2N5oZ96rEJLIL3j6KjrbrtDEZf5WfQj9ZmSEsdUzF?= =?iso-8859-1?Q?VznAcFAlh1gXsFCHh3J0cB3CmD2VPvCHPEz784y2BXTPgwopY3MqD/1asP?= =?iso-8859-1?Q?98ggj0IrZx5Dt8CLHltU7J8STiKVTtyXjnUQaqW8JNE6xj+qHp7Y+eT0dr?= =?iso-8859-1?Q?vixTUWT2ivG62URYrigdwHHWUsuMvkaE1qnaqtUC5UfdSwaj54bv0bniSm?= =?iso-8859-1?Q?WyJrIITw=3D?= x-microsoft-antispam-prvs: x-forefront-prvs: 0954EE4910 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(136003)(376002)(396003)(39860400002)(346002)(366004)(199004)(189003)(486006)(86362001)(446003)(2616005)(4326008)(2351001)(478600001)(2906002)(105586002)(106356001)(11346002)(107886003)(476003)(68736007)(6916009)(54906003)(316002)(25786009)(6506007)(26005)(102836004)(386003)(53936002)(186003)(6116002)(3846002)(52116002)(99286004)(97736004)(2501003)(256004)(81156014)(6512007)(6486002)(50226002)(5640700003)(81166006)(305945005)(8936002)(7736002)(8676002)(1730700003)(14454004)(76176011)(1076003)(5660300002)(71190400001)(71200400001)(66066001)(36756003)(6436002);DIR:OUT;SFP:1101;SCL:1;SRVR:AM6PR05MB4871;H:AM6PR05MB5240.eurprd05.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: OSf9uHrf5+n39Z9sFmX8RppuRa3gCXKVoPypIhDvhV1g0ryMOUz9trQKyX1vK1F6ci+1GyuBZybB+wfsffLbHq5kNxGhqOWrLYBgfnySgXlIYScUBEB+sPeAkl6GB6g66c8Dw6BRGazwUOeMw2drterAZwezGAXAOCxq4AK6gOzTUuchYmTbQgw/FIvDlcmq5JWhdVw2LLnQO0+BuVYTgnnIetrntfaTVdBxAU/Skw5j9O47/VnpbzSR3ijtR8n0dJdgKZYVQQIsWFwBDCWa0zh+2aI/O5W2CsesxWWQiMvMP4wTybNB/7MlRi+QOJZo1aJzoM0cPaMjPYDGutNWONkzBhnH2iLuSrServD72edtrltNVghcEk5Q4s+nbGnmfVWCB2IIRdVCJYsj4WtFihLamtvVAnf+PvyczAou2ic= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: a8c10544-c71e-4f9b-f1be-08d6976a200a X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Feb 2019 19:32:16.5079 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR05MB4871 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Petr Machata The SBPM register can be used to configure quotas for packets ingressing from a certain pool to a certain port, and egressing from a certain pool to a certain port. The default configuration depends on the chip type. Therefore keep it in struct mlxsw_sp_sb_vals. Redirect the one reference from the global array to the field. Because the pool descriptor ID is implicit in the ordering of array members, both this array and the pool descriptor array have the same length. Therefore reuse mlxsw_sp_sb.pool_dess_len for the purpose of determining the length of SBPM array. Drop the now useless MLXSW_SP_SB_PMS_LEN. Signed-off-by: Petr Machata Signed-off-by: Ido Schimmel --- drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c b/drive= rs/net/ethernet/mellanox/mlxsw/spectrum_buffers.c index 72126d904013..672c27c79e8a 100644 --- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c +++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c @@ -74,6 +74,7 @@ struct mlxsw_sp_sb { struct mlxsw_sp_sb_vals { unsigned int pool_count; const struct mlxsw_sp_sb_pool_des *pool_dess; + const struct mlxsw_sp_sb_pm *pms; }; =20 u32 mlxsw_sp_cells_bytes(const struct mlxsw_sp *mlxsw_sp, u32 cells) @@ -581,16 +582,14 @@ static const struct mlxsw_sp_sb_pm mlxsw_sp_sb_pms[] = =3D { MLXSW_SP_SB_PM(10000, 90000), }; =20 -#define MLXSW_SP_SB_PMS_LEN ARRAY_SIZE(mlxsw_sp_sb_pms) - static int mlxsw_sp_port_sb_pms_init(struct mlxsw_sp_port *mlxsw_sp_port) { struct mlxsw_sp *mlxsw_sp =3D mlxsw_sp_port->mlxsw_sp; int i; int err; =20 - for (i =3D 0; i < MLXSW_SP_SB_PMS_LEN; i++) { - const struct mlxsw_sp_sb_pm *pm =3D &mlxsw_sp_sb_pms[i]; + for (i =3D 0; i < mlxsw_sp->sb_vals->pool_count; i++) { + const struct mlxsw_sp_sb_pm *pm =3D &mlxsw_sp->sb_vals->pms[i]; u32 max_buff; u32 min_buff; =20 @@ -684,11 +683,13 @@ static void mlxsw_sp_pool_count(struct mlxsw_sp *mlxs= w_sp, const struct mlxsw_sp_sb_vals mlxsw_sp1_sb_vals =3D { .pool_count =3D ARRAY_SIZE(mlxsw_sp_sb_pool_dess), .pool_dess =3D mlxsw_sp_sb_pool_dess, + .pms =3D mlxsw_sp_sb_pms, }; =20 const struct mlxsw_sp_sb_vals mlxsw_sp2_sb_vals =3D { .pool_count =3D ARRAY_SIZE(mlxsw_sp_sb_pool_dess), .pool_dess =3D mlxsw_sp_sb_pool_dess, + .pms =3D mlxsw_sp_sb_pms, }; =20 int mlxsw_sp_buffers_init(struct mlxsw_sp *mlxsw_sp) --=20 2.20.1