/linux-4.4.14/arch/powerpc/platforms/powernv/ |
D | pci-p5ioc2.c | 44 static int pnv_pci_p5ioc2_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, in pnv_pci_p5ioc2_msi_setup() argument 50 msg->data = hwirq - phb->msi_base; in pnv_pci_p5ioc2_msi_setup() 57 static void pnv_pci_init_p5ioc2_msis(struct pnv_phb *phb) in pnv_pci_init_p5ioc2_msis() argument 60 const __be32 *prop = of_get_property(phb->hose->dn, in pnv_pci_init_p5ioc2_msis() 68 if (of_device_is_compatible(phb->hose->dn, "ibm,p5ioc2-pcix")) in pnv_pci_init_p5ioc2_msis() 70 phb->msi_base = be32_to_cpup(prop); in pnv_pci_init_p5ioc2_msis() 72 if (msi_bitmap_alloc(&phb->msi_bmp, count, phb->hose->dn)) { in pnv_pci_init_p5ioc2_msis() 74 phb->hose->global_number); in pnv_pci_init_p5ioc2_msis() 77 phb->msi_setup = pnv_pci_p5ioc2_msi_setup; in pnv_pci_init_p5ioc2_msis() 78 phb->msi32_support = 0; in pnv_pci_init_p5ioc2_msis() [all …]
|
D | pci-ioda.c | 135 static void pnv_ioda_reserve_pe(struct pnv_phb *phb, int pe_no) in pnv_ioda_reserve_pe() argument 137 if (!(pe_no >= 0 && pe_no < phb->ioda.total_pe)) { in pnv_ioda_reserve_pe() 139 __func__, pe_no, phb->hose->global_number); in pnv_ioda_reserve_pe() 143 if (test_and_set_bit(pe_no, phb->ioda.pe_alloc)) in pnv_ioda_reserve_pe() 145 __func__, pe_no, phb->hose->global_number); in pnv_ioda_reserve_pe() 147 phb->ioda.pe_array[pe_no].phb = phb; in pnv_ioda_reserve_pe() 148 phb->ioda.pe_array[pe_no].pe_number = pe_no; in pnv_ioda_reserve_pe() 151 static int pnv_ioda_alloc_pe(struct pnv_phb *phb) in pnv_ioda_alloc_pe() argument 156 pe = find_next_zero_bit(phb->ioda.pe_alloc, in pnv_ioda_alloc_pe() 157 phb->ioda.total_pe, 0); in pnv_ioda_alloc_pe() [all …]
|
D | eeh-powernv.c | 49 struct pnv_phb *phb; in pnv_eeh_init() local 66 phb = hose->private_data; in pnv_eeh_init() 68 if (phb->model == PNV_PHB_MODEL_P7IOC) in pnv_eeh_init() 78 if (phb->ioda.reserved_pe != 0) in pnv_eeh_init() 134 edev->phb = hose; in pnv_eeh_ei_write() 155 struct pnv_phb *phb = hose->private_data; in pnv_eeh_dbgfs_set() local 157 out_be64(phb->regs + offset, val); in pnv_eeh_dbgfs_set() 164 struct pnv_phb *phb = hose->private_data; in pnv_eeh_dbgfs_get() local 166 *val = in_be64(phb->regs + offset); in pnv_eeh_dbgfs_get() 219 struct pnv_phb *phb; in pnv_eeh_post_init() local [all …]
|
D | pci.c | 51 struct pnv_phb *phb = hose->private_data; in pnv_setup_msi_irqs() local 58 if (WARN_ON(!phb) || !phb->msi_bmp.bitmap) in pnv_setup_msi_irqs() 61 if (pdev->no_64bit_msi && !phb->msi32_support) in pnv_setup_msi_irqs() 65 if (!entry->msi_attrib.is_64 && !phb->msi32_support) { in pnv_setup_msi_irqs() 70 hwirq = msi_bitmap_alloc_hwirqs(&phb->msi_bmp, 1); in pnv_setup_msi_irqs() 76 virq = irq_create_mapping(NULL, phb->msi_base + hwirq); in pnv_setup_msi_irqs() 80 msi_bitmap_free_hwirqs(&phb->msi_bmp, hwirq, 1); in pnv_setup_msi_irqs() 83 rc = phb->msi_setup(phb, pdev, phb->msi_base + hwirq, in pnv_setup_msi_irqs() 88 msi_bitmap_free_hwirqs(&phb->msi_bmp, hwirq, 1); in pnv_setup_msi_irqs() 100 struct pnv_phb *phb = hose->private_data; in pnv_teardown_msi_irqs() local [all …]
|
D | pci.h | 32 struct pnv_phb *phb; member 104 int (*msi_setup)(struct pnv_phb *phb, struct pci_dev *dev, 107 void (*dma_dev_setup)(struct pnv_phb *phb, struct pci_dev *pdev); 109 u32 (*bdfn_to_pe)(struct pnv_phb *phb, struct pci_bus *bus, u32 devfn); 110 int (*init_m64)(struct pnv_phb *phb); 114 int (*get_pe_state)(struct pnv_phb *phb, int pe_no); 115 void (*freeze_pe)(struct pnv_phb *phb, int pe_no); 116 int (*unfreeze_pe)(struct pnv_phb *phb, int pe_no, int opt);
|
/linux-4.4.14/drivers/misc/cxl/ |
D | vphb.c | 45 struct pci_controller *phb; in cxl_pci_enable_device_hook() local 49 phb = pci_bus_to_host(dev->bus); in cxl_pci_enable_device_hook() 50 afu = (struct cxl_afu *)phb->private_data; in cxl_pci_enable_device_hook() 102 static unsigned long cxl_pcie_cfg_addr(struct pci_controller* phb, in cxl_pcie_cfg_addr() argument 107 return (unsigned long)phb->cfg_addr + ((unsigned long)phb->cfg_data * record) + offset; in cxl_pcie_cfg_addr() 116 struct pci_controller *phb; in cxl_pcie_config_info() local 120 phb = pci_bus_to_host(bus); in cxl_pcie_config_info() 121 if (phb == NULL) in cxl_pcie_config_info() 123 afu = (struct cxl_afu *)phb->private_data; in cxl_pcie_config_info() 127 if (offset >= (unsigned long)phb->cfg_data) in cxl_pcie_config_info() [all …]
|
D | pci.c | 1331 list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) { in cxl_vphb_error_detected() 1496 list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) { in cxl_pci_slot_reset() 1558 list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) { in cxl_pci_resume()
|
D | cxl.h | 387 struct pci_controller *phb; member
|
/linux-4.4.14/arch/powerpc/platforms/pseries/ |
D | pci_dlpar.c | 62 if (!pdn || !pdn->phb || !pdn->phb->bus) in pcibios_find_pci_bus() 65 return find_bus_among_children(pdn->phb->bus, dn); in pcibios_find_pci_bus() 71 struct pci_controller *phb; in init_phb_dynamic() local 75 phb = pcibios_alloc_controller(dn); in init_phb_dynamic() 76 if (!phb) in init_phb_dynamic() 78 rtas_setup_phb(phb); in init_phb_dynamic() 79 pci_process_bridge_OF_ranges(phb, dn, 0); in init_phb_dynamic() 80 phb->controller_ops = pseries_pci_controller_ops; in init_phb_dynamic() 82 pci_devs_phb_init_dynamic(phb); in init_phb_dynamic() 85 eeh_dev_phb_init_dynamic(phb); in init_phb_dynamic() [all …]
|
D | eeh_pseries.c | 245 pe.phb = edev->phb; in pseries_eeh_probe() 270 PCI_FUNC(pdn->devfn), pe.phb->global_number, in pseries_eeh_probe() 328 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_set_option() 329 BUID_LO(pe->phb->buid), option); in pseries_eeh_set_option() 359 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr() 360 BUID_LO(pe->phb->buid), 1); in pseries_eeh_get_pe_addr() 366 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr() 367 BUID_LO(pe->phb->buid), 0); in pseries_eeh_get_pe_addr() 370 __func__, pe->phb->global_number, pe->config_addr); in pseries_eeh_get_pe_addr() 379 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr() [all …]
|
D | iommu.c | 535 static void iommu_table_setparms(struct pci_controller *phb, in iommu_table_setparms() argument 543 node = phb->dn; in iommu_table_setparms() 558 tbl->it_busno = phb->bus->number; in iommu_table_setparms() 562 tbl->it_offset = phb->dma_window_base_cur >> tbl->it_page_shift; in iommu_table_setparms() 565 if (phb->dma_window_base_cur + phb->dma_window_size > 0x80000000ul) { in iommu_table_setparms() 570 phb->dma_window_base_cur += phb->dma_window_size; in iommu_table_setparms() 573 tbl->it_size = phb->dma_window_size >> tbl->it_page_shift; in iommu_table_setparms() 601 static void iommu_table_setparms_lpar(struct pci_controller *phb, in iommu_table_setparms_lpar() argument 610 tbl->it_busno = phb->bus->number; in iommu_table_setparms_lpar() 670 pci->phb->dma_window_size = 0x80000000ul; /* To be divided */ in pci_dma_bus_setup_pSeries() [all …]
|
D | setup.c | 268 update_dn_pci_info(np, pdn->phb); in pci_dn_reconfig_notifier() 269 eeh_dev_init(PCI_DN(np), pdn->phb); in pci_dn_reconfig_notifier() 475 struct pci_controller *phb; in find_and_init_phbs() local 483 phb = pcibios_alloc_controller(node); in find_and_init_phbs() 484 if (!phb) in find_and_init_phbs() 486 rtas_setup_phb(phb); in find_and_init_phbs() 487 pci_process_bridge_OF_ranges(phb, node, 0); in find_and_init_phbs() 488 isa_bridge_find_early(phb); in find_and_init_phbs() 489 phb->controller_ops = pseries_pci_controller_ops; in find_and_init_phbs()
|
D | msi.c | 41 buid = pdn->phb->buid; in rtas_change_msi() 102 buid = pdn->phb->buid; in rtas_query_irq_number() 510 struct pci_controller *phb; in rtas_msi_init() local 527 list_for_each_entry(phb, &hose_list, list_node) { in rtas_msi_init() 528 WARN_ON(phb->controller_ops.setup_msi_irqs); in rtas_msi_init() 529 phb->controller_ops.setup_msi_irqs = rtas_setup_msi_irqs; in rtas_msi_init() 530 phb->controller_ops.teardown_msi_irqs = rtas_teardown_msi_irqs; in rtas_msi_init()
|
/linux-4.4.14/arch/powerpc/kernel/ |
D | of_platform.c | 42 struct pci_controller *phb; in of_pci_phb_probe() local 51 phb = pcibios_alloc_controller(dev->dev.of_node); in of_pci_phb_probe() 52 if (!phb) in of_pci_phb_probe() 56 phb->parent = &dev->dev; in of_pci_phb_probe() 59 if (ppc_md.pci_setup_phb(phb)) { in of_pci_phb_probe() 60 pcibios_free_controller(phb); in of_pci_phb_probe() 65 pci_process_bridge_OF_ranges(phb, dev->dev.of_node, 0); in of_pci_phb_probe() 68 pci_devs_phb_init_dynamic(phb); in of_pci_phb_probe() 71 eeh_dev_phb_init_dynamic(phb); in of_pci_phb_probe() 78 pcibios_scan_phb(phb); in of_pci_phb_probe() [all …]
|
D | eeh_dev.c | 54 struct pci_controller *phb = data; in eeh_dev_init() local 68 edev->phb = phb; in eeh_dev_init() 81 void eeh_dev_phb_init_dynamic(struct pci_controller *phb) in eeh_dev_phb_init_dynamic() argument 83 struct pci_dn *root = phb->pci_data; in eeh_dev_phb_init_dynamic() 86 eeh_phb_pe_create(phb); in eeh_dev_phb_init_dynamic() 89 eeh_dev_init(root, phb); in eeh_dev_phb_init_dynamic() 92 traverse_pci_dn(root, eeh_dev_init, phb); in eeh_dev_phb_init_dynamic() 103 struct pci_controller *phb, *tmp; in eeh_dev_phb_init() local 105 list_for_each_entry_safe(phb, tmp, &hose_list, list_node) in eeh_dev_phb_init() 106 eeh_dev_phb_init_dynamic(phb); in eeh_dev_phb_init()
|
D | msi.c | 18 struct pci_controller *phb = pci_bus_to_host(dev->bus); in arch_setup_msi_irqs() local 20 if (!phb->controller_ops.setup_msi_irqs || in arch_setup_msi_irqs() 21 !phb->controller_ops.teardown_msi_irqs) { in arch_setup_msi_irqs() 30 return phb->controller_ops.setup_msi_irqs(dev, nvec, type); in arch_setup_msi_irqs() 35 struct pci_controller *phb = pci_bus_to_host(dev->bus); in arch_teardown_msi_irqs() local 37 phb->controller_ops.teardown_msi_irqs(dev); in arch_teardown_msi_irqs()
|
D | rtas_pci.c | 75 buid = pdn->phb->buid; in rtas_read_config() 138 buid = pdn->phb->buid; in rtas_write_config() 237 unsigned long get_phb_buid(struct device_node *phb) in get_phb_buid() argument 243 if (of_address_to_resource(phb, 0, &r)) in get_phb_buid() 249 struct pci_controller *phb) in phb_set_bus_ranges() argument 259 phb->first_busno = be32_to_cpu(bus_range[0]); in phb_set_bus_ranges() 260 phb->last_busno = be32_to_cpu(bus_range[1]); in phb_set_bus_ranges() 265 int rtas_setup_phb(struct pci_controller *phb) in rtas_setup_phb() argument 267 struct device_node *dev = phb->dn; in rtas_setup_phb() 272 if (phb_set_bus_ranges(dev, phb)) in rtas_setup_phb() [all …]
|
D | pci-hotplug.c | 32 struct pci_controller *phb = pci_bus_to_host(dev->bus); in pcibios_release_device() local 36 if (phb->controller_ops.release_device) in pcibios_release_device() 37 phb->controller_ops.release_device(dev); in pcibios_release_device() 81 struct pci_controller *phb; in pcibios_add_pci_devices() local 86 phb = pci_bus_to_host(bus); in pcibios_add_pci_devices() 89 if (phb->controller_ops.probe_mode) in pcibios_add_pci_devices() 90 mode = phb->controller_ops.probe_mode(bus); in pcibios_add_pci_devices()
|
D | io-workarounds.c | 36 struct pci_controller *phb = bus->phb; in iowa_pci_find() local 39 vstart = (unsigned long)phb->io_base_virt; in iowa_pci_find() 40 vend = vstart + phb->pci_io_size - 1; in iowa_pci_find() 47 res = &phb->mem_resources[j]; in iowa_pci_find() 185 void iowa_register_bus(struct pci_controller *phb, struct ppc_pci_io *ops, in iowa_register_bus() argument 189 struct device_node *np = phb->dn; in iowa_register_bus() 200 bus->phb = phb; in iowa_register_bus()
|
D | pci_dn.c | 156 pdn->phb = parent->phb; in add_one_dev_pci_data() 274 struct pci_controller *phb = data; in update_dn_pci_info() local 285 pdn->phb = phb; in update_dn_pci_info() 426 void pci_devs_phb_init_dynamic(struct pci_controller *phb) in pci_devs_phb_init_dynamic() argument 428 struct device_node *dn = phb->dn; in pci_devs_phb_init_dynamic() 432 update_dn_pci_info(dn, phb); in pci_devs_phb_init_dynamic() 437 pdn->phb = phb; in pci_devs_phb_init_dynamic() 438 phb->pci_data = pdn; in pci_devs_phb_init_dynamic() 442 traverse_pci_devices(dn, update_dn_pci_info, phb); in pci_devs_phb_init_dynamic() 456 struct pci_controller *phb, *tmp; in pci_devs_phb_init() local [all …]
|
D | eeh_pe.c | 59 static struct eeh_pe *eeh_pe_alloc(struct pci_controller *phb, int type) in eeh_pe_alloc() argument 76 pe->phb = phb; in eeh_pe_alloc() 93 int eeh_phb_pe_create(struct pci_controller *phb) in eeh_phb_pe_create() argument 98 pe = eeh_pe_alloc(phb, EEH_PE_PHB); in eeh_phb_pe_create() 107 pr_debug("EEH: Add PE for PHB#%d\n", phb->global_number); in eeh_phb_pe_create() 120 struct eeh_pe *eeh_phb_pe_get(struct pci_controller *phb) in eeh_phb_pe_get() argument 130 if ((pe->type & EEH_PE_PHB) && pe->phb == phb) in eeh_phb_pe_get() 276 struct eeh_pe *root = eeh_phb_pe_get(edev->phb); in eeh_pe_get() 334 __func__, edev->config_addr, edev->phb->global_number); in eeh_add_to_parent_pe() 353 edev->phb->global_number, in eeh_add_to_parent_pe() [all …]
|
D | pci-common.c | 69 struct pci_controller *phb; in pcibios_alloc_controller() local 71 phb = zalloc_maybe_bootmem(sizeof(struct pci_controller), GFP_KERNEL); in pcibios_alloc_controller() 72 if (phb == NULL) in pcibios_alloc_controller() 75 phb->global_number = global_phb_number++; in pcibios_alloc_controller() 76 list_add_tail(&phb->list_node, &hose_list); in pcibios_alloc_controller() 78 phb->dn = dev; in pcibios_alloc_controller() 79 phb->is_dynamic = slab_is_available(); in pcibios_alloc_controller() 87 PHB_SET_NODE(phb, nid); in pcibios_alloc_controller() 90 return phb; in pcibios_alloc_controller() 94 void pcibios_free_controller(struct pci_controller *phb) in pcibios_free_controller() argument [all …]
|
D | eeh_event.c | 79 pe->phb->global_number); in eeh_event_handler() 83 pe->phb->global_number, pe->addr); in eeh_event_handler() 186 if (event->pe && event->pe->phb == pe->phb) { in eeh_remove_event()
|
D | eeh.c | 172 edev->phb->global_number, pdn->busno, in eeh_dump_dev_log() 175 edev->phb->global_number, pdn->busno, in eeh_dump_dev_log() 379 phb_pe = eeh_phb_pe_get(pe->phb); in eeh_phb_check_failure() 382 __func__, pe->phb->global_number); in eeh_phb_check_failure() 408 phb_pe->phb->global_number, eeh_pe_loc_get(phb_pe)); in eeh_phb_check_failure() 568 phb_pe = eeh_phb_pe_get(pe->phb); in eeh_dev_check_failure() 570 pe->phb->global_number, pe->addr); in eeh_dev_check_failure() 674 __func__, function, pe->phb->global_number, in eeh_pci_enable() 871 __func__, pe->phb->global_number, pe->addr); in eeh_reset_pe() 879 __func__, state, pe->phb->global_number, pe->addr, (i + 1)); in eeh_reset_pe() [all …]
|
D | dma.c | 329 struct pci_controller *phb = pci_bus_to_host(pdev->bus); in dma_set_mask() local 330 if (phb->controller_ops.dma_set_mask) in dma_set_mask() 331 return phb->controller_ops.dma_set_mask(pdev, dma_mask); in dma_set_mask() 358 struct pci_controller *phb = pci_bus_to_host(pdev->bus); in dma_get_required_mask() local 359 if (phb->controller_ops.dma_get_required_mask) in dma_get_required_mask() 360 return phb->controller_ops.dma_get_required_mask(pdev); in dma_get_required_mask()
|
D | pci_64.c | 242 hose = PCI_DN(hose_node)->phb; in sys_pciconfig_iobase() 263 struct pci_controller *phb = pci_bus_to_host(bus); in pcibus_to_node() local 264 return phb->node; in pcibus_to_node()
|
D | pci_of_scan.c | 209 struct pci_controller *phb; in of_scan_pci_bridge() local 289 phb = pci_bus_to_host(bus); in of_scan_pci_bridge() 292 if (phb->controller_ops.probe_mode) in of_scan_pci_bridge() 293 mode = phb->controller_ops.probe_mode(bus); in of_scan_pci_bridge()
|
D | eeh_driver.c | 497 __func__, rc, pe->phb->global_number, pe->addr); in __eeh_clear_pe_frozen_state() 665 __func__, pe->phb->global_number, pe->addr); in eeh_handle_normal_event() 802 pe->phb->global_number, pe->addr, in eeh_handle_normal_event() 809 pe->phb->global_number, pe->addr); in eeh_handle_normal_event()
|
/linux-4.4.14/arch/powerpc/sysdev/ |
D | mv64x60_pci.c | 32 struct pci_dev *phb; in mv64x60_hs_reg_read() local 40 phb = pci_get_bus_and_slot(0, PCI_DEVFN(0, 0)); in mv64x60_hs_reg_read() 41 if (!phb) in mv64x60_hs_reg_read() 43 pci_read_config_dword(phb, MV64X60_PCICFG_CPCI_HOTSWAP, &v); in mv64x60_hs_reg_read() 44 pci_dev_put(phb); in mv64x60_hs_reg_read() 53 struct pci_dev *phb; in mv64x60_hs_reg_write() local 64 phb = pci_get_bus_and_slot(0, PCI_DEVFN(0, 0)); in mv64x60_hs_reg_write() 65 if (!phb) in mv64x60_hs_reg_write() 67 pci_write_config_dword(phb, MV64X60_PCICFG_CPCI_HOTSWAP, v); in mv64x60_hs_reg_write() 68 pci_dev_put(phb); in mv64x60_hs_reg_write()
|
D | mpic_u3msi.c | 185 struct pci_controller *phb; in mpic_u3msi_init() local 198 list_for_each_entry(phb, &hose_list, list_node) { in mpic_u3msi_init() 199 WARN_ON(phb->controller_ops.setup_msi_irqs); in mpic_u3msi_init() 200 phb->controller_ops.setup_msi_irqs = u3msi_setup_msi_irqs; in mpic_u3msi_init() 201 phb->controller_ops.teardown_msi_irqs = u3msi_teardown_msi_irqs; in mpic_u3msi_init()
|
D | ppc4xx_hsta_msi.c | 132 struct pci_controller *phb; in hsta_msi_probe() local 176 list_for_each_entry(phb, &hose_list, list_node) { in hsta_msi_probe() 177 phb->controller_ops.setup_msi_irqs = hsta_setup_msi_irqs; in hsta_msi_probe() 178 phb->controller_ops.teardown_msi_irqs = hsta_teardown_msi_irqs; in hsta_msi_probe()
|
D | ppc4xx_msi.c | 222 struct pci_controller *phb; in ppc4xx_msi_probe() local 255 list_for_each_entry(phb, &hose_list, list_node) { in ppc4xx_msi_probe() 256 phb->controller_ops.setup_msi_irqs = ppc4xx_setup_msi_irqs; in ppc4xx_msi_probe() 257 phb->controller_ops.teardown_msi_irqs = ppc4xx_teardown_msi_irqs; in ppc4xx_msi_probe()
|
D | fsl_msi.c | 409 struct pci_controller *phb; in fsl_of_msi_probe() local 551 list_for_each_entry(phb, &hose_list, list_node) { in fsl_of_msi_probe() 552 if (!phb->controller_ops.setup_msi_irqs) { in fsl_of_msi_probe() 553 phb->controller_ops.setup_msi_irqs = fsl_setup_msi_irqs; in fsl_of_msi_probe() 554 phb->controller_ops.teardown_msi_irqs = fsl_teardown_msi_irqs; in fsl_of_msi_probe() 555 } else if (phb->controller_ops.setup_msi_irqs != fsl_setup_msi_irqs) { in fsl_of_msi_probe()
|
D | fsl_pci.h | 121 extern void fsl_pcibios_fixup_phb(struct pci_controller *phb);
|
D | fsl_pci.c | 1251 void fsl_pcibios_fixup_phb(struct pci_controller *phb) in fsl_pcibios_fixup_phb() argument 1254 fsl_pci_pme_probe(phb); in fsl_pcibios_fixup_phb()
|
/linux-4.4.14/drivers/pci/hotplug/ |
D | rpadlpar_core.c | 146 struct pci_controller *phb = pdn->phb; in dlpar_pci_add_bus() local 152 dev = of_create_pci_dev(dn, phb->bus, pdn->devfn); in dlpar_pci_add_bus() 171 pcibios_finish_adding_to_bus(phb->bus); in dlpar_pci_add_bus() 177 struct pci_controller *phb; in dlpar_add_pci_slot() local 186 phb = PCI_DN(dn)->phb; in dlpar_add_pci_slot() 187 dev = dlpar_find_new_dev(phb->bus, dn); in dlpar_add_pci_slot() 228 BUG_ON(!pdn || !pdn->phb); in dlpar_remove_phb() 229 rc = remove_phb_dynamic(pdn->phb); in dlpar_remove_phb() 233 pdn->phb = NULL; in dlpar_remove_phb() 240 struct pci_controller *phb; in dlpar_add_phb() local [all …]
|
/linux-4.4.14/arch/powerpc/platforms/pasemi/ |
D | msi.c | 146 struct pci_controller *phb; in mpic_pasemi_msi_init() local 164 list_for_each_entry(phb, &hose_list, list_node) { in mpic_pasemi_msi_init() 165 WARN_ON(phb->controller_ops.setup_msi_irqs); in mpic_pasemi_msi_init() 166 phb->controller_ops.setup_msi_irqs = pasemi_msi_setup_msi_irqs; in mpic_pasemi_msi_init() 167 phb->controller_ops.teardown_msi_irqs = pasemi_msi_teardown_msi_irqs; in mpic_pasemi_msi_init()
|
/linux-4.4.14/arch/powerpc/platforms/cell/ |
D | spider-pci.c | 82 static int __init spiderpci_pci_setup_chip(struct pci_controller *phb, in spiderpci_pci_setup_chip() argument 112 dummy_page_da = dma_map_single(phb->parent, dummy_page_va, in spiderpci_pci_setup_chip() 114 if (dma_mapping_error(phb->parent, dummy_page_da)) { in spiderpci_pci_setup_chip() 129 struct device_node *np = bus->phb->dn; in spiderpci_iowa_init() 156 if (spiderpci_pci_setup_chip(bus->phb, regs)) in spiderpci_iowa_init()
|
D | setup.c | 121 static int cell_setup_phb(struct pci_controller *phb) in cell_setup_phb() argument 126 int rc = rtas_setup_phb(phb); in cell_setup_phb() 130 phb->controller_ops = cell_pci_controller_ops; in cell_setup_phb() 132 np = phb->dn; in cell_setup_phb() 141 iowa_register_bus(phb, &spiderpci_ops, &spiderpci_iowa_init, in cell_setup_phb()
|
/linux-4.4.14/arch/powerpc/platforms/amigaone/ |
D | setup.c | 74 int phb = -ENODEV; in amigaone_setup_arch() local 78 phb = amigaone_add_bridge(np); in amigaone_setup_arch() 80 BUG_ON(phb != 0); in amigaone_setup_arch()
|
/linux-4.4.14/arch/powerpc/include/asm/ |
D | eeh.h | 91 struct pci_controller *phb; /* Associated PHB */ member 141 struct pci_controller *phb; /* Associated PHB */ member 258 int eeh_phb_pe_create(struct pci_controller *phb); 259 struct eeh_pe *eeh_phb_pe_get(struct pci_controller *phb); 273 void eeh_dev_phb_init_dynamic(struct pci_controller *phb); 330 static inline void eeh_dev_phb_init_dynamic(struct pci_controller *phb) { } in eeh_dev_phb_init_dynamic() argument
|
D | ppc-pci.h | 44 extern void pci_devs_phb_init_dynamic(struct pci_controller *phb); 49 extern int rtas_setup_phb(struct pci_controller *phb);
|
D | io-workarounds.h | 29 struct pci_controller *phb; member
|
D | pci-bridge.h | 202 struct pci_controller *phb; /* for pci devices */ member 297 extern void pcibios_free_controller(struct pci_controller *phb);
|
D | pci.h | 124 extern int remove_phb_dynamic(struct pci_controller *phb);
|
/linux-4.4.14/arch/microblaze/pci/ |
D | pci-common.c | 55 struct pci_controller *phb; in pcibios_alloc_controller() local 57 phb = zalloc_maybe_bootmem(sizeof(struct pci_controller), GFP_KERNEL); in pcibios_alloc_controller() 58 if (!phb) in pcibios_alloc_controller() 61 phb->global_number = global_phb_number++; in pcibios_alloc_controller() 62 list_add_tail(&phb->list_node, &hose_list); in pcibios_alloc_controller() 64 phb->dn = dev; in pcibios_alloc_controller() 65 phb->is_dynamic = mem_init_done; in pcibios_alloc_controller() 66 return phb; in pcibios_alloc_controller() 69 void pcibios_free_controller(struct pci_controller *phb) in pcibios_free_controller() argument 72 list_del(&phb->list_node); in pcibios_free_controller() [all …]
|
/linux-4.4.14/arch/microblaze/include/asm/ |
D | pci-bridge.h | 141 extern void pcibios_free_controller(struct pci_controller *phb);
|
/linux-4.4.14/arch/x86/kernel/ |
D | pci-calgary_64.c | 1087 int rioidx, phb, bus; in calgary_locate_bbars() local 1106 for (phb = 0; phb < PHBS_PER_CALGARY; phb++) { in calgary_locate_bbars() 1107 offset = phb_debug_offsets[phb] | PHB_DEBUG_STUFF_OFFSET; in calgary_locate_bbars() 1118 bus_info[bus].phbid = phb; in calgary_locate_bbars() 1122 bus_info[start_bus].phbid = phb; in calgary_locate_bbars()
|