From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Cc: linux-pci@vger.kernel.org,
Jesse Brandeburg <jesse.brandeburg@intel.com>,
linux-kernel@vger.kernel.org, Eric Dumazet <edumazet@google.com>,
netdev@vger.kernel.org, Tony Nguyen <anthony.l.nguyen@intel.com>,
Jakub Kicinski <kuba@kernel.org>,
Bjorn Helgaas <helgaas@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
"David S. Miller" <davem@davemloft.net>,
intel-wired-lan@lists.osuosl.org
Subject: Re: [Intel-wired-lan] [PATCH v2 10/10] e1000e: Use pcie_capability_read_word() for reading LNKSTA
Date: Wed, 13 Sep 2023 14:22:14 +0100 [thread overview]
Message-ID: <20230913142214.000019ca@Huawei.com> (raw)
In-Reply-To: <20230913122748.29530-11-ilpo.jarvinen@linux.intel.com>
On Wed, 13 Sep 2023 15:27:48 +0300
Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> wrote:
> Use pcie_capability_read_word() for reading LNKSTA and remove the
> custom define that matches to PCI_EXP_LNKSTA.
>
> As only single user for cap_offset remains, remove it too and use
> adapter->pdev->pcie_cap directly in the if condition.
>
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
> ---
> drivers/net/ethernet/intel/e1000e/defines.h | 1 -
> drivers/net/ethernet/intel/e1000e/mac.c | 10 ++++------
> 2 files changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/e1000e/defines.h b/drivers/net/ethernet/intel/e1000e/defines.h
> index a4d29c9e03a6..23a58cada43a 100644
> --- a/drivers/net/ethernet/intel/e1000e/defines.h
> +++ b/drivers/net/ethernet/intel/e1000e/defines.h
> @@ -678,7 +678,6 @@
>
> /* PCI/PCI-X/PCI-EX Config space */
> #define PCI_HEADER_TYPE_REGISTER 0x0E
> -#define PCIE_LINK_STATUS 0x12
>
> #define PCI_HEADER_TYPE_MULTIFUNC 0x80
>
> diff --git a/drivers/net/ethernet/intel/e1000e/mac.c b/drivers/net/ethernet/intel/e1000e/mac.c
> index 5340cf73778d..e86652a30069 100644
> --- a/drivers/net/ethernet/intel/e1000e/mac.c
> +++ b/drivers/net/ethernet/intel/e1000e/mac.c
> @@ -18,15 +18,13 @@ s32 e1000e_get_bus_info_pcie(struct e1000_hw *hw)
> struct e1000_mac_info *mac = &hw->mac;
> struct e1000_bus_info *bus = &hw->bus;
> struct e1000_adapter *adapter = hw->adapter;
> - u16 pcie_link_status, cap_offset;
> + u16 pcie_link_status;
>
> - cap_offset = adapter->pdev->pcie_cap;
> - if (!cap_offset) {
> + if (!adapter->pdev->pcie_cap) {
Could use pci_pcie_cap() though it'll end up longer, so not sure if it is
a good idea.
Given number of accesses to adapter->pdev, perhaps a local variable pdev, would help.
> bus->width = e1000_bus_width_unknown;
> } else {
> - pci_read_config_word(adapter->pdev,
> - cap_offset + PCIE_LINK_STATUS,
> - &pcie_link_status);
> + pcie_capability_read_word(adapter->pdev, PCI_EXP_LNKSTA,
> + &pcie_link_status);
> bus->width = (enum e1000_bus_width)FIELD_GET(PCI_EXP_LNKSTA_NLW,
> pcie_link_status);
> }
_______________________________________________
Intel-wired-lan mailing list
Intel-wired-lan@osuosl.org
https://lists.osuosl.org/mailman/listinfo/intel-wired-lan
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Cc: <linux-pci@vger.kernel.org>, Bjorn Helgaas <helgaas@kernel.org>,
"Jesse Brandeburg" <jesse.brandeburg@intel.com>,
Tony Nguyen <anthony.l.nguyen@intel.com>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>,
<intel-wired-lan@lists.osuosl.org>, <netdev@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 10/10] e1000e: Use pcie_capability_read_word() for reading LNKSTA
Date: Wed, 13 Sep 2023 14:22:14 +0100 [thread overview]
Message-ID: <20230913142214.000019ca@Huawei.com> (raw)
In-Reply-To: <20230913122748.29530-11-ilpo.jarvinen@linux.intel.com>
On Wed, 13 Sep 2023 15:27:48 +0300
Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> wrote:
> Use pcie_capability_read_word() for reading LNKSTA and remove the
> custom define that matches to PCI_EXP_LNKSTA.
>
> As only single user for cap_offset remains, remove it too and use
> adapter->pdev->pcie_cap directly in the if condition.
>
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
> ---
> drivers/net/ethernet/intel/e1000e/defines.h | 1 -
> drivers/net/ethernet/intel/e1000e/mac.c | 10 ++++------
> 2 files changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/e1000e/defines.h b/drivers/net/ethernet/intel/e1000e/defines.h
> index a4d29c9e03a6..23a58cada43a 100644
> --- a/drivers/net/ethernet/intel/e1000e/defines.h
> +++ b/drivers/net/ethernet/intel/e1000e/defines.h
> @@ -678,7 +678,6 @@
>
> /* PCI/PCI-X/PCI-EX Config space */
> #define PCI_HEADER_TYPE_REGISTER 0x0E
> -#define PCIE_LINK_STATUS 0x12
>
> #define PCI_HEADER_TYPE_MULTIFUNC 0x80
>
> diff --git a/drivers/net/ethernet/intel/e1000e/mac.c b/drivers/net/ethernet/intel/e1000e/mac.c
> index 5340cf73778d..e86652a30069 100644
> --- a/drivers/net/ethernet/intel/e1000e/mac.c
> +++ b/drivers/net/ethernet/intel/e1000e/mac.c
> @@ -18,15 +18,13 @@ s32 e1000e_get_bus_info_pcie(struct e1000_hw *hw)
> struct e1000_mac_info *mac = &hw->mac;
> struct e1000_bus_info *bus = &hw->bus;
> struct e1000_adapter *adapter = hw->adapter;
> - u16 pcie_link_status, cap_offset;
> + u16 pcie_link_status;
>
> - cap_offset = adapter->pdev->pcie_cap;
> - if (!cap_offset) {
> + if (!adapter->pdev->pcie_cap) {
Could use pci_pcie_cap() though it'll end up longer, so not sure if it is
a good idea.
Given number of accesses to adapter->pdev, perhaps a local variable pdev, would help.
> bus->width = e1000_bus_width_unknown;
> } else {
> - pci_read_config_word(adapter->pdev,
> - cap_offset + PCIE_LINK_STATUS,
> - &pcie_link_status);
> + pcie_capability_read_word(adapter->pdev, PCI_EXP_LNKSTA,
> + &pcie_link_status);
> bus->width = (enum e1000_bus_width)FIELD_GET(PCI_EXP_LNKSTA_NLW,
> pcie_link_status);
> }
next prev parent reply other threads:[~2023-09-13 15:10 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-13 12:27 [PATCH v2 00/10] PCI/treewide: PCIe capability access cleanups Ilpo Järvinen
2023-09-13 12:27 ` [PATCH v2 01/10] IB/hfi1: Use FIELD_GET() to extract Link Width Ilpo Järvinen
2023-09-13 13:14 ` Jonathan Cameron
2023-09-13 12:27 ` [PATCH v2 02/10] media: cobalt: " Ilpo Järvinen
2023-09-13 12:27 ` [Intel-wired-lan] [PATCH v2 03/10] igb: " Ilpo Järvinen
2023-09-13 12:27 ` Ilpo Järvinen
2023-09-13 12:27 ` [PATCH v2 04/10] PCI: tegra194: Use FIELD_GET()/FIELD_PREP() with Link Width fields Ilpo Järvinen
2023-09-13 12:27 ` [PATCH v2 05/10] PCI: mvebu: Use FIELD_PREP() with Link Width Ilpo Järvinen
2023-09-13 12:27 ` Ilpo Järvinen
2023-09-13 12:27 ` [PATCH v2 06/10] PCI: Use FIELD_GET() to extract " Ilpo Järvinen
2023-09-13 12:27 ` [PATCH v2 07/10] scsi: esas2r: Use FIELD_GET() to extract PCIe capability fields Ilpo Järvinen
2023-09-13 13:15 ` Jonathan Cameron
2023-09-14 1:02 ` Martin K. Petersen
2023-09-13 12:27 ` [PATCH v2 08/10] scsi: qla2xxx: " Ilpo Järvinen
2023-09-13 13:16 ` Jonathan Cameron
2023-09-14 1:02 ` Martin K. Petersen
2023-09-13 12:27 ` [Intel-wired-lan] [PATCH v2 09/10] e1000e: Use PCI_EXP_LNKSTA_NLW & FIELD_GET() instead of custom defines/code Ilpo Järvinen
2023-09-13 12:27 ` Ilpo Järvinen
2023-09-13 13:17 ` [Intel-wired-lan] " Jonathan Cameron
2023-09-13 13:17 ` Jonathan Cameron
2023-09-13 12:27 ` [Intel-wired-lan] [PATCH v2 10/10] e1000e: Use pcie_capability_read_word() for reading LNKSTA Ilpo Järvinen
2023-09-13 12:27 ` Ilpo Järvinen
2023-09-13 13:22 ` Jonathan Cameron [this message]
2023-09-13 13:22 ` Jonathan Cameron
2023-09-22 1:05 ` (subset) [PATCH v2 00/10] PCI/treewide: PCIe capability access cleanups Martin K. Petersen
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=20230913142214.000019ca@Huawei.com \
--to=jonathan.cameron@huawei.com \
--cc=anthony.l.nguyen@intel.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=helgaas@kernel.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=jesse.brandeburg@intel.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/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.