Lines Matching refs:pdev

701 	struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev);
707 dev_warn(&pdev->dev, "firmware crashed (%u)\n", cb);
708 pm_runtime_forbid(&pdev->dev);
711 pm_runtime_allow(&pdev->dev);
735 struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev);
738 if (pci_read_config_word(pdev, PCI_VENDOR_ID, &vendor))
750 struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev);
753 err = pci_assign_resource(pdev, bar_num);
757 err = pcim_enable_device(pdev);
759 dev_err(&pdev->dev, "failed to enable pci device: %d\n", err);
763 err = pcim_iomap_regions(pdev, 1 << bar_num, pci_name(pdev));
765 dev_err(&pdev->dev, "failed to map pci region: %d\n", err);
768 mhi_cntrl->regs = pcim_iomap_table(pdev)[bar_num];
769 mhi_cntrl->reg_len = pci_resource_len(pdev, bar_num);
771 err = dma_set_mask_and_coherent(&pdev->dev, dma_mask);
773 dev_err(&pdev->dev, "Cannot set proper DMA mask\n");
777 pci_set_master(pdev);
785 struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev);
795 nr_vectors = pci_alloc_irq_vectors(pdev, 1, mhi_cntrl->nr_irqs, PCI_IRQ_MSI);
797 dev_err(&pdev->dev, "Error allocating MSI vectors %d\n",
803 dev_warn(&pdev->dev, "using shared MSI\n");
811 irq = devm_kcalloc(&pdev->dev, mhi_cntrl->nr_irqs, sizeof(int), GFP_KERNEL);
818 irq[i] = pci_irq_vector(pdev, vector);
848 struct pci_dev *pdev = to_pci_dev(mhi_cntrl->cntrl_dev);
851 dev_warn(&pdev->dev, "device recovery started\n");
854 pm_runtime_forbid(&pdev->dev);
862 pci_set_power_state(pdev, PCI_D0);
863 pci_load_saved_state(pdev, mhi_pdev->pci_state);
864 pci_restore_state(pdev);
877 dev_dbg(&pdev->dev, "Recovery completed\n");
886 if (pci_reset_function(pdev))
887 dev_err(&pdev->dev, "Recovery failed\n");
909 static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
917 dev_info(&pdev->dev, "MHI PCI device found: %s\n", info->name);
920 mhi_pdev = devm_kzalloc(&pdev->dev, sizeof(*mhi_pdev), GFP_KERNEL);
930 mhi_cntrl->cntrl_dev = &pdev->dev;
957 pci_set_drvdata(pdev, mhi_pdev);
962 pci_save_state(pdev);
963 mhi_pdev->pci_state = pci_store_saved_state(pdev);
964 pci_load_saved_state(pdev, NULL);
973 dev_err(&pdev->dev, "failed to prepare MHI controller\n");
979 dev_err(&pdev->dev, "failed to power up MHI controller\n");
989 if (pci_pme_capable(pdev, PCI_D3hot)) {
990 pm_runtime_set_autosuspend_delay(&pdev->dev, 2000);
991 pm_runtime_use_autosuspend(&pdev->dev);
992 pm_runtime_mark_last_busy(&pdev->dev);
993 pm_runtime_put_noidle(&pdev->dev);
1006 static void mhi_pci_remove(struct pci_dev *pdev)
1008 struct mhi_pci_device *mhi_pdev = pci_get_drvdata(pdev);
1020 if (pci_pme_capable(pdev, PCI_D3hot))
1021 pm_runtime_get_noresume(&pdev->dev);
1026 static void mhi_pci_shutdown(struct pci_dev *pdev)
1028 mhi_pci_remove(pdev);
1029 pci_set_power_state(pdev, PCI_D3hot);
1032 static void mhi_pci_reset_prepare(struct pci_dev *pdev)
1034 struct mhi_pci_device *mhi_pdev = pci_get_drvdata(pdev);
1037 dev_info(&pdev->dev, "reset\n");
1054 static void mhi_pci_reset_done(struct pci_dev *pdev)
1056 struct mhi_pci_device *mhi_pdev = pci_get_drvdata(pdev);
1061 pci_load_saved_state(pdev, mhi_pdev->pci_state);
1062 pci_restore_state(pdev);
1066 dev_err(&pdev->dev, "reset failed\n");
1072 dev_err(&pdev->dev, "failed to prepare MHI controller\n");
1078 dev_err(&pdev->dev, "failed to power up MHI controller\n");
1087 static pci_ers_result_t mhi_pci_error_detected(struct pci_dev *pdev,
1090 struct mhi_pci_device *mhi_pdev = pci_get_drvdata(pdev);
1093 dev_err(&pdev->dev, "PCI error detected, state = %u\n", state);
1107 pci_disable_device(pdev);
1112 static pci_ers_result_t mhi_pci_slot_reset(struct pci_dev *pdev)
1114 if (pci_enable_device(pdev)) {
1115 dev_err(&pdev->dev, "Cannot re-enable PCI device after reset.\n");
1122 static void mhi_pci_io_resume(struct pci_dev *pdev)
1124 struct mhi_pci_device *mhi_pdev = pci_get_drvdata(pdev);
1126 dev_err(&pdev->dev, "PCI slot reset done\n");
1141 struct pci_dev *pdev = to_pci_dev(dev);
1159 dev_err(&pdev->dev, "failed to suspend device: %d\n", err);
1165 pci_disable_device(pdev);
1166 pci_wake_from_d3(pdev, true);
1173 struct pci_dev *pdev = to_pci_dev(dev);
1181 err = pci_enable_device(pdev);
1185 pci_set_master(pdev);
1186 pci_wake_from_d3(pdev, false);
1195 dev_err(&pdev->dev, "failed to resume device: %d\n", err);