mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-16 07:24:39 +08:00
Revert "powerpc/pseries/iommu: Fix iommu initialisation during DLPAR add"
This reverts commit ed8b94f6e0
.
Gaurav reported that there are still problems with the patch and it
should be reverted pending a fuller fix.
Link: https://lore.kernel.org/all/4f6fc1ac-7a76-4447-9d0e-f55c0be373f8@linux.ibm.com/
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
1c57b9f63a
commit
1fba2bf8e9
@ -29,9 +29,6 @@ void *pci_traverse_device_nodes(struct device_node *start,
|
||||
void *(*fn)(struct device_node *, void *),
|
||||
void *data);
|
||||
extern void pci_devs_phb_init_dynamic(struct pci_controller *phb);
|
||||
extern void ppc_iommu_register_device(struct pci_controller *phb);
|
||||
extern void ppc_iommu_unregister_device(struct pci_controller *phb);
|
||||
|
||||
|
||||
/* From rtas_pci.h */
|
||||
extern void init_pci_config_tokens (void);
|
||||
|
@ -1388,21 +1388,6 @@ static const struct attribute_group *spapr_tce_iommu_groups[] = {
|
||||
NULL,
|
||||
};
|
||||
|
||||
void ppc_iommu_register_device(struct pci_controller *phb)
|
||||
{
|
||||
iommu_device_sysfs_add(&phb->iommu, phb->parent,
|
||||
spapr_tce_iommu_groups, "iommu-phb%04x",
|
||||
phb->global_number);
|
||||
iommu_device_register(&phb->iommu, &spapr_tce_iommu_ops,
|
||||
phb->parent);
|
||||
}
|
||||
|
||||
void ppc_iommu_unregister_device(struct pci_controller *phb)
|
||||
{
|
||||
iommu_device_unregister(&phb->iommu);
|
||||
iommu_device_sysfs_remove(&phb->iommu);
|
||||
}
|
||||
|
||||
/*
|
||||
* This registers IOMMU devices of PHBs. This needs to happen
|
||||
* after core_initcall(iommu_init) + postcore_initcall(pci_driver_init) and
|
||||
@ -1413,7 +1398,11 @@ static int __init spapr_tce_setup_phb_iommus_initcall(void)
|
||||
struct pci_controller *hose;
|
||||
|
||||
list_for_each_entry(hose, &hose_list, list_node) {
|
||||
ppc_iommu_register_device(hose);
|
||||
iommu_device_sysfs_add(&hose->iommu, hose->parent,
|
||||
spapr_tce_iommu_groups, "iommu-phb%04x",
|
||||
hose->global_number);
|
||||
iommu_device_register(&hose->iommu, &spapr_tce_iommu_ops,
|
||||
hose->parent);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
@ -35,8 +35,6 @@ struct pci_controller *init_phb_dynamic(struct device_node *dn)
|
||||
|
||||
pseries_msi_allocate_domains(phb);
|
||||
|
||||
ppc_iommu_register_device(phb);
|
||||
|
||||
/* Create EEH devices for the PHB */
|
||||
eeh_phb_pe_create(phb);
|
||||
|
||||
@ -78,8 +76,6 @@ int remove_phb_dynamic(struct pci_controller *phb)
|
||||
}
|
||||
}
|
||||
|
||||
ppc_iommu_unregister_device(phb);
|
||||
|
||||
pseries_msi_free_domains(phb);
|
||||
|
||||
/* Keep a reference so phb isn't freed yet */
|
||||
|
Loading…
Reference in New Issue
Block a user