mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 05:04:02 +02:00
scsi: nsp32: Don't store pci_device_id
pci_device_id is not guaranteed to live longer than probe due to presence of dynamic ID. All information apart from driver_data can be easily retrieved from pci_dev, so just store driver_data. Signed-off-by: Gary Guo <gary@garyguo.net> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Danilo Krummrich <dakr@kernel.org> Link: https://patch.msgid.link/20260723-pci_id_fix-v4-2-3580726844e1@garyguo.net
This commit is contained in:
parent
4f3075f629
commit
3c28376273
|
|
@ -1470,7 +1470,7 @@ static int nsp32_show_info(struct seq_file *m, struct Scsi_Host *host)
|
|||
(nsp32_read2(base, INDEX_REG) >> 8) & 0xff);
|
||||
|
||||
mode_reg = nsp32_index_read1(base, CHIP_MODE);
|
||||
model = data->pci_devid->driver_data;
|
||||
model = data->model;
|
||||
|
||||
#ifdef CONFIG_PM
|
||||
seq_printf(m, "Power Management: %s\n",
|
||||
|
|
@ -2907,8 +2907,8 @@ static int nsp32_eh_host_reset(struct scsi_cmnd *SCpnt)
|
|||
*/
|
||||
static int nsp32_getprom_param(nsp32_hw_data *data)
|
||||
{
|
||||
int vendor = data->pci_devid->vendor;
|
||||
int device = data->pci_devid->device;
|
||||
int vendor = data->Pci->vendor;
|
||||
int device = data->Pci->device;
|
||||
int ret, i;
|
||||
int __maybe_unused val;
|
||||
|
||||
|
|
@ -3340,7 +3340,7 @@ static int nsp32_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
}
|
||||
|
||||
data->Pci = pdev;
|
||||
data->pci_devid = id;
|
||||
data->model = id->driver_data;
|
||||
data->IrqNumber = pdev->irq;
|
||||
data->BaseAddress = pci_resource_start(pdev, 0);
|
||||
data->NumAddress = pci_resource_len (pdev, 0);
|
||||
|
|
|
|||
|
|
@ -564,10 +564,10 @@ typedef struct _nsp32_hw_data {
|
|||
|
||||
struct scsi_cmnd *CurrentSC;
|
||||
|
||||
struct pci_dev *Pci;
|
||||
const struct pci_device_id *pci_devid;
|
||||
struct Scsi_Host *Host;
|
||||
spinlock_t Lock;
|
||||
struct pci_dev *Pci;
|
||||
int model;
|
||||
struct Scsi_Host *Host;
|
||||
spinlock_t Lock;
|
||||
|
||||
char info_str[100];
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user