Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2078115imu; Wed, 28 Nov 2018 21:59:23 -0800 (PST) X-Google-Smtp-Source: AFSGD/Udl0UcBCa7CU0FL7Fl18WbktaHRcVzHZDsvfJhr2UbUYKOzJg5PZYMyieAiswlF4ri8RhM X-Received: by 2002:a62:ca9c:: with SMTP id y28mr178357pfk.236.1543471163187; Wed, 28 Nov 2018 21:59:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543471163; cv=none; d=google.com; s=arc-20160816; b=FMNG87NMUts12NT/qMFIum/0+U3BcX+ywyMA3V1koxuQTROBQ70xt/IUjR6ko3zc9/ SJralbqWYWuc0umWZZLi1+X1HJZV3Qw3Hi3HLKCSjCc/zm21z24Mhk/i7mGzwSlloe3x soN3tjZwaEFbGZzze1zxuISAaZBSNleaq1OyJPiLyhxcThve2ZlfH+sJibiW4Au/PHSR r3hh263TU8gvHi0qmmt1htfhmTgL9Rifi4XXSCe2Y/eZWPSK978HAc3s4jtnAzNahaA6 t3dyzgUVRaT5E+xFEoZjpS3+OnucilhV8CE4W0KvwROYeUqbMf+SJQ3Urt2Rx+QOpys1 bFCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=pCayGnbxXOFKH6SIwqdBhNEENthpH22wwtLrm8jqwXw=; b=CWSvVafyga0c1tLfoi46mkcFtm0BcM8A0Hka+OKYJTxjPjAfFUGAzcXmx+DZIeHEiw qV0C5ro/IDwUTsAXgxqwuD6PgKV6Bz36NRTKeXjgI8E3qVM72XWuWHNOKCEPmbBA26V/ Z5e5qMjNClDhrXI4sWeKCchzqdhYIr9OyMLKUgquEe6WG4c3XGRi7IdHvh/qUEo/ljc2 LzcvCQqzGPLmoD7pwVYLXWV9jXYqugSFeHpa93lHJFEqgd9xvM3SgSebphRuwy1hZqOa uIyoLDAIWo90d5ZvTndo3jdtz0BXXsk6j5sysNa3+EUOSQISNYdMo3fXTBg3QXmc8D9b WKsQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lNqEgbqp; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f24si1002950pgj.315.2018.11.28.21.59.08; Wed, 28 Nov 2018 21:59:23 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lNqEgbqp; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728308AbeK2RBu (ORCPT + 99 others); Thu, 29 Nov 2018 12:01:50 -0500 Received: from mail.kernel.org ([198.145.29.99]:35162 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727416AbeK2RBu (ORCPT ); Thu, 29 Nov 2018 12:01:50 -0500 Received: from sasha-vm.mshome.net (unknown [37.142.5.207]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A761721019; Thu, 29 Nov 2018 05:57:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1543471058; bh=vgQmSgV+wb0NGqLf2AARIVkM63knvmCl8wUg2/98gIg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lNqEgbqpuvHcUSoryy2OPpig02P1ZSDmJGnfjJOI9qKuaUzNIaY/mLvS3zlFExK0a XCKc6NYgNJ7GYL7M2ucNT8zke3iCejTIaRHQAZaPmOWVmHF5LpJnOxJFB3IRl3rv7W cEna0FLX4dXs7tQPkI9A6WB9NSxwpJ1R11vZW+rE= From: Sasha Levin To: stable@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Sudarsana Reddy Kalluru , Sudarsana Reddy Kalluru , Michal Kalderon , "David S . Miller" , Sasha Levin , netdev@vger.kernel.org Subject: [PATCH AUTOSEL 4.19 17/68] bnx2x: Assign unique DMAE channel number for FW DMAE transactions. Date: Thu, 29 Nov 2018 00:55:08 -0500 Message-Id: <20181129055559.159228-17-sashal@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181129055559.159228-1-sashal@kernel.org> References: <20181129055559.159228-1-sashal@kernel.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Sudarsana Reddy Kalluru [ Upstream commit 77e461d14ed141253573eeeb4d34eccc51e38328 ] Driver assigns DMAE channel 0 for FW as part of START_RAMROD command. FW uses this channel for DMAE operations (e.g., TIME_SYNC implementation). Driver also uses the same channel 0 for DMAE operations for some of the PFs (e.g., PF0 on Port0). This could lead to concurrent access to the DMAE channel by FW and driver which is not legal. Hence need to assign unique DMAE id for FW. Currently following DMAE channels are used by the clients, MFW - OCBB/OCSD functionality uses DMAE channel 14/15 Driver 0-3 and 8-11 (for PF dmae operations) 4 and 12 (for stats requests) Assigning unique dmae_id '13' to the FW. Changes from previous version: ------------------------------ v2: Incorporated the review comments. Signed-off-by: Sudarsana Reddy Kalluru Signed-off-by: Michal Kalderon Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/broadcom/bnx2x/bnx2x.h | 7 +++++++ drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c | 1 + 2 files changed, 8 insertions(+) diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x.h index be1506169076..0de487a8f0eb 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x.h +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x.h @@ -2191,6 +2191,13 @@ void bnx2x_igu_clear_sb_gen(struct bnx2x *bp, u8 func, u8 idu_sb_id, #define PMF_DMAE_C(bp) (BP_PORT(bp) * MAX_DMAE_C_PER_PORT + \ E1HVN_MAX) +/* Following is the DMAE channel number allocation for the clients. + * MFW: OCBB/OCSD implementations use DMAE channels 14/15 respectively. + * Driver: 0-3 and 8-11 (for PF dmae operations) + * 4 and 12 (for stats requests) + */ +#define BNX2X_FW_DMAE_C 13 /* Channel for FW DMAE operations */ + /* PCIE link and speed */ #define PCICFG_LINK_WIDTH 0x1f00000 #define PCICFG_LINK_WIDTH_SHIFT 20 diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c index 3f4d2c8da21a..a9eaaf3e73a4 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c @@ -6149,6 +6149,7 @@ static inline int bnx2x_func_send_start(struct bnx2x *bp, rdata->sd_vlan_tag = cpu_to_le16(start_params->sd_vlan_tag); rdata->path_id = BP_PATH(bp); rdata->network_cos_mode = start_params->network_cos_mode; + rdata->dmae_cmd_id = BNX2X_FW_DMAE_C; rdata->vxlan_dst_port = cpu_to_le16(start_params->vxlan_dst_port); rdata->geneve_dst_port = cpu_to_le16(start_params->geneve_dst_port); -- 2.17.1