From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Bjorn Helgaas <bhelgaas@google.com>,
linux-pci@vger.kernel.org,
Jonathan Cameron <Jonathan.Cameron@huawei.com>,
Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>,
Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,
linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Subject: [PATCH v3 1/8] RDMA/hfi1: Use FIELD_GET() to extract Link Width
Date: Tue, 19 Sep 2023 15:56:41 +0300 [thread overview]
Message-ID: <20230919125648.1920-2-ilpo.jarvinen@linux.intel.com> (raw)
In-Reply-To: <20230919125648.1920-1-ilpo.jarvinen@linux.intel.com>
Use FIELD_GET() to extract PCIe Negotiated Link Width field instead of
custom masking and shifting, and remove extract_width() which only
wraps that FIELD_GET().
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
---
drivers/infiniband/hw/hfi1/pcie.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/drivers/infiniband/hw/hfi1/pcie.c b/drivers/infiniband/hw/hfi1/pcie.c
index 08732e1ac966..c132a9c073bf 100644
--- a/drivers/infiniband/hw/hfi1/pcie.c
+++ b/drivers/infiniband/hw/hfi1/pcie.c
@@ -3,6 +3,7 @@
* Copyright(c) 2015 - 2019 Intel Corporation.
*/
+#include <linux/bitfield.h>
#include <linux/pci.h>
#include <linux/io.h>
#include <linux/delay.h>
@@ -210,12 +211,6 @@ static u32 extract_speed(u16 linkstat)
return speed;
}
-/* return the PCIe link speed from the given link status */
-static u32 extract_width(u16 linkstat)
-{
- return (linkstat & PCI_EXP_LNKSTA_NLW) >> PCI_EXP_LNKSTA_NLW_SHIFT;
-}
-
/* read the link status and set dd->{lbus_width,lbus_speed,lbus_info} */
static void update_lbus_info(struct hfi1_devdata *dd)
{
@@ -228,7 +223,7 @@ static void update_lbus_info(struct hfi1_devdata *dd)
return;
}
- dd->lbus_width = extract_width(linkstat);
+ dd->lbus_width = FIELD_GET(PCI_EXP_LNKSTA_NLW, linkstat);
dd->lbus_speed = extract_speed(linkstat);
snprintf(dd->lbus_info, sizeof(dd->lbus_info),
"PCIe,%uMHz,x%u", dd->lbus_speed, dd->lbus_width);
--
2.30.2
next prev parent reply other threads:[~2023-09-19 12:57 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-19 12:56 [PATCH v3 0/8] PCI/treewide: PCIe capability access cleanups Ilpo Järvinen
2023-09-19 12:56 ` Ilpo Järvinen [this message]
2023-09-19 13:11 ` [PATCH v3 1/8] RDMA/hfi1: Use FIELD_GET() to extract Link Width Dean Luick
2023-09-19 12:56 ` [PATCH v3 2/8] media: cobalt: " Ilpo Järvinen
2023-09-19 12:56 ` [PATCH v3 3/8] igb: " Ilpo Järvinen
2023-09-19 12:56 ` [Intel-wired-lan] " Ilpo Järvinen
2023-09-19 12:56 ` [PATCH v3 4/8] PCI: tegra194: Use FIELD_GET()/FIELD_PREP() with Link Width fields Ilpo Järvinen
2023-09-19 12:56 ` [PATCH v3 5/8] PCI: mvebu: Use FIELD_PREP() with Link Width Ilpo Järvinen
2023-09-19 12:56 ` Ilpo Järvinen
2023-09-19 12:56 ` [PATCH v3 6/8] PCI: Use FIELD_GET() to extract " Ilpo Järvinen
2023-09-19 12:56 ` [PATCH v3 7/8] e1000e: Use PCI_EXP_LNKSTA_NLW & FIELD_GET() instead of custom defines/code Ilpo Järvinen
2023-09-19 12:56 ` [Intel-wired-lan] " Ilpo Järvinen
2023-09-19 12:56 ` [PATCH v3 8/8] e1000e: Use pcie_capability_read_word() for reading LNKSTA Ilpo Järvinen
2023-09-19 12:56 ` [Intel-wired-lan] " Ilpo Järvinen
2023-09-19 13:27 ` Jonathan Cameron
2023-09-19 13:27 ` [Intel-wired-lan] " Jonathan Cameron
2023-09-20 7:31 ` (subset) [PATCH v3 0/8] PCI/treewide: PCIe capability access cleanups Leon Romanovsky
2023-09-20 7:32 ` Leon Romanovsky
2023-10-10 20:38 ` Bjorn Helgaas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230919125648.1920-2-ilpo.jarvinen@linux.intel.com \
--to=ilpo.jarvinen@linux.intel.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=bhelgaas@google.com \
--cc=dennis.dalessandro@cornelisnetworks.com \
--cc=jgg@ziepe.ca \
--cc=leon@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.