From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yx1-f98.google.com (mail-yx1-f98.google.com [74.125.224.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C2F91314B8F for ; Wed, 15 Apr 2026 15:16:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.224.98 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776266200; cv=none; b=p8KsGrGfNBxusk6j7+VG7km/FsAiSBg52yDZW03ApAAMxghDVWU0EEj9dzqaakiarXXQQoIqPaafrlBrsf2SBpqPe6ymMr1ExKvP+k+r2qPgV8qgKAPWG0SfyCZQri9o5Abzs8zti8md36/TOEb1y5hrhK8ufNUYaap7RiZ137Q= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776266200; c=relaxed/simple; bh=iJbHwGGTXYAXkn2h2ic7IXpD3QSIM1EdEh7LVvB1n7o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RhzFnoOhr1U6VOmVFxFxmvpwZsu5jqLYoA3jIv8nKLIWQDnP4/V+WRc8H2zkVItq0vcaV/Hru0XHoqe0quv0Pvi2bbmpvWrVG/6/b5SUI4Vnq4Lm60reEUxKdiaqvYYPUFovWfpGUD3e6KE/pMK/p1AITrOIg2+yXvY5ixoo6HM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=cUuLT/zH; arc=none smtp.client-ip=74.125.224.98 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="cUuLT/zH" Received: by mail-yx1-f98.google.com with SMTP id 956f58d0204a3-651bf4a4140so4278589d50.0 for ; Wed, 15 Apr 2026 08:16:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776266198; x=1776870998; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=AaoR7RdngMX6lWEV93aUXZBtx2WAn7CMT9IqNm+5uvc=; b=rYsA9QqDQWCTCWEQ3A/bnkJDy9TY068h4GJBTJdIM0FdiRnyc3e1pWLTLzpypENU2y H7w3w6vZR1w/3RHLx+HHYFWDlC6RDRiH7Y9mbuMja1FvZLsfqK9uKpkeH1pZ8QuucMeK ss3Nl6IzpwhiVWVDwbrTQscg9R3lDLoe11S0Svjxw8Al2zwDcbjN5YYGZcYeAuEU8d99 I4z6oQwq4gzUut4NErBTW2efTnlxMMbmOQepG049gshhIa8XYwDP00nxQXSVkUQCZqpe AAIzVEx8USEESHKdbR9svIMt4a8AyXqvL3kBpNB2m+kxG3UL23JRBQQJu4LBACl40zT7 7btg== X-Forwarded-Encrypted: i=1; AFNElJ+mpePRM+/kCFr9pML1JZu/zYtHyqY/wTYw3WtPJOcOC+0fQt6A6rxgO/M8umjD94s5KL/8D640t226NKY=@vger.kernel.org X-Gm-Message-State: AOJu0YzvIDS9LdUXEz0fl600CjuFYBiCn+RFk16hLZBKBAllb2q6q+4d rfPMCK70AyZq4jxSVKmlco0N/SA9z6VxxVA7vQY/cpkXqXV2kcpBV9Ur1pa04eyN8itTPMlpSQl +/sjqZMKv61nTmFdhagT6ZAtHJRRrnXFArcTD0+EUCQ9zhoOwgaGFOlpzGTUB9p03mOdTZHHu5S DtFmcj7qtlhKh6ySqm0pSD6g+LPQc1ABb0LMTqXxilZAFO6d2NZKETmVjvJ6P1pU1ANjY3E+mEU ON1Xf2T58MFYU3u7g== X-Gm-Gg: AeBDieuPhS5w153v0nh25L6FcXxayOqmobWccmeqivExLnFsEiixbBegnHBrdEVw06c Kvlxo7q42uNlyeKUb+4HwBmQLoxONTCW3La+HilQE+3YnslDzLC/NYSY0G/mfofu2sU0XMwUw7d 3o4yv3AAT5LJRIoWpNN4Zb8VWVC+2THMI3xKFhO944C9675Xc5aykWYYOs+mycDo5ikBnPL/yrg jShf0tJVMyr6N7buT6cY6G7Pf/n+0CoDxI+StWPpZhUYnjselfW2dcGuPESD53v3/GphwWH+JBZ +5TLMc3R5toJTLDTsMXGCEi6cHEP6/FNwfr7oPJvwoEaeXYrFqRxhvqCiHYG3h4xKI+X/yahD6H Qi8BA5LLeCwrQIZQ+Qo3/zowVO9gIary/p654SyLVoNLYJrbGMqyewG8vUyxEsUc4WTGyRWhPL1 XqXDHWLUpMJ3T8gLxcGSORXrusJDeTpjpLcekbwKzh5L5erZ7k8p5TdPM= X-Received: by 2002:a05:690e:13c4:b0:651:b896:8a66 with SMTP id 956f58d0204a3-651b896b63amr17194742d50.68.1776266197586; Wed, 15 Apr 2026 08:16:37 -0700 (PDT) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-15.dlp.protect.broadcom.com. [144.49.247.15]) by smtp-relay.gmail.com with ESMTPS id 956f58d0204a3-652e47d3fc3sm130896d50.28.2026.04.15.08.16.37 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 15 Apr 2026 08:16:37 -0700 (PDT) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-pf1-f198.google.com with SMTP id d2e1a72fcca58-82f0f2b2641so3697569b3a.3 for ; Wed, 15 Apr 2026 08:16:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1776266196; x=1776870996; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AaoR7RdngMX6lWEV93aUXZBtx2WAn7CMT9IqNm+5uvc=; b=cUuLT/zHCJIg7OCusHUGaDfEHRXyrBYfY+4FZ+byOF0FIvVd1THH2KMEptYtplPYeU ojex7a00K7icsekHRyeOHBBjevwCKvSuHfIWEBpInD/a2mueYLAvJ4Q1qCG9AkBu9bWX FlXmcuQ6CMDMh7cJ6g3VfYnb12+R7AP7BTnng= X-Forwarded-Encrypted: i=1; AFNElJ8ggAz8jTdGzbxX8gFasxH2bx1cMsRG4Rf7SwqbXILOcJmjfHZqGGJVfwZE6CE8rlKy89tjsgKPdtyiJVE=@vger.kernel.org X-Received: by 2002:a05:6a00:94f5:b0:82f:44dc:f85c with SMTP id d2e1a72fcca58-82f44dcfb5dmr11585727b3a.34.1776266196264; Wed, 15 Apr 2026 08:16:36 -0700 (PDT) X-Received: by 2002:a05:6a00:94f5:b0:82f:44dc:f85c with SMTP id d2e1a72fcca58-82f44dcfb5dmr11585682b3a.34.1776266195618; Wed, 15 Apr 2026 08:16:35 -0700 (PDT) Received: from localhost.localdomain ([192.19.203.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f673e0f15sm2996555b3a.35.2026.04.15.08.16.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 08:16:35 -0700 (PDT) From: Vikas Gupta To: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, andrew+netdev@lunn.ch, horms@kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, vsrama-krishna.nemani@broadcom.com, bhargava.marreddy@broadcom.com, rajashekar.hudumula@broadcom.com, ajit.khaparde@broadcom.com, dharmender.garg@broadcom.com, rahul-rg.gupta@broadcom.com, Vikas Gupta Subject: [PATCH net v2 1/2] bnge: fix initial HWRM sequence Date: Wed, 15 Apr 2026 20:46:20 +0530 Message-ID: <20260415151621.1104956-2-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20260415151621.1104956-1-vikas.gupta@broadcom.com> References: <20260415151621.1104956-1-vikas.gupta@broadcom.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e Firmware may not advertize correct resources if backing store is not enabled before resource information is queried. Fix the initial sequence of HWRMs so that driver gets capabilities and resource information correctly. Fixes: 3fa9e977a0cd ("bng_en: Initialize default configuration") Signed-off-by: Vikas Gupta Reviewed-by: Rahul Gupta --- .../net/ethernet/broadcom/bnge/bnge_core.c | 39 ++++++++++--------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bnge/bnge_core.c b/drivers/net/ethernet/broadcom/bnge/bnge_core.c index b4090283df0f..9f6a33b912a6 100644 --- a/drivers/net/ethernet/broadcom/bnge/bnge_core.c +++ b/drivers/net/ethernet/broadcom/bnge/bnge_core.c @@ -73,25 +73,35 @@ static int bnge_func_qcaps(struct bnge_dev *bd) return rc; } + rc = bnge_alloc_ctx_mem(bd); + if (rc) { + dev_err(bd->dev, "Failed to allocate ctx mem rc: %d\n", rc); + goto err_free_ctx_mem; + } + rc = bnge_hwrm_func_resc_qcaps(bd); if (rc) { dev_err(bd->dev, "query resc caps failure rc: %d\n", rc); - return rc; + goto err_free_ctx_mem; } rc = bnge_hwrm_func_qcfg(bd); if (rc) { dev_err(bd->dev, "query config failure rc: %d\n", rc); - return rc; + goto err_free_ctx_mem; } rc = bnge_hwrm_vnic_qcaps(bd); if (rc) { dev_err(bd->dev, "vnic caps failure rc: %d\n", rc); - return rc; + goto err_free_ctx_mem; } return 0; + +err_free_ctx_mem: + bnge_free_ctx_mem(bd); + return rc; } static void bnge_fw_unregister_dev(struct bnge_dev *bd) @@ -132,32 +142,25 @@ static int bnge_fw_register_dev(struct bnge_dev *bd) bnge_hwrm_fw_set_time(bd); - rc = bnge_hwrm_func_drv_rgtr(bd); + /* Get the resources and configuration from firmware */ + rc = bnge_func_qcaps(bd); if (rc) { - dev_err(bd->dev, "Failed to rgtr with firmware rc: %d\n", rc); + dev_err(bd->dev, "Failed initial configuration rc: %d\n", rc); return rc; } - rc = bnge_alloc_ctx_mem(bd); + rc = bnge_hwrm_func_drv_rgtr(bd); if (rc) { - dev_err(bd->dev, "Failed to allocate ctx mem rc: %d\n", rc); - goto err_func_unrgtr; - } - - /* Get the resources and configuration from firmware */ - rc = bnge_func_qcaps(bd); - if (rc) { - dev_err(bd->dev, "Failed initial configuration rc: %d\n", rc); - rc = -ENODEV; - goto err_func_unrgtr; + dev_err(bd->dev, "Failed to rgtr with firmware rc: %d\n", rc); + goto err_free_ctx_mem; } bnge_set_dflt_rss_hash_type(bd); return 0; -err_func_unrgtr: - bnge_fw_unregister_dev(bd); +err_free_ctx_mem: + bnge_free_ctx_mem(bd); return rc; } -- 2.47.1