From: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
To: imunsie@au1.ibm.com, michael.neuling@au1.ibm.com,
manoj@linux.vnet.ibm.com, mrochs@linux.vnet.ibm.com,
linuxppc-dev@lists.ozlabs.org
Subject: [PATCH v6 19/20] cxlflash: Use new cxl_pci_read_adapter_vpd() API
Date: Fri, 4 Mar 2016 12:26:43 +0100 [thread overview]
Message-ID: <1457090804-9719-20-git-send-email-fbarrat@linux.vnet.ibm.com> (raw)
In-Reply-To: <1457090804-9719-1-git-send-email-fbarrat@linux.vnet.ibm.com>
To read the adapter VPD, drivers can't rely on pci config APIs, as it
wouldn't work on powerVM. cxl introduced a new kernel API especially
for this, so start using it.
Co-authored-by: Christophe Lombard <clombard@linux.vnet.ibm.com>
Signed-off-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
Signed-off-by: Christophe Lombard <clombard@linux.vnet.ibm.com>
---
drivers/scsi/cxlflash/common.h | 1 -
drivers/scsi/cxlflash/main.c | 18 ++----------------
2 files changed, 2 insertions(+), 17 deletions(-)
diff --git a/drivers/scsi/cxlflash/common.h b/drivers/scsi/cxlflash/common.h
index 5ada926..580f370 100644
--- a/drivers/scsi/cxlflash/common.h
+++ b/drivers/scsi/cxlflash/common.h
@@ -106,7 +106,6 @@ struct cxlflash_cfg {
atomic_t scan_host_needed;
struct cxl_afu *cxl_afu;
- struct pci_dev *parent_dev;
atomic_t recovery_threads;
struct mutex ctx_recovery_mutex;
diff --git a/drivers/scsi/cxlflash/main.c b/drivers/scsi/cxlflash/main.c
index f6d90ce..e04aae7 100644
--- a/drivers/scsi/cxlflash/main.c
+++ b/drivers/scsi/cxlflash/main.c
@@ -1407,7 +1407,7 @@ static int start_context(struct cxlflash_cfg *cfg)
*/
static int read_vpd(struct cxlflash_cfg *cfg, u64 wwpn[])
{
- struct pci_dev *dev = cfg->parent_dev;
+ struct pci_dev *dev = cfg->dev;
int rc = 0;
int ro_start, ro_size, i, j, k;
ssize_t vpd_size;
@@ -1416,7 +1416,7 @@ static int read_vpd(struct cxlflash_cfg *cfg, u64 wwpn[])
char *wwpn_vpd_tags[NUM_FC_PORTS] = { "V5", "V6" };
/* Get the VPD data from the device */
- vpd_size = pci_read_vpd(dev, 0, sizeof(vpd_data), vpd_data);
+ vpd_size = cxl_read_adapter_vpd(dev, vpd_data, sizeof(vpd_data));
if (unlikely(vpd_size <= 0)) {
dev_err(&dev->dev, "%s: Unable to read VPD (size = %ld)\n",
__func__, vpd_size);
@@ -2392,7 +2392,6 @@ static int cxlflash_probe(struct pci_dev *pdev,
{
struct Scsi_Host *host;
struct cxlflash_cfg *cfg = NULL;
- struct device *phys_dev;
struct dev_dependent_vals *ddv;
int rc = 0;
@@ -2458,19 +2457,6 @@ static int cxlflash_probe(struct pci_dev *pdev,
pci_set_drvdata(pdev, cfg);
- /*
- * Use the special service provided to look up the physical
- * PCI device, since we are called on the probe of the virtual
- * PCI host bus (vphb)
- */
- phys_dev = cxl_get_phys_dev(pdev);
- if (!dev_is_pci(phys_dev)) {
- dev_err(&pdev->dev, "%s: not a pci dev\n", __func__);
- rc = -ENODEV;
- goto out_remove;
- }
- cfg->parent_dev = to_pci_dev(phys_dev);
-
cfg->cxl_afu = cxl_pci_to_afu(pdev);
rc = init_pci(cfg);
--
1.9.1
next prev parent reply other threads:[~2016-03-04 11:27 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-04 11:26 [PATCH v6 00/20] cxl: Add support for powerVM guest Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 01/20] cxl: Move common code away from bare-metal-specific files Frederic Barrat
2016-03-10 2:03 ` [v6, " Michael Ellerman
2016-03-04 11:26 ` [PATCH v6 02/20] cxl: Move bare-metal specific code to specialized files Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 03/20] cxl: Define process problem state area at attach time only Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 04/20] cxl: Introduce implementation-specific API Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 05/20] cxl: Rename some bare-metal specific functions Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 06/20] cxl: Isolate a few bare-metal-specific calls Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 07/20] cxl: Update cxl_irq() prototype Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 08/20] cxl: IRQ allocation for guests Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 09/20] powerpc: New possible return value from hcall Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 10/20] cxl: New hcalls to support cxl adapters Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 11/20] cxl: Separate bare-metal fields in adapter and AFU data structures Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 12/20] cxl: Add guest-specific code Frederic Barrat
2016-03-09 5:55 ` [v6,12/20] " Michael Ellerman
2016-03-09 9:14 ` Frederic Barrat
2016-03-09 10:31 ` Michael Ellerman
2016-03-09 12:42 ` Michael Ellerman
2016-03-09 12:57 ` Michael Ellerman
2016-03-09 14:20 ` Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 13/20] cxl: sysfs support for guests Frederic Barrat
2016-03-07 5:21 ` Ian Munsie
2016-03-04 11:26 ` [PATCH v6 14/20] cxl: Support to flash a new image on the adapter from a guest Frederic Barrat
2016-03-07 5:23 ` Ian Munsie
2016-03-04 11:26 ` [PATCH v6 15/20] cxl: Parse device tree and create cxl device(s) at boot Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 16/20] cxl: Support the cxl kernel API from a guest Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 17/20] cxl: Adapter failure handling Frederic Barrat
2016-03-04 11:26 ` [PATCH v6 18/20] cxl: Add tracepoints around the cxl hcall Frederic Barrat
2016-03-04 11:26 ` Frederic Barrat [this message]
2016-03-04 14:41 ` [PATCH v6 19/20] cxlflash: Use new cxl_pci_read_adapter_vpd() API Uma Krishnan
2016-03-04 16:32 ` Matthew R. Ochs
2016-03-04 17:41 ` Manoj Kumar
2016-03-04 11:26 ` [PATCH v6 20/20] cxl: Remove cxl_get_phys_dev() kernel API Frederic Barrat
2016-03-07 5:25 ` Ian Munsie
2016-03-09 11:09 ` [v6,20/20] " Michael Ellerman
2016-03-09 11:35 ` Frederic Barrat
2016-03-07 5:28 ` [PATCH v6 00/20] cxl: Add support for powerVM guest Ian Munsie
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=1457090804-9719-20-git-send-email-fbarrat@linux.vnet.ibm.com \
--to=fbarrat@linux.vnet.ibm.com \
--cc=imunsie@au1.ibm.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=manoj@linux.vnet.ibm.com \
--cc=michael.neuling@au1.ibm.com \
--cc=mrochs@linux.vnet.ibm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).