aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/intel_scu_ipc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/platform/x86/intel_scu_ipc.c')
-rw-r--r--drivers/platform/x86/intel_scu_ipc.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/platform/x86/intel_scu_ipc.c b/drivers/platform/x86/intel_scu_ipc.c
index d789fe1baf17..8a34c1e7536f 100644
--- a/drivers/platform/x86/intel_scu_ipc.c
+++ b/drivers/platform/x86/intel_scu_ipc.c
@@ -582,7 +582,6 @@ static int ipc_probe(struct pci_dev *pdev, const struct pci_device_id *id)
582 if (!pdata) 582 if (!pdata)
583 return -ENODEV; 583 return -ENODEV;
584 584
585 scu->dev = &pdev->dev;
586 scu->irq_mode = pdata->irq_mode; 585 scu->irq_mode = pdata->irq_mode;
587 586
588 err = pcim_enable_device(pdev); 587 err = pcim_enable_device(pdev);
@@ -595,17 +594,20 @@ static int ipc_probe(struct pci_dev *pdev, const struct pci_device_id *id)
595 594
596 init_completion(&scu->cmd_complete); 595 init_completion(&scu->cmd_complete);
597 596
598 err = devm_request_irq(&pdev->dev, pdev->irq, ioc, 0, "intel_scu_ipc",
599 scu);
600 if (err)
601 return err;
602
603 scu->ipc_base = pcim_iomap_table(pdev)[0]; 597 scu->ipc_base = pcim_iomap_table(pdev)[0];
604 598
605 scu->i2c_base = ioremap_nocache(pdata->i2c_base, pdata->i2c_len); 599 scu->i2c_base = ioremap_nocache(pdata->i2c_base, pdata->i2c_len);
606 if (!scu->i2c_base) 600 if (!scu->i2c_base)
607 return -ENOMEM; 601 return -ENOMEM;
608 602
603 err = devm_request_irq(&pdev->dev, pdev->irq, ioc, 0, "intel_scu_ipc",
604 scu);
605 if (err)
606 return err;
607
608 /* Assign device at last */
609 scu->dev = &pdev->dev;
610
609 intel_scu_devices_create(); 611 intel_scu_devices_create();
610 612
611 pci_set_drvdata(pdev, scu); 613 pci_set_drvdata(pdev, scu);