From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qk1-f171.google.com (mail-qk1-f171.google.com [209.85.222.171]) (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 196DD346E7D for ; Wed, 20 May 2026 20:03:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.171 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779307425; cv=none; b=pE/sM02Pyi6tzqLnO7kNtkXz9DgA1UuJ0X0okbeLP2e8yCY91fbL3l2jS/5tWQfqQF5INl+dTPbuEfwqKQ03/vnBdoKoCovo4pfiUlA4VteqlmIkr+xymFMivV9hirykN34L+osNumAp8Sjk8w3HWpp7M1OJuCzpV+zZ8Xfnk4o= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779307425; c=relaxed/simple; bh=Xvv5fQ5F5xIWtEaWElIAcf+23Bvf0pXPnm8EdudGugA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=dswh8/UwH2ucfHFjCgNvcx9WMpqiFp9WgjzJqLQr4LSTKB0OMuU2fhdjeMYImk3s7BjSBy9iG3he+MFsb1oWmVerCSlv+s+bWNyR/n56Zq5KD33lRNAuIqP+NXHqyb8AJJialVUbSZxDWJDoV10jCQ7P0IrAawJLhp8TidYbASs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Tu9jzpTC; arc=none smtp.client-ip=209.85.222.171 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Tu9jzpTC" Received: by mail-qk1-f171.google.com with SMTP id af79cd13be357-90f850473f9so555578285a.3 for ; Wed, 20 May 2026 13:03:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779307423; x=1779912223; 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=8pPtDRaFJhpJpi9KrC1PwJKKtOYZtFzoBHFHqlj56RU=; b=Tu9jzpTCpVUUoJ2IHa+AOCrOEK2khueqdyh8456OVxgl9CnlLHpAVWtg7SQmuv8yAY brFTb5lHB/7KRCQ9hZVHlCNnhHnIa18EqghllofejEoi9MKiOkjQ6X/S8rJ6YRTbhW4l Mm2eOUqgMrXDrrL2r/quvFaux6JCmxxHUUob97km6GDbNT+d12cLCRNXZy3FZDRjB6aM xzBOzH4jp4gGRKDOnMm+zGDEbzfNGrrKO23i0nWPePaAt0eYHaRVlQcQHKdHjN36o2nh s9LFDdpAFssZ8X9wPwBpIUlgzq/DT6jfIJglWLm7xgAXwAdQRTy7wHxmq1eeZtFfnxi0 9NdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779307423; x=1779912223; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=8pPtDRaFJhpJpi9KrC1PwJKKtOYZtFzoBHFHqlj56RU=; b=n3Zga4Y98132jL7R/+SwyEMleSEDXSvORgX28kdpFySCKeQ/6rfw3h9pZ3EpSbC6RT xFDWOZBA95uKqwgyPYiu0OcNlket3cDdEd/Rr3Rl4ny9Yw6JtmLFL6lyE039SbdasUf4 bk1Htl3gpvZbJbHqY14hPyUGdc+7IQXvaBhZRQVV2q83Skcv3h7xc+HUzGyMZlNpduDo HfZODbm0JAS3oZALwcLYvpOh2ZQbidL5S0TlGX1BenclghiRb9IMIw/2kffZkRhtN4pg /wHjdiF93DzmiVHf6rMkQVclS1eN2SvGtfR37whI0OjdQN8by0uCIcA4vwPL0ZvwbrsB 66TQ== X-Forwarded-Encrypted: i=1; AFNElJ8/4lT5oTYK0oFn8DcW3u8SGWB4zlU9EOS5Q38VuxoTSpw4hEsqIwJhtu20nVG/JolAppGlJdFHu0HjNGk=@vger.kernel.org X-Gm-Message-State: AOJu0YxPcCEELIt1Q6XaxE5O0zA2DOY5SU71eSYJI1HU0CvlrRjDGkGp qxLtKlb4tAlSg0aSY4rPpR543XXda+u6+/6vBqtNtsFbRmlx19SVCnp6 X-Gm-Gg: Acq92OFyJVUizj7N95bq1wzqmS/bClhRb3ct9qANBNvNzFAEpJDyTBkOUYlXoNYAVrm raLlBhTqmKxpuiYH9Ow1CVLmcqKTFNM5N50T/FD+XPUdjgW0kX4Vjqg4Q6pclI0I+LBSmcaqL79 PZkvboDK6xJjHo0gDI2hBHtY5bnEhlxpK0SKmX5AfX+2MYApxjqOSXhmidzbq4FGK/VZRe7zFk5 QjaYzSDWYDxs8vkGpZnD9o5g+x76RZaiwq3gh4+WNRQ5914+PW4m+qkoMHrzWaQuuGKTg4pDE9x hQdpJ0R06Mu28Bw2OYpHqn1rgIxcTy52IYn60l1WQAenUXVgQ7s36ipNSQsvYv4npBvfJ27qBO/ D+KGBGsAaw6aEPCNX+ro1m1E47YtxqFBzJyqSpTs3ACzGplVrXPSvBdptS/0/9yXXCAGvf5rYlk iLnst+OQblOlHCkRk6QvawAXkfBotTYsmTec1H/+Vmj/EsFDMPDFZ9epZq X-Received: by 2002:a05:622a:d1:b0:509:1b76:e9b2 with SMTP id d75a77b69052e-5165a276812mr354941421cf.55.1779307423016; Wed, 20 May 2026 13:03:43 -0700 (PDT) Received: from PF5YBGDS.localdomain ([163.114.130.1]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-516514e0b91sm188849301cf.15.2026.05.20.13.03.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 13:03:42 -0700 (PDT) From: mike.marciniszyn@gmail.com To: Lee Jones , Pavel Machek , Alexander Duyck , Jakub Kicinski , kernel-team@meta.com, Andrew Lunn , "David S. Miller" , Eric Dumazet , Paolo Abeni , Russell King , Daniel Golle , Kees Cook , Simon Horman , Dimitri Daskalakis , Jacob Keller , Lee Trager , Mohsin Bashir , Alok Tiwari , Chengfeng Ye , Andy Shevchenko , Andrew Lunn Cc: mike.marciniszyn@gmail.com, linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org, netdev@vger.kernel.org Subject: [PATCH net-next 2/3] net: eth: fbnic: Store max_speed from firmware dialog Date: Wed, 20 May 2026 16:03:36 -0400 Message-ID: <20260520200337.204431-3-mike.marciniszyn@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520200337.204431-1-mike.marciniszyn@gmail.com> References: <20260520200337.204431-1-mike.marciniszyn@gmail.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 From: "Mike Marciniszyn (Meta)" The OCP spec required LED signalling to signal the difference between both below and at max speed capability. The firmware init dialog already contains that attribute so store it to support follow-on patches. Signed-off-by: Mike Marciniszyn (Meta) --- drivers/net/ethernet/meta/fbnic/fbnic_fw.c | 3 +++ drivers/net/ethernet/meta/fbnic/fbnic_fw.h | 3 +++ 2 files changed, 6 insertions(+) diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_fw.c b/drivers/net/ethernet/meta/fbnic/fbnic_fw.c index 0c6812fcf185..59015769ca28 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_fw.c +++ b/drivers/net/ethernet/meta/fbnic/fbnic_fw.c @@ -561,6 +561,7 @@ static const struct fbnic_tlv_index fbnic_fw_cap_resp_index[] = { FBNIC_TLV_ATTR_U32(FBNIC_FW_CAP_RESP_ACTIVE_FW_SLOT), FBNIC_TLV_ATTR_STRING(FBNIC_FW_CAP_RESP_VERSION_COMMIT_STR, FBNIC_FW_CAP_RESP_COMMIT_MAX_SIZE), + FBNIC_TLV_ATTR_U32(FBNIC_FW_CAP_RESP_FW_MAX_LINK_SPEED), FBNIC_TLV_ATTR_U32(FBNIC_FW_CAP_RESP_BMC_ALL_MULTI), FBNIC_TLV_ATTR_U32(FBNIC_FW_CAP_RESP_FW_LINK_SPEED), FBNIC_TLV_ATTR_U32(FBNIC_FW_CAP_RESP_FW_LINK_FEC), @@ -667,6 +668,8 @@ static int fbnic_fw_parse_cap_resp(void *opaque, struct fbnic_tlv_msg **results) fbd->fw_cap.active_slot = fta_get_uint(results, FBNIC_FW_CAP_RESP_ACTIVE_FW_SLOT); + fbd->fw_cap.max_link_speed = + fta_get_uint(results, FBNIC_FW_CAP_RESP_FW_MAX_LINK_SPEED); fbd->fw_cap.link_speed = fta_get_uint(results, FBNIC_FW_CAP_RESP_FW_LINK_SPEED); fbd->fw_cap.link_fec = diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_fw.h b/drivers/net/ethernet/meta/fbnic/fbnic_fw.h index d84723e4cfa3..55c2ebc223d0 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_fw.h +++ b/drivers/net/ethernet/meta/fbnic/fbnic_fw.h @@ -58,6 +58,7 @@ struct fbnic_fw_cap { u8 need_bmc_macda_sync : 1; u8 all_multi : 1; u8 link_speed; + u8 max_link_speed; u8 link_fec; u32 anti_rollback_version; }; @@ -241,6 +242,8 @@ enum { FBNIC_FW_CAP_RESP_STORED_CMRT_COMMIT_STR = 0x10, FBNIC_FW_CAP_RESP_UEFI_VERSION = 0x11, FBNIC_FW_CAP_RESP_UEFI_COMMIT_STR = 0x12, + FBNIC_FW_CAP_RESP_FW_MAX_LINK_SPEED = 0x13, + /* 0x14 reserved */ FBNIC_FW_CAP_RESP_ANTI_ROLLBACK_VERSION = 0x15, FBNIC_FW_CAP_RESP_MSG_MAX }; -- 2.43.0