From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yw1-f226.google.com (mail-yw1-f226.google.com [209.85.128.226]) (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 30AA21429D for ; Sat, 18 Apr 2026 02:34:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.226 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776479697; cv=none; b=WlLW2S5Cc45B6JVekO25Aqfq3T2Kv0g0/a6HfM8MF2fqvYELuU22gZEFwE+NDpA1X8YF5J6adx2Id8i1ixYTRcCt9lCwfYNdlS89TSLkQZAObGksX2MKgIfJw1c4DLRUCZgKRLgLaIreVBftBR3gq6pDnI3w7ZdvQAWehte4rso= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776479697; c=relaxed/simple; bh=3tkkBV15w4hNQvuBZUeTgHSyQ++M9S1KubEArpwQCfQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uM+wfwfd5E+1DVQNUFcaH431YVfqEkztlUSJbZde+p1SMfEJ0ErFPYZv9KQol8ln/FIQk0hz3DpzPIpRfmn0aSWNeTmawY4FHAaA82kslG1+kQJb1kLfGOpkn058fceSRrcKMvGYl/4FETm9ddLjbfhrn9EeA+JSNSbW0jhoTi0= 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=IMs5RT8B; arc=none smtp.client-ip=209.85.128.226 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="IMs5RT8B" Received: by mail-yw1-f226.google.com with SMTP id 00721157ae682-79495b1aaa7so12357247b3.1 for ; Fri, 17 Apr 2026 19:34:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776479695; x=1777084495; 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=XX/jjgB0yDPp7+iQrPKvMXw4kJjyI/95lE2PEUSPwQc=; b=dbAM4LlsVZsRbsem1KhqcnNuRMawEz2hcfuu7w1/PE6W+LmLn06spJbP0Jn8MELjpv tijCWCRDPdDQdTRoyXiI8DHswlaZa0T0a9Mk+7qUzIZ+CSBzLwEuRCB5m9b0Yq3lUI1i YH4xDU2QlQptePrBOviTvehyM46vtpA4hJLZ21sfhvu9YgWjHHFqUaKT/+WoXmIxv5e6 MEiQ7aKUM/FzWTqgMtBzJpUZWYWTu4sucpQ0EQFQDBg5yOFsTElOxFzK1QaZAxfDkBR9 fkPwPV5cjioalCp6HGSi0IxIkLzm8pCQ5aRZ2HWjkBAxjNFH0AsQUYrtAqXh3UXTWFmk 4pPw== X-Forwarded-Encrypted: i=1; AFNElJ8Bd2CL9KLg2gW+0oEP9qkHf+/OJ3W1UF5sshACa9eQofKKxEdeI9ALMB3F6d/ROEtQ2tJHVPytRhY7Ly4=@vger.kernel.org X-Gm-Message-State: AOJu0Ywwh5qg5jJIFJdznsRAjP7YxVjgcIsLU2JlvMKK0fIOgXlLOKQ7 iV19dec5Gvq54YZphmZhNX0lqNgRI7bpFFDL5SAGMvLcSnlfZyNV4Pb9h7lvZPC6fP0QwxRcjd/ YlnhW9TD6rb8yzXmZY4W9u5IVcAqRpLWgtzZQ/xWZyM96NTVJP7uH8rkXLYiaQDf39p/imRL7ed tyVdD0Frgq4BVbF+AKlnrpxOI1pPHoiaNm9pXphbG7W9I0EinkCYg4Osg5RqRzpbWs67XfaDmx4 9T0DfS7kG/Z83o7rA== X-Gm-Gg: AeBDietlUfB4T4OIAwF0F13KkLpdWJLpo6K5ia7g4WrwWa2zspnmVnXMgevcqlgO0AR v12MHmh3eZbvRmoEim+pHOv1lrtQMSC/ZTRJ+c++1IXRNqHCqQtoBTQge2ybAUQIUjR3homfwSb OU75Y6gqfk/rYOCNfKiW/9ZYXjehRLmsGrSmdWeDimB/61cU/rY/DJyYpE1jjWKib5hLZ4lMPI0 rOD7JVxlpMEhLP3p5XOJFG/fI3Pc9d5eaFS8BkB7tLAw0ef++/rsahUYLoylMOH3NVv4/rR8Xyl EQg7URkcVSeYpwOROEmk8uPLMoGFrdHlXLXIDj4ZWJU3uXcdhxXH3fdoHeEITQfLlx/Wdb0Sz5B fxMyAkoAXV2diKIonfYB/lpNUZaH7zZ5iqd1guEQOsP9pLpkpTdpC+LE3z8bO1V2PzxiuJkC/kU JnDAnUmMH3j/0pnM8HuRj72Hzs11BOpg8iUmW+X5zYfBTTvGCi90wqB/2zwtbN2IjOqw== X-Received: by 2002:a05:690c:4432:b0:79a:5508:5831 with SMTP id 00721157ae682-7b9eced99b2mr45617437b3.20.1776479694961; Fri, 17 Apr 2026 19:34:54 -0700 (PDT) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-24.dlp.protect.broadcom.com. [144.49.247.24]) by smtp-relay.gmail.com with ESMTPS id 00721157ae682-7b9ee9c2b91sm2375727b3.28.2026.04.17.19.34.54 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 17 Apr 2026 19:34:54 -0700 (PDT) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2b2e8bba2e6so18698545ad.1 for ; Fri, 17 Apr 2026 19:34:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1776479694; x=1777084494; 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=XX/jjgB0yDPp7+iQrPKvMXw4kJjyI/95lE2PEUSPwQc=; b=IMs5RT8BIIciKKP+47D5FZllGB1FRqtNtKP55kcfsiYxBvo22SpWOojTIomRlXoL5t IMQEd4+LrVxAxECr9H5pR2rN6A0K7mRmPYEZoHr0So5ohSiYKjxiwZSkUST2XeAQ+qX2 RaKJmVbi7o7aq6xtt7qAaKmSslgmc9I5nnxXA= X-Forwarded-Encrypted: i=1; AFNElJ9tehjDeJZ/yX9j54JOu/hBK8fCdQ3QIpIslBM8oyJ5IhWu8KZLTV/YAH7Fi8liKC4Pg4VNZyFWJCddaJc=@vger.kernel.org X-Received: by 2002:a17:903:32c8:b0:2b2:42da:25cb with SMTP id d9443c01a7336-2b5f9f4df97mr59588715ad.19.1776479693723; Fri, 17 Apr 2026 19:34:53 -0700 (PDT) X-Received: by 2002:a17:903:32c8:b0:2b2:42da:25cb with SMTP id d9443c01a7336-2b5f9f4df97mr59588425ad.19.1776479693309; Fri, 17 Apr 2026 19:34:53 -0700 (PDT) Received: from localhost.localdomain ([192.19.203.250]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b5faa176e9sm33427715ad.20.2026.04.17.19.34.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Apr 2026 19:34:52 -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 v3 1/2] bnge: fix initial HWRM sequence Date: Sat, 18 Apr 2026 08:04:37 +0530 Message-ID: <20260418023438.1597876-2-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20260418023438.1597876-1-vikas.gupta@broadcom.com> References: <20260418023438.1597876-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 | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bnge/bnge_core.c b/drivers/net/ethernet/broadcom/bnge/bnge_core.c index 1c14c5fe8d61..68b74eb2c3a2 100644 --- a/drivers/net/ethernet/broadcom/bnge/bnge_core.c +++ b/drivers/net/ethernet/broadcom/bnge/bnge_core.c @@ -74,6 +74,13 @@ static int bnge_func_qcaps(struct bnge_dev *bd) return rc; } + return 0; +} + +static int bnge_func_qrcaps_qcfg(struct bnge_dev *bd) +{ + int rc; + rc = bnge_hwrm_func_resc_qcaps(bd); if (rc) { dev_err(bd->dev, "query resc caps failure rc: %d\n", rc); @@ -133,23 +140,28 @@ 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 querying caps rc: %d\n", rc); 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_func_unrgtr; + goto err_free_ctx_mem; } - /* Get the resources and configuration from firmware */ - rc = bnge_func_qcaps(bd); + rc = bnge_hwrm_func_drv_rgtr(bd); if (rc) { - dev_err(bd->dev, "Failed initial configuration rc: %d\n", rc); - rc = -ENODEV; + dev_err(bd->dev, "Failed to rgtr with firmware rc: %d\n", rc); + goto err_free_ctx_mem; + } + + rc = bnge_func_qrcaps_qcfg(bd); + if (rc) { + dev_err(bd->dev, "Failed querying resources rc: %d\n", rc); goto err_func_unrgtr; } @@ -158,7 +170,9 @@ static int bnge_fw_register_dev(struct bnge_dev *bd) return 0; err_func_unrgtr: - bnge_fw_unregister_dev(bd); + bnge_hwrm_func_drv_unrgtr(bd); +err_free_ctx_mem: + bnge_free_ctx_mem(bd); return rc; } -- 2.47.1