pbm                44 arch/sparc/include/asm/pbm.h 	struct linux_pbm_info		*pbm;
pbm                28 arch/sparc/include/asm/pcic.h         struct linux_pbm_info   pbm;
pbm               263 arch/sparc/kernel/pci.c static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm,
pbm               278 arch/sparc/kernel/pci.c 	pci_init_dev_archdata(sd, pbm->iommu, &pbm->stc, pbm, op,
pbm               279 arch/sparc/kernel/pci.c 			      pbm->numa_node);
pbm               281 arch/sparc/kernel/pci.c 	sd->iommu = pbm->iommu;
pbm               282 arch/sparc/kernel/pci.c 	sd->stc = &pbm->stc;
pbm               283 arch/sparc/kernel/pci.c 	sd->numa_node = pbm->numa_node;
pbm               386 arch/sparc/kernel/pci.c 			    struct pci_pbm_info *pbm)
pbm               410 arch/sparc/kernel/pci.c static void pci_of_scan_bus(struct pci_pbm_info *pbm,
pbm               416 arch/sparc/kernel/pci.c static void of_scan_pci_bridge(struct pci_pbm_info *pbm,
pbm               475 arch/sparc/kernel/pci.c 		apb_fake_ranges(dev, bus, pbm);
pbm               539 arch/sparc/kernel/pci.c 	pci_of_scan_bus(pbm, node, bus);
pbm               542 arch/sparc/kernel/pci.c static void pci_of_scan_bus(struct pci_pbm_info *pbm,
pbm               576 arch/sparc/kernel/pci.c 		dev = of_create_pci_dev(pbm, child, bus, devfn);
pbm               583 arch/sparc/kernel/pci.c 			of_scan_pci_bridge(pbm, child, dev);
pbm               689 arch/sparc/kernel/pci.c struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm,
pbm               693 arch/sparc/kernel/pci.c 	struct device_node *node = pbm->op->dev.of_node;
pbm               698 arch/sparc/kernel/pci.c 	pci_add_resource_offset(&resources, &pbm->io_space,
pbm               699 arch/sparc/kernel/pci.c 				pbm->io_offset);
pbm               700 arch/sparc/kernel/pci.c 	pci_add_resource_offset(&resources, &pbm->mem_space,
pbm               701 arch/sparc/kernel/pci.c 				pbm->mem_offset);
pbm               702 arch/sparc/kernel/pci.c 	if (pbm->mem64_space.flags)
pbm               703 arch/sparc/kernel/pci.c 		pci_add_resource_offset(&resources, &pbm->mem64_space,
pbm               704 arch/sparc/kernel/pci.c 					pbm->mem64_offset);
pbm               705 arch/sparc/kernel/pci.c 	pbm->busn.start = pbm->pci_first_busno;
pbm               706 arch/sparc/kernel/pci.c 	pbm->busn.end	= pbm->pci_last_busno;
pbm               707 arch/sparc/kernel/pci.c 	pbm->busn.flags	= IORESOURCE_BUS;
pbm               708 arch/sparc/kernel/pci.c 	pci_add_resource(&resources, &pbm->busn);
pbm               709 arch/sparc/kernel/pci.c 	bus = pci_create_root_bus(parent, pbm->pci_first_busno, pbm->pci_ops,
pbm               710 arch/sparc/kernel/pci.c 				  pbm, &resources);
pbm               717 arch/sparc/kernel/pci.c 	pci_of_scan_bus(pbm, node, bus);
pbm               766 arch/sparc/kernel/pci.c 	struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
pbm               770 arch/sparc/kernel/pci.c 		space_size = resource_size(&pbm->io_space);
pbm               772 arch/sparc/kernel/pci.c 		space_size = resource_size(&pbm->mem_space);
pbm               784 arch/sparc/kernel/pci.c 		vma->vm_pgoff = (pbm->io_space.start +
pbm               787 arch/sparc/kernel/pci.c 		vma->vm_pgoff = (pbm->mem_space.start +
pbm               912 arch/sparc/kernel/pci.c 	struct pci_pbm_info *pbm = pbus->sysdata;
pbm               914 arch/sparc/kernel/pci.c 	return pbm->numa_node;
pbm               923 arch/sparc/kernel/pci.c 	struct pci_pbm_info *pbm = pbus->sysdata;
pbm               926 arch/sparc/kernel/pci.c 	if (!pbm) {
pbm               929 arch/sparc/kernel/pci.c 		ret = pbm->index;
pbm               939 arch/sparc/kernel/pci.c 	struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
pbm               942 arch/sparc/kernel/pci.c 	if (!pbm->setup_msi_irq)
pbm               945 arch/sparc/kernel/pci.c 	return pbm->setup_msi_irq(&irq, pdev, desc);
pbm               952 arch/sparc/kernel/pci.c 	struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
pbm               954 arch/sparc/kernel/pci.c 	if (pbm->teardown_msi_irq)
pbm               955 arch/sparc/kernel/pci.c 		pbm->teardown_msi_irq(irq, pdev);
pbm              1140 arch/sparc/kernel/pci.c 				struct pci_pbm_info *pbm = pbus->sysdata;
pbm              1143 arch/sparc/kernel/pci.c 				node = pbm->op->dev.of_node;
pbm                19 arch/sparc/kernel/pci_common.c static int config_out_of_range(struct pci_pbm_info *pbm,
pbm                24 arch/sparc/kernel/pci_common.c 	if (bus < pbm->pci_first_busno ||
pbm                25 arch/sparc/kernel/pci_common.c 	    bus > pbm->pci_last_busno)
pbm                30 arch/sparc/kernel/pci_common.c static void *sun4u_config_mkaddr(struct pci_pbm_info *pbm,
pbm                35 arch/sparc/kernel/pci_common.c 	unsigned long rbits = pbm->config_space_reg_bits;
pbm                37 arch/sparc/kernel/pci_common.c 	if (config_out_of_range(pbm, bus, devfn, reg))
pbm                44 arch/sparc/kernel/pci_common.c 	return (void *)	(pbm->config_space | bus | devfn | reg);
pbm                52 arch/sparc/kernel/pci_common.c static int sun4u_read_pci_cfg_host(struct pci_pbm_info *pbm,
pbm                60 arch/sparc/kernel/pci_common.c 	addr = sun4u_config_mkaddr(pbm, bus, devfn, where);
pbm                95 arch/sparc/kernel/pci_common.c 		sun4u_read_pci_cfg_host(pbm, bus, devfn,
pbm               100 arch/sparc/kernel/pci_common.c 		sun4u_read_pci_cfg_host(pbm, bus, devfn,
pbm               111 arch/sparc/kernel/pci_common.c 	struct pci_pbm_info *pbm = bus_dev->sysdata;
pbm               130 arch/sparc/kernel/pci_common.c 		return sun4u_read_pci_cfg_host(pbm, bus, devfn, where,
pbm               133 arch/sparc/kernel/pci_common.c 	addr = sun4u_config_mkaddr(pbm, bus, devfn, where);
pbm               165 arch/sparc/kernel/pci_common.c static int sun4u_write_pci_cfg_host(struct pci_pbm_info *pbm,
pbm               171 arch/sparc/kernel/pci_common.c 	addr = sun4u_config_mkaddr(pbm, bus, devfn, where);
pbm               203 arch/sparc/kernel/pci_common.c 		sun4u_write_pci_cfg_host(pbm, bus, devfn,
pbm               205 arch/sparc/kernel/pci_common.c 		sun4u_write_pci_cfg_host(pbm, bus, devfn,
pbm               215 arch/sparc/kernel/pci_common.c 	struct pci_pbm_info *pbm = bus_dev->sysdata;
pbm               220 arch/sparc/kernel/pci_common.c 		return sun4u_write_pci_cfg_host(pbm, bus, devfn, where,
pbm               223 arch/sparc/kernel/pci_common.c 	addr = sun4u_config_mkaddr(pbm, bus, devfn, where);
pbm               260 arch/sparc/kernel/pci_common.c 	struct pci_pbm_info *pbm = bus_dev->sysdata;
pbm               261 arch/sparc/kernel/pci_common.c 	u32 devhandle = pbm->devhandle;
pbm               267 arch/sparc/kernel/pci_common.c 	if (config_out_of_range(pbm, bus, devfn, where)) {
pbm               293 arch/sparc/kernel/pci_common.c 	struct pci_pbm_info *pbm = bus_dev->sysdata;
pbm               294 arch/sparc/kernel/pci_common.c 	u32 devhandle = pbm->devhandle;
pbm               299 arch/sparc/kernel/pci_common.c 	if (config_out_of_range(pbm, bus, devfn, where)) {
pbm               318 arch/sparc/kernel/pci_common.c void pci_get_pbm_props(struct pci_pbm_info *pbm)
pbm               320 arch/sparc/kernel/pci_common.c 	const u32 *val = of_get_property(pbm->op->dev.of_node, "bus-range", NULL);
pbm               322 arch/sparc/kernel/pci_common.c 	pbm->pci_first_busno = val[0];
pbm               323 arch/sparc/kernel/pci_common.c 	pbm->pci_last_busno = val[1];
pbm               325 arch/sparc/kernel/pci_common.c 	val = of_get_property(pbm->op->dev.of_node, "ino-bitmap", NULL);
pbm               327 arch/sparc/kernel/pci_common.c 		pbm->ino_bitmap = (((u64)val[1] << 32UL) |
pbm               332 arch/sparc/kernel/pci_common.c static void pci_register_iommu_region(struct pci_pbm_info *pbm)
pbm               334 arch/sparc/kernel/pci_common.c 	const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma",
pbm               342 arch/sparc/kernel/pci_common.c 				pbm->name);
pbm               346 arch/sparc/kernel/pci_common.c 		rp->start = pbm->mem_space.start + (unsigned long) vdma[0];
pbm               349 arch/sparc/kernel/pci_common.c 		if (request_resource(&pbm->mem_space, rp)) {
pbm               351 arch/sparc/kernel/pci_common.c 				pbm->name);
pbm               357 arch/sparc/kernel/pci_common.c void pci_determine_mem_io_space(struct pci_pbm_info *pbm)
pbm               366 arch/sparc/kernel/pci_common.c 	pbm_ranges = of_get_property(pbm->op->dev.of_node, "ranges", &i);
pbm               370 arch/sparc/kernel/pci_common.c 			    pbm->name);
pbm               375 arch/sparc/kernel/pci_common.c 	memset(&pbm->mem64_space, 0, sizeof(struct resource));
pbm               406 arch/sparc/kernel/pci_common.c 			pbm->config_space = a;
pbm               411 arch/sparc/kernel/pci_common.c 			pbm->io_space.start = a;
pbm               412 arch/sparc/kernel/pci_common.c 			pbm->io_space.end = a + size - 1UL;
pbm               413 arch/sparc/kernel/pci_common.c 			pbm->io_space.flags = IORESOURCE_IO;
pbm               414 arch/sparc/kernel/pci_common.c 			pbm->io_offset = a - region_a;
pbm               420 arch/sparc/kernel/pci_common.c 			pbm->mem_space.start = a;
pbm               421 arch/sparc/kernel/pci_common.c 			pbm->mem_space.end = a + size - 1UL;
pbm               422 arch/sparc/kernel/pci_common.c 			pbm->mem_space.flags = IORESOURCE_MEM;
pbm               423 arch/sparc/kernel/pci_common.c 			pbm->mem_offset = a - region_a;
pbm               429 arch/sparc/kernel/pci_common.c 			pbm->mem64_space.start = a;
pbm               430 arch/sparc/kernel/pci_common.c 			pbm->mem64_space.end = a + size - 1UL;
pbm               431 arch/sparc/kernel/pci_common.c 			pbm->mem64_space.flags = IORESOURCE_MEM;
pbm               432 arch/sparc/kernel/pci_common.c 			pbm->mem64_offset = a - region_a;
pbm               443 arch/sparc/kernel/pci_common.c 			    pbm->name,
pbm               448 arch/sparc/kernel/pci_common.c 	if (pbm->io_space.flags)
pbm               450 arch/sparc/kernel/pci_common.c 		       pbm->name, &pbm->io_space, pbm->io_offset);
pbm               451 arch/sparc/kernel/pci_common.c 	if (pbm->mem_space.flags)
pbm               453 arch/sparc/kernel/pci_common.c 		       pbm->name, &pbm->mem_space, pbm->mem_offset);
pbm               454 arch/sparc/kernel/pci_common.c 	if (pbm->mem64_space.flags && pbm->mem_space.flags) {
pbm               455 arch/sparc/kernel/pci_common.c 		if (pbm->mem64_space.start <= pbm->mem_space.end)
pbm               456 arch/sparc/kernel/pci_common.c 			pbm->mem64_space.start = pbm->mem_space.end + 1;
pbm               457 arch/sparc/kernel/pci_common.c 		if (pbm->mem64_space.start > pbm->mem64_space.end)
pbm               458 arch/sparc/kernel/pci_common.c 			pbm->mem64_space.flags = 0;
pbm               461 arch/sparc/kernel/pci_common.c 	if (pbm->mem64_space.flags)
pbm               463 arch/sparc/kernel/pci_common.c 		       pbm->name, &pbm->mem64_space, pbm->mem64_offset);
pbm               465 arch/sparc/kernel/pci_common.c 	pbm->io_space.name = pbm->mem_space.name = pbm->name;
pbm               466 arch/sparc/kernel/pci_common.c 	pbm->mem64_space.name = pbm->name;
pbm               468 arch/sparc/kernel/pci_common.c 	request_resource(&ioport_resource, &pbm->io_space);
pbm               469 arch/sparc/kernel/pci_common.c 	request_resource(&iomem_resource, &pbm->mem_space);
pbm               470 arch/sparc/kernel/pci_common.c 	if (pbm->mem64_space.flags)
pbm               471 arch/sparc/kernel/pci_common.c 		request_resource(&iomem_resource, &pbm->mem64_space);
pbm               473 arch/sparc/kernel/pci_common.c 	pci_register_iommu_region(pbm);
pbm               477 arch/sparc/kernel/pci_common.c void pci_scan_for_target_abort(struct pci_pbm_info *pbm,
pbm               493 arch/sparc/kernel/pci_common.c 				 pbm->name, status);
pbm               498 arch/sparc/kernel/pci_common.c 		pci_scan_for_target_abort(pbm, bus);
pbm               501 arch/sparc/kernel/pci_common.c void pci_scan_for_master_abort(struct pci_pbm_info *pbm,
pbm               516 arch/sparc/kernel/pci_common.c 				 "[%016x]\n", pbm->name, status);
pbm               521 arch/sparc/kernel/pci_common.c 		pci_scan_for_master_abort(pbm, bus);
pbm               524 arch/sparc/kernel/pci_common.c void pci_scan_for_parity_error(struct pci_pbm_info *pbm,
pbm               540 arch/sparc/kernel/pci_common.c 				 pbm->name, status);
pbm               545 arch/sparc/kernel/pci_common.c 		pci_scan_for_parity_error(pbm, bus);
pbm                30 arch/sparc/kernel/pci_fire.c static int pci_fire_pbm_iommu_init(struct pci_pbm_info *pbm)
pbm                32 arch/sparc/kernel/pci_fire.c 	struct iommu *iommu = pbm->iommu;
pbm                44 arch/sparc/kernel/pci_fire.c 	iommu->iommu_control  = pbm->pbm_regs + FIRE_IOMMU_CONTROL;
pbm                45 arch/sparc/kernel/pci_fire.c 	iommu->iommu_tsbbase  = pbm->pbm_regs + FIRE_IOMMU_TSBBASE;
pbm                46 arch/sparc/kernel/pci_fire.c 	iommu->iommu_flush    = pbm->pbm_regs + FIRE_IOMMU_FLUSH;
pbm                47 arch/sparc/kernel/pci_fire.c 	iommu->iommu_flushinv = pbm->pbm_regs + FIRE_IOMMU_FLUSHINV;
pbm                52 arch/sparc/kernel/pci_fire.c 	iommu->write_complete_reg = pbm->controller_regs + 0x410000UL;
pbm                60 arch/sparc/kernel/pci_fire.c 			       pbm->numa_node);
pbm               150 arch/sparc/kernel/pci_fire.c static int pci_fire_get_head(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm               153 arch/sparc/kernel/pci_fire.c 	*head = upa_readq(pbm->pbm_regs + EVENT_QUEUE_HEAD(msiqid));
pbm               157 arch/sparc/kernel/pci_fire.c static int pci_fire_dequeue_msi(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm               163 arch/sparc/kernel/pci_fire.c 	base = (pbm->msi_queues + ((msiqid - pbm->msiq_first) * 8192));
pbm               179 arch/sparc/kernel/pci_fire.c 	upa_writeq(MSI_CLEAR_EQWR_N, pbm->pbm_regs + MSI_CLEAR(msi_num));
pbm               186 arch/sparc/kernel/pci_fire.c 	if (*head >= pbm->msiq_ent_count)
pbm               192 arch/sparc/kernel/pci_fire.c static int pci_fire_set_head(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm               195 arch/sparc/kernel/pci_fire.c 	upa_writeq(head, pbm->pbm_regs + EVENT_QUEUE_HEAD(msiqid));
pbm               199 arch/sparc/kernel/pci_fire.c static int pci_fire_msi_setup(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm               204 arch/sparc/kernel/pci_fire.c 	val = upa_readq(pbm->pbm_regs + MSI_MAP(msi));
pbm               207 arch/sparc/kernel/pci_fire.c 	upa_writeq(val, pbm->pbm_regs + MSI_MAP(msi));
pbm               209 arch/sparc/kernel/pci_fire.c 	upa_writeq(MSI_CLEAR_EQWR_N, pbm->pbm_regs + MSI_CLEAR(msi));
pbm               211 arch/sparc/kernel/pci_fire.c 	val = upa_readq(pbm->pbm_regs + MSI_MAP(msi));
pbm               213 arch/sparc/kernel/pci_fire.c 	upa_writeq(val, pbm->pbm_regs + MSI_MAP(msi));
pbm               218 arch/sparc/kernel/pci_fire.c static int pci_fire_msi_teardown(struct pci_pbm_info *pbm, unsigned long msi)
pbm               222 arch/sparc/kernel/pci_fire.c 	val = upa_readq(pbm->pbm_regs + MSI_MAP(msi));
pbm               226 arch/sparc/kernel/pci_fire.c 	upa_writeq(val, pbm->pbm_regs + MSI_MAP(msi));
pbm               231 arch/sparc/kernel/pci_fire.c static int pci_fire_msiq_alloc(struct pci_pbm_info *pbm)
pbm               243 arch/sparc/kernel/pci_fire.c 	pbm->msi_queues = (void *) pages;
pbm               246 arch/sparc/kernel/pci_fire.c 		    __pa(pbm->msi_queues)),
pbm               247 arch/sparc/kernel/pci_fire.c 		   pbm->pbm_regs + EVENT_QUEUE_BASE_ADDR_REG);
pbm               249 arch/sparc/kernel/pci_fire.c 	upa_writeq(pbm->portid << 6, pbm->pbm_regs + IMONDO_DATA0);
pbm               250 arch/sparc/kernel/pci_fire.c 	upa_writeq(0, pbm->pbm_regs + IMONDO_DATA1);
pbm               252 arch/sparc/kernel/pci_fire.c 	upa_writeq(pbm->msi32_start, pbm->pbm_regs + MSI_32BIT_ADDR);
pbm               253 arch/sparc/kernel/pci_fire.c 	upa_writeq(pbm->msi64_start, pbm->pbm_regs + MSI_64BIT_ADDR);
pbm               255 arch/sparc/kernel/pci_fire.c 	for (i = 0; i < pbm->msiq_num; i++) {
pbm               256 arch/sparc/kernel/pci_fire.c 		upa_writeq(0, pbm->pbm_regs + EVENT_QUEUE_HEAD(i));
pbm               257 arch/sparc/kernel/pci_fire.c 		upa_writeq(0, pbm->pbm_regs + EVENT_QUEUE_TAIL(i));
pbm               263 arch/sparc/kernel/pci_fire.c static void pci_fire_msiq_free(struct pci_pbm_info *pbm)
pbm               268 arch/sparc/kernel/pci_fire.c 	pages = (unsigned long) pbm->msi_queues;
pbm               272 arch/sparc/kernel/pci_fire.c 	pbm->msi_queues = NULL;
pbm               275 arch/sparc/kernel/pci_fire.c static int pci_fire_msiq_build_irq(struct pci_pbm_info *pbm,
pbm               279 arch/sparc/kernel/pci_fire.c 	unsigned long cregs = (unsigned long) pbm->pbm_regs;
pbm               295 arch/sparc/kernel/pci_fire.c 	fixup = ((pbm->portid << 6) | devino) - int_ctrlr;
pbm               302 arch/sparc/kernel/pci_fire.c 		   pbm->pbm_regs + EVENT_QUEUE_CONTROL_SET(msiqid));
pbm               318 arch/sparc/kernel/pci_fire.c static void pci_fire_msi_init(struct pci_pbm_info *pbm)
pbm               320 arch/sparc/kernel/pci_fire.c 	sparc64_pbm_msi_init(pbm, &pci_fire_msiq_ops);
pbm               323 arch/sparc/kernel/pci_fire.c static void pci_fire_msi_init(struct pci_pbm_info *pbm)
pbm               366 arch/sparc/kernel/pci_fire.c static void pci_fire_hw_init(struct pci_pbm_info *pbm)
pbm               371 arch/sparc/kernel/pci_fire.c 		   pbm->controller_regs + FIRE_PARITY_CONTROL);
pbm               381 arch/sparc/kernel/pci_fire.c 		   pbm->controller_regs + FIRE_FATAL_RESET_CTL);
pbm               383 arch/sparc/kernel/pci_fire.c 	upa_writeq(~(u64)0, pbm->controller_regs + FIRE_CORE_INTR_ENABLE);
pbm               385 arch/sparc/kernel/pci_fire.c 	val = upa_readq(pbm->pbm_regs + FIRE_TLU_CTRL);
pbm               389 arch/sparc/kernel/pci_fire.c 	upa_writeq(val, pbm->pbm_regs + FIRE_TLU_CTRL);
pbm               390 arch/sparc/kernel/pci_fire.c 	upa_writeq(0, pbm->pbm_regs + FIRE_TLU_DEV_CTRL);
pbm               392 arch/sparc/kernel/pci_fire.c 		   pbm->pbm_regs + FIRE_TLU_LINK_CTRL);
pbm               394 arch/sparc/kernel/pci_fire.c 	upa_writeq(0, pbm->pbm_regs + FIRE_LPU_RESET);
pbm               395 arch/sparc/kernel/pci_fire.c 	upa_writeq(FIRE_LPU_LLCFG_VC0, pbm->pbm_regs + FIRE_LPU_LLCFG);
pbm               397 arch/sparc/kernel/pci_fire.c 		   pbm->pbm_regs + FIRE_LPU_FCTRL_UCTRL);
pbm               399 arch/sparc/kernel/pci_fire.c 		   pbm->pbm_regs + FIRE_LPU_TXL_FIFOP);
pbm               400 arch/sparc/kernel/pci_fire.c 	upa_writeq(3000000, pbm->pbm_regs + FIRE_LPU_LTSSM_CFG2);
pbm               401 arch/sparc/kernel/pci_fire.c 	upa_writeq(500000, pbm->pbm_regs + FIRE_LPU_LTSSM_CFG3);
pbm               403 arch/sparc/kernel/pci_fire.c 		   pbm->pbm_regs + FIRE_LPU_LTSSM_CFG4);
pbm               404 arch/sparc/kernel/pci_fire.c 	upa_writeq(0, pbm->pbm_regs + FIRE_LPU_LTSSM_CFG5);
pbm               406 arch/sparc/kernel/pci_fire.c 	upa_writeq(~(u64)0, pbm->pbm_regs + FIRE_DMC_IENAB);
pbm               407 arch/sparc/kernel/pci_fire.c 	upa_writeq(0, pbm->pbm_regs + FIRE_DMC_DBG_SEL_A);
pbm               408 arch/sparc/kernel/pci_fire.c 	upa_writeq(0, pbm->pbm_regs + FIRE_DMC_DBG_SEL_B);
pbm               410 arch/sparc/kernel/pci_fire.c 	upa_writeq(~(u64)0, pbm->pbm_regs + FIRE_PEC_IENAB);
pbm               413 arch/sparc/kernel/pci_fire.c static int pci_fire_pbm_init(struct pci_pbm_info *pbm,
pbm               420 arch/sparc/kernel/pci_fire.c 	pbm->numa_node = NUMA_NO_NODE;
pbm               422 arch/sparc/kernel/pci_fire.c 	pbm->pci_ops = &sun4u_pci_ops;
pbm               423 arch/sparc/kernel/pci_fire.c 	pbm->config_space_reg_bits = 12;
pbm               425 arch/sparc/kernel/pci_fire.c 	pbm->index = pci_num_pbms++;
pbm               427 arch/sparc/kernel/pci_fire.c 	pbm->portid = portid;
pbm               428 arch/sparc/kernel/pci_fire.c 	pbm->op = op;
pbm               429 arch/sparc/kernel/pci_fire.c 	pbm->name = dp->full_name;
pbm               432 arch/sparc/kernel/pci_fire.c 	pbm->pbm_regs = regs[0].phys_addr;
pbm               433 arch/sparc/kernel/pci_fire.c 	pbm->controller_regs = regs[1].phys_addr - 0x410000UL;
pbm               435 arch/sparc/kernel/pci_fire.c 	printk("%s: SUN4U PCIE Bus Module\n", pbm->name);
pbm               437 arch/sparc/kernel/pci_fire.c 	pci_determine_mem_io_space(pbm);
pbm               439 arch/sparc/kernel/pci_fire.c 	pci_get_pbm_props(pbm);
pbm               441 arch/sparc/kernel/pci_fire.c 	pci_fire_hw_init(pbm);
pbm               443 arch/sparc/kernel/pci_fire.c 	err = pci_fire_pbm_iommu_init(pbm);
pbm               447 arch/sparc/kernel/pci_fire.c 	pci_fire_msi_init(pbm);
pbm               449 arch/sparc/kernel/pci_fire.c 	pbm->pci_bus = pci_scan_one_pbm(pbm, &op->dev);
pbm               453 arch/sparc/kernel/pci_fire.c 	pbm->next = pci_pbm_root;
pbm               454 arch/sparc/kernel/pci_fire.c 	pci_pbm_root = pbm;
pbm               462 arch/sparc/kernel/pci_fire.c 	struct pci_pbm_info *pbm;
pbm               470 arch/sparc/kernel/pci_fire.c 	pbm = kzalloc(sizeof(*pbm), GFP_KERNEL);
pbm               471 arch/sparc/kernel/pci_fire.c 	if (!pbm) {
pbm               482 arch/sparc/kernel/pci_fire.c 	pbm->iommu = iommu;
pbm               484 arch/sparc/kernel/pci_fire.c 	err = pci_fire_pbm_init(pbm, op, portid);
pbm               488 arch/sparc/kernel/pci_fire.c 	dev_set_drvdata(&op->dev, pbm);
pbm               493 arch/sparc/kernel/pci_fire.c 	kfree(pbm->iommu);
pbm               496 arch/sparc/kernel/pci_fire.c 	kfree(pbm);
pbm                37 arch/sparc/kernel/pci_impl.h 	int (*get_head)(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm                39 arch/sparc/kernel/pci_impl.h 	int (*dequeue_msi)(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm                41 arch/sparc/kernel/pci_impl.h 	int (*set_head)(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm                43 arch/sparc/kernel/pci_impl.h 	int (*msi_setup)(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm                45 arch/sparc/kernel/pci_impl.h 	int (*msi_teardown)(struct pci_pbm_info *pbm, unsigned long msi);
pbm                46 arch/sparc/kernel/pci_impl.h 	int (*msiq_alloc)(struct pci_pbm_info *pbm);
pbm                47 arch/sparc/kernel/pci_impl.h 	void (*msiq_free)(struct pci_pbm_info *pbm);
pbm                48 arch/sparc/kernel/pci_impl.h 	int (*msiq_build_irq)(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm                52 arch/sparc/kernel/pci_impl.h void sparc64_pbm_msi_init(struct pci_pbm_info *pbm,
pbm                56 arch/sparc/kernel/pci_impl.h 	struct pci_pbm_info *pbm;
pbm               167 arch/sparc/kernel/pci_impl.h void pci_get_pbm_props(struct pci_pbm_info *pbm);
pbm               168 arch/sparc/kernel/pci_impl.h struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm,
pbm               170 arch/sparc/kernel/pci_impl.h void pci_determine_mem_io_space(struct pci_pbm_info *pbm);
pbm                16 arch/sparc/kernel/pci_msi.c 	struct pci_pbm_info *pbm = msiq_cookie->pbm;
pbm                22 arch/sparc/kernel/pci_msi.c 	ops = pbm->msi_ops;
pbm                24 arch/sparc/kernel/pci_msi.c 	err = ops->get_head(pbm, msiqid, &head);
pbm                32 arch/sparc/kernel/pci_msi.c 		err = ops->dequeue_msi(pbm, msiqid, &head, &msi);
pbm                36 arch/sparc/kernel/pci_msi.c 			irq = pbm->msi_irq_table[msi - pbm->msi_first];
pbm                47 arch/sparc/kernel/pci_msi.c 		err = ops->set_head(pbm, msiqid, head);
pbm                74 arch/sparc/kernel/pci_msi.c static u32 pick_msiq(struct pci_pbm_info *pbm)
pbm                82 arch/sparc/kernel/pci_msi.c 	rotor = pbm->msiq_rotor;
pbm                83 arch/sparc/kernel/pci_msi.c 	ret = pbm->msiq_first + rotor;
pbm                85 arch/sparc/kernel/pci_msi.c 	if (++rotor >= pbm->msiq_num)
pbm                87 arch/sparc/kernel/pci_msi.c 	pbm->msiq_rotor = rotor;
pbm                95 arch/sparc/kernel/pci_msi.c static int alloc_msi(struct pci_pbm_info *pbm)
pbm                99 arch/sparc/kernel/pci_msi.c 	for (i = 0; i < pbm->msi_num; i++) {
pbm               100 arch/sparc/kernel/pci_msi.c 		if (!test_and_set_bit(i, pbm->msi_bitmap))
pbm               101 arch/sparc/kernel/pci_msi.c 			return i + pbm->msi_first;
pbm               107 arch/sparc/kernel/pci_msi.c static void free_msi(struct pci_pbm_info *pbm, int msi_num)
pbm               109 arch/sparc/kernel/pci_msi.c 	msi_num -= pbm->msi_first;
pbm               110 arch/sparc/kernel/pci_msi.c 	clear_bit(msi_num, pbm->msi_bitmap);
pbm               126 arch/sparc/kernel/pci_msi.c 	struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
pbm               127 arch/sparc/kernel/pci_msi.c 	const struct sparc64_msiq_ops *ops = pbm->msi_ops;
pbm               140 arch/sparc/kernel/pci_msi.c 	err = alloc_msi(pbm);
pbm               146 arch/sparc/kernel/pci_msi.c 	msiqid = pick_msiq(pbm);
pbm               148 arch/sparc/kernel/pci_msi.c 	err = ops->msi_setup(pbm, msiqid, msi,
pbm               153 arch/sparc/kernel/pci_msi.c 	pbm->msi_irq_table[msi - pbm->msi_first] = *irq_p;
pbm               156 arch/sparc/kernel/pci_msi.c 		msg.address_hi = pbm->msi64_start >> 32;
pbm               157 arch/sparc/kernel/pci_msi.c 		msg.address_lo = pbm->msi64_start & 0xffffffff;
pbm               160 arch/sparc/kernel/pci_msi.c 		msg.address_lo = pbm->msi32_start;
pbm               170 arch/sparc/kernel/pci_msi.c 	free_msi(pbm, msi);
pbm               184 arch/sparc/kernel/pci_msi.c 	struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
pbm               185 arch/sparc/kernel/pci_msi.c 	const struct sparc64_msiq_ops *ops = pbm->msi_ops;
pbm               189 arch/sparc/kernel/pci_msi.c 	for (i = 0; i < pbm->msi_num; i++) {
pbm               190 arch/sparc/kernel/pci_msi.c 		if (pbm->msi_irq_table[i] == irq)
pbm               193 arch/sparc/kernel/pci_msi.c 	if (i >= pbm->msi_num) {
pbm               194 arch/sparc/kernel/pci_msi.c 		pci_err(pdev, "%s: teardown: No MSI for irq %u\n", pbm->name,
pbm               199 arch/sparc/kernel/pci_msi.c 	msi_num = pbm->msi_first + i;
pbm               200 arch/sparc/kernel/pci_msi.c 	pbm->msi_irq_table[i] = ~0U;
pbm               202 arch/sparc/kernel/pci_msi.c 	err = ops->msi_teardown(pbm, msi_num);
pbm               205 arch/sparc/kernel/pci_msi.c 			"irq %u, gives error %d\n", pbm->name, msi_num, irq,
pbm               210 arch/sparc/kernel/pci_msi.c 	free_msi(pbm, msi_num);
pbm               216 arch/sparc/kernel/pci_msi.c static int msi_bitmap_alloc(struct pci_pbm_info *pbm)
pbm               221 arch/sparc/kernel/pci_msi.c 	size = (pbm->msi_num + (bits_per_ulong - 1)) & ~(bits_per_ulong - 1);
pbm               225 arch/sparc/kernel/pci_msi.c 	pbm->msi_bitmap = kzalloc(size, GFP_KERNEL);
pbm               226 arch/sparc/kernel/pci_msi.c 	if (!pbm->msi_bitmap)
pbm               232 arch/sparc/kernel/pci_msi.c static void msi_bitmap_free(struct pci_pbm_info *pbm)
pbm               234 arch/sparc/kernel/pci_msi.c 	kfree(pbm->msi_bitmap);
pbm               235 arch/sparc/kernel/pci_msi.c 	pbm->msi_bitmap = NULL;
pbm               238 arch/sparc/kernel/pci_msi.c static int msi_table_alloc(struct pci_pbm_info *pbm)
pbm               242 arch/sparc/kernel/pci_msi.c 	size = pbm->msiq_num * sizeof(struct sparc64_msiq_cookie);
pbm               243 arch/sparc/kernel/pci_msi.c 	pbm->msiq_irq_cookies = kzalloc(size, GFP_KERNEL);
pbm               244 arch/sparc/kernel/pci_msi.c 	if (!pbm->msiq_irq_cookies)
pbm               247 arch/sparc/kernel/pci_msi.c 	for (i = 0; i < pbm->msiq_num; i++) {
pbm               250 arch/sparc/kernel/pci_msi.c 		p = &pbm->msiq_irq_cookies[i];
pbm               251 arch/sparc/kernel/pci_msi.c 		p->pbm = pbm;
pbm               252 arch/sparc/kernel/pci_msi.c 		p->msiqid = pbm->msiq_first + i;
pbm               255 arch/sparc/kernel/pci_msi.c 	size = pbm->msi_num * sizeof(unsigned int);
pbm               256 arch/sparc/kernel/pci_msi.c 	pbm->msi_irq_table = kzalloc(size, GFP_KERNEL);
pbm               257 arch/sparc/kernel/pci_msi.c 	if (!pbm->msi_irq_table) {
pbm               258 arch/sparc/kernel/pci_msi.c 		kfree(pbm->msiq_irq_cookies);
pbm               259 arch/sparc/kernel/pci_msi.c 		pbm->msiq_irq_cookies = NULL;
pbm               266 arch/sparc/kernel/pci_msi.c static void msi_table_free(struct pci_pbm_info *pbm)
pbm               268 arch/sparc/kernel/pci_msi.c 	kfree(pbm->msiq_irq_cookies);
pbm               269 arch/sparc/kernel/pci_msi.c 	pbm->msiq_irq_cookies = NULL;
pbm               271 arch/sparc/kernel/pci_msi.c 	kfree(pbm->msi_irq_table);
pbm               272 arch/sparc/kernel/pci_msi.c 	pbm->msi_irq_table = NULL;
pbm               275 arch/sparc/kernel/pci_msi.c static int bringup_one_msi_queue(struct pci_pbm_info *pbm,
pbm               280 arch/sparc/kernel/pci_msi.c 	int irq = ops->msiq_build_irq(pbm, msiqid, devino);
pbm               286 arch/sparc/kernel/pci_msi.c 	nid = pbm->numa_node;
pbm               295 arch/sparc/kernel/pci_msi.c 			  &pbm->msiq_irq_cookies[msiqid - pbm->msiq_first]);
pbm               302 arch/sparc/kernel/pci_msi.c static int sparc64_bringup_msi_queues(struct pci_pbm_info *pbm,
pbm               307 arch/sparc/kernel/pci_msi.c 	for (i = 0; i < pbm->msiq_num; i++) {
pbm               308 arch/sparc/kernel/pci_msi.c 		unsigned long msiqid = i + pbm->msiq_first;
pbm               309 arch/sparc/kernel/pci_msi.c 		unsigned long devino = i + pbm->msiq_first_devino;
pbm               312 arch/sparc/kernel/pci_msi.c 		err = bringup_one_msi_queue(pbm, ops, msiqid, devino);
pbm               320 arch/sparc/kernel/pci_msi.c void sparc64_pbm_msi_init(struct pci_pbm_info *pbm,
pbm               326 arch/sparc/kernel/pci_msi.c 	val = of_get_property(pbm->op->dev.of_node, "#msi-eqs", &len);
pbm               329 arch/sparc/kernel/pci_msi.c 	pbm->msiq_num = *val;
pbm               330 arch/sparc/kernel/pci_msi.c 	if (pbm->msiq_num) {
pbm               349 arch/sparc/kernel/pci_msi.c 		val = of_get_property(pbm->op->dev.of_node, "msi-eq-size", &len);
pbm               353 arch/sparc/kernel/pci_msi.c 		pbm->msiq_ent_count = *val;
pbm               355 arch/sparc/kernel/pci_msi.c 		mqp = of_get_property(pbm->op->dev.of_node,
pbm               358 arch/sparc/kernel/pci_msi.c 			mqp = of_get_property(pbm->op->dev.of_node,
pbm               363 arch/sparc/kernel/pci_msi.c 		pbm->msiq_first = mqp->first_msiq;
pbm               364 arch/sparc/kernel/pci_msi.c 		pbm->msiq_first_devino = mqp->first_devino;
pbm               366 arch/sparc/kernel/pci_msi.c 		val = of_get_property(pbm->op->dev.of_node, "#msi", &len);
pbm               369 arch/sparc/kernel/pci_msi.c 		pbm->msi_num = *val;
pbm               371 arch/sparc/kernel/pci_msi.c 		mrng = of_get_property(pbm->op->dev.of_node, "msi-ranges", &len);
pbm               374 arch/sparc/kernel/pci_msi.c 		pbm->msi_first = mrng->first_msi;
pbm               376 arch/sparc/kernel/pci_msi.c 		val = of_get_property(pbm->op->dev.of_node, "msi-data-mask", &len);
pbm               379 arch/sparc/kernel/pci_msi.c 		pbm->msi_data_mask = *val;
pbm               381 arch/sparc/kernel/pci_msi.c 		val = of_get_property(pbm->op->dev.of_node, "msix-data-width", &len);
pbm               384 arch/sparc/kernel/pci_msi.c 		pbm->msix_data_width = *val;
pbm               386 arch/sparc/kernel/pci_msi.c 		arng = of_get_property(pbm->op->dev.of_node, "msi-address-ranges",
pbm               390 arch/sparc/kernel/pci_msi.c 		pbm->msi32_start = ((u64)arng->msi32_high << 32) |
pbm               392 arch/sparc/kernel/pci_msi.c 		pbm->msi64_start = ((u64)arng->msi64_high << 32) |
pbm               394 arch/sparc/kernel/pci_msi.c 		pbm->msi32_len = arng->msi32_len;
pbm               395 arch/sparc/kernel/pci_msi.c 		pbm->msi64_len = arng->msi64_len;
pbm               397 arch/sparc/kernel/pci_msi.c 		if (msi_bitmap_alloc(pbm))
pbm               400 arch/sparc/kernel/pci_msi.c 		if (msi_table_alloc(pbm)) {
pbm               401 arch/sparc/kernel/pci_msi.c 			msi_bitmap_free(pbm);
pbm               405 arch/sparc/kernel/pci_msi.c 		if (ops->msiq_alloc(pbm)) {
pbm               406 arch/sparc/kernel/pci_msi.c 			msi_table_free(pbm);
pbm               407 arch/sparc/kernel/pci_msi.c 			msi_bitmap_free(pbm);
pbm               411 arch/sparc/kernel/pci_msi.c 		if (sparc64_bringup_msi_queues(pbm, ops)) {
pbm               412 arch/sparc/kernel/pci_msi.c 			ops->msiq_free(pbm);
pbm               413 arch/sparc/kernel/pci_msi.c 			msi_table_free(pbm);
pbm               414 arch/sparc/kernel/pci_msi.c 			msi_bitmap_free(pbm);
pbm               420 arch/sparc/kernel/pci_msi.c 		       pbm->name,
pbm               421 arch/sparc/kernel/pci_msi.c 		       pbm->msiq_first, pbm->msiq_num,
pbm               422 arch/sparc/kernel/pci_msi.c 		       pbm->msiq_ent_count,
pbm               423 arch/sparc/kernel/pci_msi.c 		       pbm->msiq_first_devino);
pbm               426 arch/sparc/kernel/pci_msi.c 		       pbm->name,
pbm               427 arch/sparc/kernel/pci_msi.c 		       pbm->msi_first, pbm->msi_num, pbm->msi_data_mask,
pbm               428 arch/sparc/kernel/pci_msi.c 		       pbm->msix_data_width);
pbm               431 arch/sparc/kernel/pci_msi.c 		       pbm->name,
pbm               432 arch/sparc/kernel/pci_msi.c 		       pbm->msi32_start, pbm->msi32_len,
pbm               433 arch/sparc/kernel/pci_msi.c 		       pbm->msi64_start, pbm->msi64_len);
pbm               435 arch/sparc/kernel/pci_msi.c 		       pbm->name,
pbm               436 arch/sparc/kernel/pci_msi.c 		       __pa(pbm->msi_queues));
pbm               438 arch/sparc/kernel/pci_msi.c 		pbm->msi_ops = ops;
pbm               439 arch/sparc/kernel/pci_msi.c 		pbm->setup_msi_irq = sparc64_setup_msi_irq;
pbm               440 arch/sparc/kernel/pci_msi.c 		pbm->teardown_msi_irq = sparc64_teardown_msi_irq;
pbm               445 arch/sparc/kernel/pci_msi.c 	pbm->msiq_num = 0;
pbm               446 arch/sparc/kernel/pci_msi.c 	printk(KERN_INFO "%s: No MSI support.\n", pbm->name);
pbm               135 arch/sparc/kernel/pci_psycho.c 	struct pci_pbm_info *pbm = dev_id;
pbm               136 arch/sparc/kernel/pci_psycho.c 	unsigned long afsr_reg = pbm->controller_regs + PSYCHO_UE_AFSR;
pbm               137 arch/sparc/kernel/pci_psycho.c 	unsigned long afar_reg = pbm->controller_regs + PSYCHO_UE_AFAR;
pbm               155 arch/sparc/kernel/pci_psycho.c 	       pbm->name,
pbm               163 arch/sparc/kernel/pci_psycho.c 	       pbm->name,
pbm               168 arch/sparc/kernel/pci_psycho.c 	printk("%s: UE AFAR [%016lx]\n", pbm->name, afar);
pbm               169 arch/sparc/kernel/pci_psycho.c 	printk("%s: UE Secondary errors [", pbm->name);
pbm               188 arch/sparc/kernel/pci_psycho.c 	psycho_check_iommu_error(pbm, afsr, afar, UE_ERR);
pbm               189 arch/sparc/kernel/pci_psycho.c 	if (pbm->sibling)
pbm               190 arch/sparc/kernel/pci_psycho.c 		psycho_check_iommu_error(pbm->sibling, afsr, afar, UE_ERR);
pbm               214 arch/sparc/kernel/pci_psycho.c 	struct pci_pbm_info *pbm = dev_id;
pbm               215 arch/sparc/kernel/pci_psycho.c 	unsigned long afsr_reg = pbm->controller_regs + PSYCHO_CE_AFSR;
pbm               216 arch/sparc/kernel/pci_psycho.c 	unsigned long afar_reg = pbm->controller_regs + PSYCHO_CE_AFAR;
pbm               234 arch/sparc/kernel/pci_psycho.c 	       pbm->name,
pbm               247 arch/sparc/kernel/pci_psycho.c 	       pbm->name,
pbm               253 arch/sparc/kernel/pci_psycho.c 	printk("%s: CE AFAR [%016lx]\n", pbm->name, afar);
pbm               254 arch/sparc/kernel/pci_psycho.c 	printk("%s: CE Secondary errors [", pbm->name);
pbm               288 arch/sparc/kernel/pci_psycho.c static void psycho_register_error_handlers(struct pci_pbm_info *pbm)
pbm               290 arch/sparc/kernel/pci_psycho.c 	struct platform_device *op = of_find_device_by_node(pbm->op->dev.of_node);
pbm               291 arch/sparc/kernel/pci_psycho.c 	unsigned long base = pbm->controller_regs;
pbm               315 arch/sparc/kernel/pci_psycho.c 			  "PSYCHO_UE", pbm);
pbm               317 arch/sparc/kernel/pci_psycho.c 			  "PSYCHO_CE", pbm);
pbm               324 arch/sparc/kernel/pci_psycho.c 			  "PSYCHO_PCIERR", pbm);
pbm               327 arch/sparc/kernel/pci_psycho.c 		       "err=%d\n", pbm->name, err);
pbm               353 arch/sparc/kernel/pci_psycho.c static void pbm_config_busmastering(struct pci_pbm_info *pbm)
pbm               360 arch/sparc/kernel/pci_psycho.c 	addr = psycho_pci_config_mkaddr(pbm, pbm->pci_first_busno,
pbm               365 arch/sparc/kernel/pci_psycho.c 	addr = psycho_pci_config_mkaddr(pbm, pbm->pci_first_busno,
pbm               370 arch/sparc/kernel/pci_psycho.c static void psycho_scan_bus(struct pci_pbm_info *pbm,
pbm               373 arch/sparc/kernel/pci_psycho.c 	pbm_config_busmastering(pbm);
pbm               374 arch/sparc/kernel/pci_psycho.c 	pbm->is_66mhz_capable = 0;
pbm               375 arch/sparc/kernel/pci_psycho.c 	pbm->pci_bus = pci_scan_one_pbm(pbm, parent);
pbm               380 arch/sparc/kernel/pci_psycho.c 	psycho_register_error_handlers(pbm);
pbm               395 arch/sparc/kernel/pci_psycho.c static void psycho_controller_hwinit(struct pci_pbm_info *pbm)
pbm               399 arch/sparc/kernel/pci_psycho.c 	upa_writeq(5, pbm->controller_regs + PSYCHO_IRQ_RETRY);
pbm               402 arch/sparc/kernel/pci_psycho.c 	tmp = upa_readq(pbm->controller_regs + PSYCHO_PCIA_CTRL);
pbm               404 arch/sparc/kernel/pci_psycho.c 	upa_writeq(tmp, pbm->controller_regs + PSYCHO_PCIA_CTRL);
pbm               406 arch/sparc/kernel/pci_psycho.c 	tmp = upa_readq(pbm->controller_regs + PSYCHO_PCIB_CTRL);
pbm               408 arch/sparc/kernel/pci_psycho.c 	upa_writeq(tmp, pbm->controller_regs + PSYCHO_PCIB_CTRL);
pbm               414 arch/sparc/kernel/pci_psycho.c 	tmp = upa_readq(pbm->controller_regs + PSYCHO_PCIA_DIAG);
pbm               416 arch/sparc/kernel/pci_psycho.c 	upa_writeq(tmp, pbm->controller_regs + PSYCHO_PCIA_DIAG);
pbm               418 arch/sparc/kernel/pci_psycho.c 	tmp = upa_readq(pbm->controller_regs + PSYCHO_PCIB_DIAG);
pbm               420 arch/sparc/kernel/pci_psycho.c 	upa_writeq(tmp, pbm->controller_regs + PSYCHO_PCIB_DIAG);
pbm               423 arch/sparc/kernel/pci_psycho.c static void psycho_pbm_strbuf_init(struct pci_pbm_info *pbm,
pbm               426 arch/sparc/kernel/pci_psycho.c 	unsigned long base = pbm->controller_regs;
pbm               430 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_control  = base + PSYCHO_STRBUF_CONTROL_A;
pbm               431 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_pflush   = base + PSYCHO_STRBUF_FLUSH_A;
pbm               432 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_fsync    = base + PSYCHO_STRBUF_FSYNC_A;
pbm               433 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_err_stat = base + PSYCHO_STC_ERR_A;
pbm               434 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_tag_diag = base + PSYCHO_STC_TAG_A;
pbm               435 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_line_diag= base + PSYCHO_STC_LINE_A;
pbm               437 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_control  = base + PSYCHO_STRBUF_CONTROL_B;
pbm               438 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_pflush   = base + PSYCHO_STRBUF_FLUSH_B;
pbm               439 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_fsync    = base + PSYCHO_STRBUF_FSYNC_B;
pbm               440 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_err_stat = base + PSYCHO_STC_ERR_B;
pbm               441 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_tag_diag = base + PSYCHO_STC_TAG_B;
pbm               442 arch/sparc/kernel/pci_psycho.c 		pbm->stc.strbuf_line_diag= base + PSYCHO_STC_LINE_B;
pbm               445 arch/sparc/kernel/pci_psycho.c 	pbm->stc.strbuf_ctxflush      = 0;
pbm               446 arch/sparc/kernel/pci_psycho.c 	pbm->stc.strbuf_ctxmatch_base = 0;
pbm               448 arch/sparc/kernel/pci_psycho.c 	pbm->stc.strbuf_flushflag = (volatile unsigned long *)
pbm               449 arch/sparc/kernel/pci_psycho.c 		((((unsigned long)&pbm->stc.__flushflag_buf[0])
pbm               452 arch/sparc/kernel/pci_psycho.c 	pbm->stc.strbuf_flushflag_pa = (unsigned long)
pbm               453 arch/sparc/kernel/pci_psycho.c 		__pa(pbm->stc.strbuf_flushflag);
pbm               465 arch/sparc/kernel/pci_psycho.c 	control = upa_readq(pbm->stc.strbuf_control);
pbm               475 arch/sparc/kernel/pci_psycho.c 	upa_writeq(control, pbm->stc.strbuf_control);
pbm               477 arch/sparc/kernel/pci_psycho.c 	pbm->stc.strbuf_enabled = 1;
pbm               487 arch/sparc/kernel/pci_psycho.c static void psycho_pbm_init(struct pci_pbm_info *pbm,
pbm               490 arch/sparc/kernel/pci_psycho.c 	psycho_pbm_init_common(pbm, op, "PSYCHO", PBM_CHIP_TYPE_PSYCHO);
pbm               491 arch/sparc/kernel/pci_psycho.c 	psycho_pbm_strbuf_init(pbm, is_pbm_a);
pbm               492 arch/sparc/kernel/pci_psycho.c 	psycho_scan_bus(pbm, &op->dev);
pbm               497 arch/sparc/kernel/pci_psycho.c 	struct pci_pbm_info *pbm;
pbm               499 arch/sparc/kernel/pci_psycho.c 	for (pbm = pci_pbm_root; pbm; pbm = pbm->next) {
pbm               500 arch/sparc/kernel/pci_psycho.c 		if (pbm->portid == upa_portid)
pbm               501 arch/sparc/kernel/pci_psycho.c 			return pbm;
pbm               512 arch/sparc/kernel/pci_psycho.c 	struct pci_pbm_info *pbm;
pbm               520 arch/sparc/kernel/pci_psycho.c 	pbm = kzalloc(sizeof(*pbm), GFP_KERNEL);
pbm               521 arch/sparc/kernel/pci_psycho.c 	if (!pbm) {
pbm               526 arch/sparc/kernel/pci_psycho.c 	pbm->sibling = psycho_find_sibling(upa_portid);
pbm               527 arch/sparc/kernel/pci_psycho.c 	if (pbm->sibling) {
pbm               528 arch/sparc/kernel/pci_psycho.c 		iommu = pbm->sibling->iommu;
pbm               537 arch/sparc/kernel/pci_psycho.c 	pbm->iommu = iommu;
pbm               538 arch/sparc/kernel/pci_psycho.c 	pbm->portid = upa_portid;
pbm               549 arch/sparc/kernel/pci_psycho.c 	pbm->controller_regs = pr_regs[2].phys_addr;
pbm               550 arch/sparc/kernel/pci_psycho.c 	pbm->config_space = (pr_regs[2].phys_addr + PSYCHO_CONFIGSPACE);
pbm               553 arch/sparc/kernel/pci_psycho.c 		pbm->pci_afsr = pbm->controller_regs + PSYCHO_PCI_AFSR_A;
pbm               554 arch/sparc/kernel/pci_psycho.c 		pbm->pci_afar = pbm->controller_regs + PSYCHO_PCI_AFAR_A;
pbm               555 arch/sparc/kernel/pci_psycho.c 		pbm->pci_csr  = pbm->controller_regs + PSYCHO_PCIA_CTRL;
pbm               557 arch/sparc/kernel/pci_psycho.c 		pbm->pci_afsr = pbm->controller_regs + PSYCHO_PCI_AFSR_B;
pbm               558 arch/sparc/kernel/pci_psycho.c 		pbm->pci_afar = pbm->controller_regs + PSYCHO_PCI_AFAR_B;
pbm               559 arch/sparc/kernel/pci_psycho.c 		pbm->pci_csr  = pbm->controller_regs + PSYCHO_PCIB_CTRL;
pbm               562 arch/sparc/kernel/pci_psycho.c 	psycho_controller_hwinit(pbm);
pbm               563 arch/sparc/kernel/pci_psycho.c 	if (!pbm->sibling) {
pbm               564 arch/sparc/kernel/pci_psycho.c 		err = psycho_iommu_init(pbm, 128, 0xc0000000,
pbm               571 arch/sparc/kernel/pci_psycho.c 			starfire_hookup(pbm->portid);
pbm               574 arch/sparc/kernel/pci_psycho.c 	psycho_pbm_init(pbm, op, is_pbm_a);
pbm               576 arch/sparc/kernel/pci_psycho.c 	pbm->next = pci_pbm_root;
pbm               577 arch/sparc/kernel/pci_psycho.c 	pci_pbm_root = pbm;
pbm               579 arch/sparc/kernel/pci_psycho.c 	if (pbm->sibling)
pbm               580 arch/sparc/kernel/pci_psycho.c 		pbm->sibling->sibling = pbm;
pbm               582 arch/sparc/kernel/pci_psycho.c 	dev_set_drvdata(&op->dev, pbm);
pbm               587 arch/sparc/kernel/pci_psycho.c 	if (!pbm->sibling)
pbm               588 arch/sparc/kernel/pci_psycho.c 		kfree(pbm->iommu);
pbm               591 arch/sparc/kernel/pci_psycho.c 	kfree(pbm);
pbm               199 arch/sparc/kernel/pci_sabre.c 	struct pci_pbm_info *pbm = dev_id;
pbm               200 arch/sparc/kernel/pci_sabre.c 	unsigned long afsr_reg = pbm->controller_regs + SABRE_UE_AFSR;
pbm               201 arch/sparc/kernel/pci_sabre.c 	unsigned long afar_reg = pbm->controller_regs + SABRE_UECE_AFAR;
pbm               220 arch/sparc/kernel/pci_sabre.c 	       pbm->name,
pbm               228 arch/sparc/kernel/pci_sabre.c 	       pbm->name,
pbm               232 arch/sparc/kernel/pci_sabre.c 	printk("%s: UE AFAR [%016lx]\n", pbm->name, afar);
pbm               233 arch/sparc/kernel/pci_sabre.c 	printk("%s: UE Secondary errors [", pbm->name);
pbm               252 arch/sparc/kernel/pci_sabre.c 	psycho_check_iommu_error(pbm, afsr, afar, UE_ERR);
pbm               259 arch/sparc/kernel/pci_sabre.c 	struct pci_pbm_info *pbm = dev_id;
pbm               260 arch/sparc/kernel/pci_sabre.c 	unsigned long afsr_reg = pbm->controller_regs + SABRE_CE_AFSR;
pbm               261 arch/sparc/kernel/pci_sabre.c 	unsigned long afar_reg = pbm->controller_regs + SABRE_UECE_AFAR;
pbm               279 arch/sparc/kernel/pci_sabre.c 	       pbm->name,
pbm               290 arch/sparc/kernel/pci_sabre.c 	       pbm->name,
pbm               295 arch/sparc/kernel/pci_sabre.c 	printk("%s: CE AFAR [%016lx]\n", pbm->name, afar);
pbm               296 arch/sparc/kernel/pci_sabre.c 	printk("%s: CE Secondary errors [", pbm->name);
pbm               313 arch/sparc/kernel/pci_sabre.c static void sabre_register_error_handlers(struct pci_pbm_info *pbm)
pbm               315 arch/sparc/kernel/pci_sabre.c 	struct device_node *dp = pbm->op->dev.of_node;
pbm               317 arch/sparc/kernel/pci_sabre.c 	unsigned long base = pbm->controller_regs;
pbm               321 arch/sparc/kernel/pci_sabre.c 	if (pbm->chip_type == PBM_CHIP_TYPE_SABRE)
pbm               346 arch/sparc/kernel/pci_sabre.c 	err = request_irq(op->archdata.irqs[1], sabre_ue_intr, 0, "SABRE_UE", pbm);
pbm               349 arch/sparc/kernel/pci_sabre.c 		       pbm->name, err);
pbm               356 arch/sparc/kernel/pci_sabre.c 	err = request_irq(op->archdata.irqs[2], sabre_ce_intr, 0, "SABRE_CE", pbm);
pbm               359 arch/sparc/kernel/pci_sabre.c 		       pbm->name, err);
pbm               361 arch/sparc/kernel/pci_sabre.c 			  "SABRE_PCIERR", pbm);
pbm               364 arch/sparc/kernel/pci_sabre.c 		       pbm->name, err);
pbm               407 arch/sparc/kernel/pci_sabre.c static void sabre_scan_bus(struct pci_pbm_info *pbm, struct device *parent)
pbm               419 arch/sparc/kernel/pci_sabre.c 		pbm->is_66mhz_capable = 1;
pbm               421 arch/sparc/kernel/pci_sabre.c 		pbm->is_66mhz_capable = 0;
pbm               435 arch/sparc/kernel/pci_sabre.c 	pbm->pci_bus = pci_scan_one_pbm(pbm, parent);
pbm               436 arch/sparc/kernel/pci_sabre.c 	if (!pbm->pci_bus)
pbm               439 arch/sparc/kernel/pci_sabre.c 	sabre_root_bus = pbm->pci_bus;
pbm               441 arch/sparc/kernel/pci_sabre.c 	apb_init(pbm->pci_bus);
pbm               443 arch/sparc/kernel/pci_sabre.c 	sabre_register_error_handlers(pbm);
pbm               446 arch/sparc/kernel/pci_sabre.c static void sabre_pbm_init(struct pci_pbm_info *pbm,
pbm               449 arch/sparc/kernel/pci_sabre.c 	psycho_pbm_init_common(pbm, op, "SABRE", PBM_CHIP_TYPE_SABRE);
pbm               450 arch/sparc/kernel/pci_sabre.c 	pbm->pci_afsr = pbm->controller_regs + SABRE_PIOAFSR;
pbm               451 arch/sparc/kernel/pci_sabre.c 	pbm->pci_afar = pbm->controller_regs + SABRE_PIOAFAR;
pbm               452 arch/sparc/kernel/pci_sabre.c 	pbm->pci_csr = pbm->controller_regs + SABRE_PCICTRL;
pbm               453 arch/sparc/kernel/pci_sabre.c 	sabre_scan_bus(pbm, &op->dev);
pbm               462 arch/sparc/kernel/pci_sabre.c 	struct pci_pbm_info *pbm;
pbm               484 arch/sparc/kernel/pci_sabre.c 	pbm = kzalloc(sizeof(*pbm), GFP_KERNEL);
pbm               485 arch/sparc/kernel/pci_sabre.c 	if (!pbm) {
pbm               496 arch/sparc/kernel/pci_sabre.c 	pbm->iommu = iommu;
pbm               500 arch/sparc/kernel/pci_sabre.c 	pbm->portid = upa_portid;
pbm               516 arch/sparc/kernel/pci_sabre.c 	pbm->controller_regs = pr_regs[0].phys_addr;
pbm               522 arch/sparc/kernel/pci_sabre.c 		upa_writeq(0x0UL, pbm->controller_regs + clear_irq);
pbm               526 arch/sparc/kernel/pci_sabre.c 		upa_writeq(0x0UL, pbm->controller_regs + clear_irq);
pbm               531 arch/sparc/kernel/pci_sabre.c 		   pbm->controller_regs + SABRE_PCICTRL);
pbm               534 arch/sparc/kernel/pci_sabre.c 	pbm->config_space = pbm->controller_regs + SABRE_CONFIGSPACE;
pbm               562 arch/sparc/kernel/pci_sabre.c 	err = psycho_iommu_init(pbm, tsbsize, vdma[0], dma_mask, SABRE_WRSYNC);
pbm               569 arch/sparc/kernel/pci_sabre.c 	sabre_pbm_init(pbm, op);
pbm               571 arch/sparc/kernel/pci_sabre.c 	pbm->next = pci_pbm_root;
pbm               572 arch/sparc/kernel/pci_sabre.c 	pci_pbm_root = pbm;
pbm               574 arch/sparc/kernel/pci_sabre.c 	dev_set_drvdata(&op->dev, pbm);
pbm               579 arch/sparc/kernel/pci_sabre.c 	kfree(pbm->iommu);
pbm               582 arch/sparc/kernel/pci_sabre.c 	kfree(pbm);
pbm                80 arch/sparc/kernel/pci_schizo.c static void *schizo_pci_config_mkaddr(struct pci_pbm_info *pbm,
pbm                85 arch/sparc/kernel/pci_schizo.c 	if (!pbm)
pbm                87 arch/sparc/kernel/pci_schizo.c 	bus -= pbm->pci_first_busno;
pbm                89 arch/sparc/kernel/pci_schizo.c 		(SCHIZO_CONFIG_BASE(pbm) |
pbm               128 arch/sparc/kernel/pci_schizo.c static void __schizo_check_stc_error_pbm(struct pci_pbm_info *pbm,
pbm               131 arch/sparc/kernel/pci_schizo.c 	struct strbuf *strbuf = &pbm->stc;
pbm               132 arch/sparc/kernel/pci_schizo.c 	unsigned long regbase = pbm->pbm_regs;
pbm               183 arch/sparc/kernel/pci_schizo.c 				       pbm->name,
pbm               193 arch/sparc/kernel/pci_schizo.c 			       pbm->name,
pbm               203 arch/sparc/kernel/pci_schizo.c 			       pbm->name,
pbm               236 arch/sparc/kernel/pci_schizo.c static void schizo_check_iommu_error_pbm(struct pci_pbm_info *pbm,
pbm               239 arch/sparc/kernel/pci_schizo.c 	struct iommu *iommu = pbm->iommu;
pbm               272 arch/sparc/kernel/pci_schizo.c 		       pbm->name, type_string);
pbm               287 arch/sparc/kernel/pci_schizo.c 		base = pbm->pbm_regs;
pbm               328 arch/sparc/kernel/pci_schizo.c 			       pbm->name, i, type_string,
pbm               335 arch/sparc/kernel/pci_schizo.c 			       pbm->name, i,
pbm               341 arch/sparc/kernel/pci_schizo.c 	if (pbm->stc.strbuf_enabled)
pbm               342 arch/sparc/kernel/pci_schizo.c 		__schizo_check_stc_error_pbm(pbm, type);
pbm               346 arch/sparc/kernel/pci_schizo.c static void schizo_check_iommu_error(struct pci_pbm_info *pbm,
pbm               349 arch/sparc/kernel/pci_schizo.c 	schizo_check_iommu_error_pbm(pbm, type);
pbm               350 arch/sparc/kernel/pci_schizo.c 	if (pbm->sibling)
pbm               351 arch/sparc/kernel/pci_schizo.c 		schizo_check_iommu_error_pbm(pbm->sibling, type);
pbm               375 arch/sparc/kernel/pci_schizo.c 	struct pci_pbm_info *pbm = dev_id;
pbm               376 arch/sparc/kernel/pci_schizo.c 	unsigned long afsr_reg = pbm->controller_regs + SCHIZO_UE_AFSR;
pbm               377 arch/sparc/kernel/pci_schizo.c 	unsigned long afar_reg = pbm->controller_regs + SCHIZO_UE_AFAR;
pbm               403 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               411 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               416 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               422 arch/sparc/kernel/pci_schizo.c 	printk("%s: UE AFAR [%016lx]\n", pbm->name, afar);
pbm               423 arch/sparc/kernel/pci_schizo.c 	printk("%s: UE Secondary errors [", pbm->name);
pbm               438 arch/sparc/kernel/pci_schizo.c 	schizo_check_iommu_error(pbm, UE_ERR);
pbm               463 arch/sparc/kernel/pci_schizo.c 	struct pci_pbm_info *pbm = dev_id;
pbm               464 arch/sparc/kernel/pci_schizo.c 	unsigned long afsr_reg = pbm->controller_regs + SCHIZO_CE_AFSR;
pbm               465 arch/sparc/kernel/pci_schizo.c 	unsigned long afar_reg = pbm->controller_regs + SCHIZO_CE_AFAR;
pbm               491 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               503 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               508 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               514 arch/sparc/kernel/pci_schizo.c 	printk("%s: CE AFAR [%016lx]\n", pbm->name, afar);
pbm               515 arch/sparc/kernel/pci_schizo.c 	printk("%s: CE Secondary errors [", pbm->name);
pbm               582 arch/sparc/kernel/pci_schizo.c static irqreturn_t schizo_pcierr_intr_other(struct pci_pbm_info *pbm)
pbm               588 arch/sparc/kernel/pci_schizo.c 	csr_reg = pbm->pbm_regs + SCHIZO_PCI_CTRL;
pbm               604 arch/sparc/kernel/pci_schizo.c 			       pbm->name);
pbm               607 arch/sparc/kernel/pci_schizo.c 			       pbm->name);
pbm               610 arch/sparc/kernel/pci_schizo.c 			       pbm->name);
pbm               613 arch/sparc/kernel/pci_schizo.c 			       pbm->name);
pbm               616 arch/sparc/kernel/pci_schizo.c 			       pbm->name);
pbm               619 arch/sparc/kernel/pci_schizo.c 			       pbm->name);
pbm               622 arch/sparc/kernel/pci_schizo.c 	pbm->pci_ops->read(pbm->pci_bus, 0, PCI_STATUS, 2, &stat);
pbm               629 arch/sparc/kernel/pci_schizo.c 		       pbm->name, stat);
pbm               630 arch/sparc/kernel/pci_schizo.c 		pbm->pci_ops->write(pbm->pci_bus, 0, PCI_STATUS, 2, 0xffff);
pbm               638 arch/sparc/kernel/pci_schizo.c 	struct pci_pbm_info *pbm = dev_id;
pbm               643 arch/sparc/kernel/pci_schizo.c 	base = pbm->pbm_regs;
pbm               661 arch/sparc/kernel/pci_schizo.c 		return schizo_pcierr_intr_other(pbm);
pbm               666 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               680 arch/sparc/kernel/pci_schizo.c 	       pbm->name,
pbm               690 arch/sparc/kernel/pci_schizo.c 	       pbm->name, afar);
pbm               692 arch/sparc/kernel/pci_schizo.c 	       pbm->name);
pbm               732 arch/sparc/kernel/pci_schizo.c 		schizo_check_iommu_error(pbm, PCI_ERR);
pbm               733 arch/sparc/kernel/pci_schizo.c 		pci_scan_for_target_abort(pbm, pbm->pci_bus);
pbm               736 arch/sparc/kernel/pci_schizo.c 		pci_scan_for_master_abort(pbm, pbm->pci_bus);
pbm               746 arch/sparc/kernel/pci_schizo.c 		pci_scan_for_parity_error(pbm, pbm->pci_bus);
pbm               792 arch/sparc/kernel/pci_schizo.c 	struct pci_pbm_info *pbm = dev_id;
pbm               795 arch/sparc/kernel/pci_schizo.c 	errlog = upa_readq(pbm->controller_regs + SCHIZO_SAFARI_ERRLOG);
pbm               797 arch/sparc/kernel/pci_schizo.c 		   pbm->controller_regs + SCHIZO_SAFARI_ERRLOG);
pbm               801 arch/sparc/kernel/pci_schizo.c 		       pbm->name, errlog);
pbm               807 arch/sparc/kernel/pci_schizo.c 	       pbm->name);
pbm               808 arch/sparc/kernel/pci_schizo.c 	schizo_check_iommu_error(pbm, SAFARI_ERR);
pbm               824 arch/sparc/kernel/pci_schizo.c static int pbm_routes_this_ino(struct pci_pbm_info *pbm, u32 ino)
pbm               828 arch/sparc/kernel/pci_schizo.c 	if (pbm->ino_bitmap & (1UL << ino))
pbm               848 arch/sparc/kernel/pci_schizo.c static void tomatillo_register_error_handlers(struct pci_pbm_info *pbm)
pbm               850 arch/sparc/kernel/pci_schizo.c 	struct platform_device *op = of_find_device_by_node(pbm->op->dev.of_node);
pbm               862 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_UE_INO)) {
pbm               864 arch/sparc/kernel/pci_schizo.c 				  "TOMATILLO_UE", pbm);
pbm               867 arch/sparc/kernel/pci_schizo.c 			       "err=%d\n", pbm->name, err);
pbm               869 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_CE_INO)) {
pbm               871 arch/sparc/kernel/pci_schizo.c 				  "TOMATILLO_CE", pbm);
pbm               874 arch/sparc/kernel/pci_schizo.c 			       "err=%d\n", pbm->name, err);
pbm               877 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_A_INO)) {
pbm               879 arch/sparc/kernel/pci_schizo.c 				  "TOMATILLO_PCIERR", pbm);
pbm               880 arch/sparc/kernel/pci_schizo.c 	} else if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_B_INO)) {
pbm               882 arch/sparc/kernel/pci_schizo.c 				  "TOMATILLO_PCIERR", pbm);
pbm               886 arch/sparc/kernel/pci_schizo.c 		       "err=%d\n", pbm->name, err);
pbm               888 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_SERR_INO)) {
pbm               890 arch/sparc/kernel/pci_schizo.c 				  "TOMATILLO_SERR", pbm);
pbm               893 arch/sparc/kernel/pci_schizo.c 			       "err=%d\n", pbm->name, err);
pbm               899 arch/sparc/kernel/pci_schizo.c 		    SCHIZO_ECCCTRL_CE), pbm->controller_regs + SCHIZO_ECC_CTRL);
pbm               912 arch/sparc/kernel/pci_schizo.c 	tmp = upa_readq(pbm->pbm_regs + SCHIZO_PCI_CTRL);
pbm               915 arch/sparc/kernel/pci_schizo.c 	upa_writeq(tmp, pbm->pbm_regs + SCHIZO_PCI_CTRL);
pbm               924 arch/sparc/kernel/pci_schizo.c 	upa_writeq(err_mask, pbm->pbm_regs + SCHIZO_PCI_AFSR);
pbm               937 arch/sparc/kernel/pci_schizo.c 		   pbm->controller_regs + SCHIZO_SAFARI_ERRCTRL);
pbm               940 arch/sparc/kernel/pci_schizo.c 		   pbm->controller_regs + SCHIZO_SAFARI_IRQCTRL);
pbm               943 arch/sparc/kernel/pci_schizo.c static void schizo_register_error_handlers(struct pci_pbm_info *pbm)
pbm               945 arch/sparc/kernel/pci_schizo.c 	struct platform_device *op = of_find_device_by_node(pbm->op->dev.of_node);
pbm               957 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_UE_INO)) {
pbm               959 arch/sparc/kernel/pci_schizo.c 				  "SCHIZO_UE", pbm);
pbm               962 arch/sparc/kernel/pci_schizo.c 			       "err=%d\n", pbm->name, err);
pbm               964 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_CE_INO)) {
pbm               966 arch/sparc/kernel/pci_schizo.c 				  "SCHIZO_CE", pbm);
pbm               969 arch/sparc/kernel/pci_schizo.c 			       "err=%d\n", pbm->name, err);
pbm               972 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_A_INO)) {
pbm               974 arch/sparc/kernel/pci_schizo.c 				  "SCHIZO_PCIERR", pbm);
pbm               975 arch/sparc/kernel/pci_schizo.c 	} else if (pbm_routes_this_ino(pbm, SCHIZO_PCIERR_B_INO)) {
pbm               977 arch/sparc/kernel/pci_schizo.c 				  "SCHIZO_PCIERR", pbm);
pbm               981 arch/sparc/kernel/pci_schizo.c 		       "err=%d\n", pbm->name, err);
pbm               983 arch/sparc/kernel/pci_schizo.c 	if (pbm_routes_this_ino(pbm, SCHIZO_SERR_INO)) {
pbm               985 arch/sparc/kernel/pci_schizo.c 				  "SCHIZO_SERR", pbm);
pbm               988 arch/sparc/kernel/pci_schizo.c 			       "err=%d\n", pbm->name, err);
pbm               994 arch/sparc/kernel/pci_schizo.c 		    SCHIZO_ECCCTRL_CE), pbm->controller_regs + SCHIZO_ECC_CTRL);
pbm              1010 arch/sparc/kernel/pci_schizo.c 	tmp = upa_readq(pbm->pbm_regs + SCHIZO_PCI_CTRL);
pbm              1013 arch/sparc/kernel/pci_schizo.c 	upa_writeq(tmp, pbm->pbm_regs + SCHIZO_PCI_CTRL);
pbm              1021 arch/sparc/kernel/pci_schizo.c 		   pbm->pbm_regs + SCHIZO_PCI_AFSR);
pbm              1049 arch/sparc/kernel/pci_schizo.c 		   pbm->controller_regs + SCHIZO_SAFARI_ERRCTRL);
pbm              1052 arch/sparc/kernel/pci_schizo.c static void pbm_config_busmastering(struct pci_pbm_info *pbm)
pbm              1059 arch/sparc/kernel/pci_schizo.c 	addr = schizo_pci_config_mkaddr(pbm, pbm->pci_first_busno,
pbm              1064 arch/sparc/kernel/pci_schizo.c 	addr = schizo_pci_config_mkaddr(pbm, pbm->pci_first_busno,
pbm              1069 arch/sparc/kernel/pci_schizo.c static void schizo_scan_bus(struct pci_pbm_info *pbm, struct device *parent)
pbm              1071 arch/sparc/kernel/pci_schizo.c 	pbm_config_busmastering(pbm);
pbm              1072 arch/sparc/kernel/pci_schizo.c 	pbm->is_66mhz_capable =
pbm              1073 arch/sparc/kernel/pci_schizo.c 		(of_find_property(pbm->op->dev.of_node, "66mhz-capable", NULL)
pbm              1076 arch/sparc/kernel/pci_schizo.c 	pbm->pci_bus = pci_scan_one_pbm(pbm, parent);
pbm              1078 arch/sparc/kernel/pci_schizo.c 	if (pbm->chip_type == PBM_CHIP_TYPE_TOMATILLO)
pbm              1079 arch/sparc/kernel/pci_schizo.c 		tomatillo_register_error_handlers(pbm);
pbm              1081 arch/sparc/kernel/pci_schizo.c 		schizo_register_error_handlers(pbm);
pbm              1090 arch/sparc/kernel/pci_schizo.c static void schizo_pbm_strbuf_init(struct pci_pbm_info *pbm)
pbm              1092 arch/sparc/kernel/pci_schizo.c 	unsigned long base = pbm->pbm_regs;
pbm              1095 arch/sparc/kernel/pci_schizo.c 	if (pbm->chip_type == PBM_CHIP_TYPE_TOMATILLO) {
pbm              1101 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_control		= base + SCHIZO_STRBUF_CONTROL;
pbm              1102 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_pflush		= base + SCHIZO_STRBUF_FLUSH;
pbm              1103 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_fsync		= base + SCHIZO_STRBUF_FSYNC;
pbm              1104 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_ctxflush	= base + SCHIZO_STRBUF_CTXFLUSH;
pbm              1105 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_ctxmatch_base	= base + SCHIZO_STRBUF_CTXMATCH;
pbm              1107 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_flushflag = (volatile unsigned long *)
pbm              1108 arch/sparc/kernel/pci_schizo.c 		((((unsigned long)&pbm->stc.__flushflag_buf[0])
pbm              1111 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_flushflag_pa = (unsigned long)
pbm              1112 arch/sparc/kernel/pci_schizo.c 		__pa(pbm->stc.strbuf_flushflag);
pbm              1118 arch/sparc/kernel/pci_schizo.c 	control = upa_readq(pbm->stc.strbuf_control);
pbm              1123 arch/sparc/kernel/pci_schizo.c 	upa_writeq(control, pbm->stc.strbuf_control);
pbm              1125 arch/sparc/kernel/pci_schizo.c 	pbm->stc.strbuf_enabled = 1;
pbm              1133 arch/sparc/kernel/pci_schizo.c static int schizo_pbm_iommu_init(struct pci_pbm_info *pbm)
pbm              1137 arch/sparc/kernel/pci_schizo.c 	struct iommu *iommu = pbm->iommu;
pbm              1143 arch/sparc/kernel/pci_schizo.c 	vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", NULL);
pbm              1170 arch/sparc/kernel/pci_schizo.c 	iommu->iommu_control  = pbm->pbm_regs + SCHIZO_IOMMU_CONTROL;
pbm              1171 arch/sparc/kernel/pci_schizo.c 	iommu->iommu_tsbbase  = pbm->pbm_regs + SCHIZO_IOMMU_TSBBASE;
pbm              1172 arch/sparc/kernel/pci_schizo.c 	iommu->iommu_flush    = pbm->pbm_regs + SCHIZO_IOMMU_FLUSH;
pbm              1174 arch/sparc/kernel/pci_schizo.c 	iommu->iommu_ctxflush = pbm->pbm_regs + SCHIZO_IOMMU_CTXFLUSH;
pbm              1179 arch/sparc/kernel/pci_schizo.c 	iommu->write_complete_reg = pbm->controller_regs + 0x10000UL;
pbm              1191 arch/sparc/kernel/pci_schizo.c 		upa_writeq(0, pbm->pbm_regs + tagbase + (i * 8UL));
pbm              1192 arch/sparc/kernel/pci_schizo.c 		upa_writeq(0, pbm->pbm_regs + database + (i * 8UL));
pbm              1199 arch/sparc/kernel/pci_schizo.c 			       pbm->numa_node);
pbm              1258 arch/sparc/kernel/pci_schizo.c static void schizo_pbm_hw_init(struct pci_pbm_info *pbm)
pbm              1262 arch/sparc/kernel/pci_schizo.c 	upa_writeq(5, pbm->pbm_regs + SCHIZO_PCI_IRQ_RETRY);
pbm              1264 arch/sparc/kernel/pci_schizo.c 	tmp = upa_readq(pbm->pbm_regs + SCHIZO_PCI_CTRL);
pbm              1269 arch/sparc/kernel/pci_schizo.c 	if (pbm->chip_type == PBM_CHIP_TYPE_TOMATILLO &&
pbm              1270 arch/sparc/kernel/pci_schizo.c 	    pbm->chip_version >= 0x2)
pbm              1273 arch/sparc/kernel/pci_schizo.c 	if (!of_find_property(pbm->op->dev.of_node, "no-bus-parking", NULL))
pbm              1278 arch/sparc/kernel/pci_schizo.c 	if (pbm->chip_type == PBM_CHIP_TYPE_TOMATILLO &&
pbm              1279 arch/sparc/kernel/pci_schizo.c 	    pbm->chip_version <= 0x1)
pbm              1284 arch/sparc/kernel/pci_schizo.c 	if (pbm->chip_type == PBM_CHIP_TYPE_TOMATILLO)
pbm              1289 arch/sparc/kernel/pci_schizo.c 	upa_writeq(tmp, pbm->pbm_regs + SCHIZO_PCI_CTRL);
pbm              1291 arch/sparc/kernel/pci_schizo.c 	tmp = upa_readq(pbm->pbm_regs + SCHIZO_PCI_DIAG);
pbm              1295 arch/sparc/kernel/pci_schizo.c 	upa_writeq(tmp, pbm->pbm_regs + SCHIZO_PCI_DIAG);
pbm              1297 arch/sparc/kernel/pci_schizo.c 	if (pbm->chip_type == PBM_CHIP_TYPE_TOMATILLO) {
pbm              1307 arch/sparc/kernel/pci_schizo.c 		upa_writeq(tmp, pbm->pbm_regs + TOMATILLO_PCI_IOC_CSR);
pbm              1311 arch/sparc/kernel/pci_schizo.c static int schizo_pbm_init(struct pci_pbm_info *pbm,
pbm              1348 arch/sparc/kernel/pci_schizo.c 	pbm->next = pci_pbm_root;
pbm              1349 arch/sparc/kernel/pci_schizo.c 	pci_pbm_root = pbm;
pbm              1351 arch/sparc/kernel/pci_schizo.c 	pbm->numa_node = NUMA_NO_NODE;
pbm              1353 arch/sparc/kernel/pci_schizo.c 	pbm->pci_ops = &sun4u_pci_ops;
pbm              1354 arch/sparc/kernel/pci_schizo.c 	pbm->config_space_reg_bits = 8;
pbm              1356 arch/sparc/kernel/pci_schizo.c 	pbm->index = pci_num_pbms++;
pbm              1358 arch/sparc/kernel/pci_schizo.c 	pbm->portid = portid;
pbm              1359 arch/sparc/kernel/pci_schizo.c 	pbm->op = op;
pbm              1361 arch/sparc/kernel/pci_schizo.c 	pbm->chip_type = chip_type;
pbm              1362 arch/sparc/kernel/pci_schizo.c 	pbm->chip_version = of_getintprop_default(dp, "version#", 0);
pbm              1363 arch/sparc/kernel/pci_schizo.c 	pbm->chip_revision = of_getintprop_default(dp, "module-version#", 0);
pbm              1365 arch/sparc/kernel/pci_schizo.c 	pbm->pbm_regs = regs[0].phys_addr;
pbm              1366 arch/sparc/kernel/pci_schizo.c 	pbm->controller_regs = regs[1].phys_addr - 0x10000UL;
pbm              1369 arch/sparc/kernel/pci_schizo.c 		pbm->sync_reg = regs[3].phys_addr + 0x1a18UL;
pbm              1371 arch/sparc/kernel/pci_schizo.c 	pbm->name = dp->full_name;
pbm              1374 arch/sparc/kernel/pci_schizo.c 	       pbm->name, chipset_name,
pbm              1375 arch/sparc/kernel/pci_schizo.c 	       pbm->chip_version, pbm->chip_revision);
pbm              1377 arch/sparc/kernel/pci_schizo.c 	schizo_pbm_hw_init(pbm);
pbm              1379 arch/sparc/kernel/pci_schizo.c 	pci_determine_mem_io_space(pbm);
pbm              1381 arch/sparc/kernel/pci_schizo.c 	pci_get_pbm_props(pbm);
pbm              1383 arch/sparc/kernel/pci_schizo.c 	err = schizo_pbm_iommu_init(pbm);
pbm              1387 arch/sparc/kernel/pci_schizo.c 	schizo_pbm_strbuf_init(pbm);
pbm              1389 arch/sparc/kernel/pci_schizo.c 	schizo_scan_bus(pbm, &op->dev);
pbm              1406 arch/sparc/kernel/pci_schizo.c 	struct pci_pbm_info *pbm;
pbm              1408 arch/sparc/kernel/pci_schizo.c 	for (pbm = pci_pbm_root; pbm; pbm = pbm->next) {
pbm              1409 arch/sparc/kernel/pci_schizo.c 		if (portid_compare(pbm->portid, portid, chip_type))
pbm              1410 arch/sparc/kernel/pci_schizo.c 			return pbm;
pbm              1418 arch/sparc/kernel/pci_schizo.c 	struct pci_pbm_info *pbm;
pbm              1426 arch/sparc/kernel/pci_schizo.c 	pbm = kzalloc(sizeof(*pbm), GFP_KERNEL);
pbm              1427 arch/sparc/kernel/pci_schizo.c 	if (!pbm) {
pbm              1432 arch/sparc/kernel/pci_schizo.c 	pbm->sibling = schizo_find_sibling(portid, chip_type);
pbm              1440 arch/sparc/kernel/pci_schizo.c 	pbm->iommu = iommu;
pbm              1442 arch/sparc/kernel/pci_schizo.c 	if (schizo_pbm_init(pbm, op, portid, chip_type))
pbm              1445 arch/sparc/kernel/pci_schizo.c 	if (pbm->sibling)
pbm              1446 arch/sparc/kernel/pci_schizo.c 		pbm->sibling->sibling = pbm;
pbm              1448 arch/sparc/kernel/pci_schizo.c 	dev_set_drvdata(&op->dev, pbm);
pbm              1453 arch/sparc/kernel/pci_schizo.c 	kfree(pbm->iommu);
pbm              1456 arch/sparc/kernel/pci_schizo.c 	kfree(pbm);
pbm                84 arch/sparc/kernel/pci_sun4v.c 	struct pci_pbm_info *pbm = p->dev->archdata.host_controller;
pbm                87 arch/sparc/kernel/pci_sun4v.c 	unsigned long devhandle = pbm->devhandle;
pbm               100 arch/sparc/kernel/pci_sun4v.c 		if (!iommu_use_atu(pbm->iommu, mask)) {
pbm               117 arch/sparc/kernel/pci_sun4v.c 			iotsb_num = pbm->iommu->atu->iotsb->iotsb_num;
pbm               324 arch/sparc/kernel/pci_sun4v.c 	struct pci_pbm_info *pbm;
pbm               334 arch/sparc/kernel/pci_sun4v.c 	pbm = dev->archdata.host_controller;
pbm               336 arch/sparc/kernel/pci_sun4v.c 	devhandle = pbm->devhandle;
pbm               431 arch/sparc/kernel/pci_sun4v.c 	struct pci_pbm_info *pbm;
pbm               447 arch/sparc/kernel/pci_sun4v.c 	pbm = dev->archdata.host_controller;
pbm               449 arch/sparc/kernel/pci_sun4v.c 	devhandle = pbm->devhandle;
pbm               629 arch/sparc/kernel/pci_sun4v.c 	struct pci_pbm_info *pbm;
pbm               640 arch/sparc/kernel/pci_sun4v.c 	pbm = dev->archdata.host_controller;
pbm               642 arch/sparc/kernel/pci_sun4v.c 	devhandle = pbm->devhandle;
pbm               697 arch/sparc/kernel/pci_sun4v.c static void pci_sun4v_scan_bus(struct pci_pbm_info *pbm, struct device *parent)
pbm               702 arch/sparc/kernel/pci_sun4v.c 	dp = pbm->op->dev.of_node;
pbm               704 arch/sparc/kernel/pci_sun4v.c 	pbm->is_66mhz_capable = (prop != NULL);
pbm               705 arch/sparc/kernel/pci_sun4v.c 	pbm->pci_bus = pci_scan_one_pbm(pbm, parent);
pbm               710 arch/sparc/kernel/pci_sun4v.c static unsigned long probe_existing_entries(struct pci_pbm_info *pbm,
pbm               717 arch/sparc/kernel/pci_sun4v.c 	devhandle = pbm->devhandle;
pbm               741 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_atu_alloc_iotsb(struct pci_pbm_info *pbm)
pbm               743 arch/sparc/kernel/pci_sun4v.c 	struct atu *atu = pbm->iommu->atu;
pbm               774 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_iotsb_conf(pbm->devhandle,
pbm               786 arch/sparc/kernel/pci_sun4v.c 	err = dma_4v_iotsb_bind(pbm->devhandle, iotsb_num, pbm->pci_bus);
pbm               802 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_atu_init(struct pci_pbm_info *pbm)
pbm               804 arch/sparc/kernel/pci_sun4v.c 	struct atu *atu = pbm->iommu->atu;
pbm               812 arch/sparc/kernel/pci_sun4v.c 	ranges = of_get_property(pbm->op->dev.of_node, "iommu-address-ranges",
pbm               819 arch/sparc/kernel/pci_sun4v.c 	page_size = of_get_property(pbm->op->dev.of_node, "iommu-pagesizes",
pbm               841 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_atu_alloc_iotsb(pbm);
pbm               867 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_iommu_init(struct pci_pbm_info *pbm)
pbm               870 arch/sparc/kernel/pci_sun4v.c 	struct iommu *iommu = pbm->iommu;
pbm               875 arch/sparc/kernel/pci_sun4v.c 	vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", NULL);
pbm               908 arch/sparc/kernel/pci_sun4v.c 	sz = probe_existing_entries(pbm, &iommu->tbl);
pbm               911 arch/sparc/kernel/pci_sun4v.c 		       pbm->name, sz);
pbm               961 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_get_head(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm               966 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_msiq_gethead(pbm->devhandle, msiqid, head);
pbm               970 arch/sparc/kernel/pci_sun4v.c 	limit = pbm->msiq_ent_count * sizeof(struct pci_sun4v_msiq_entry);
pbm               977 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_dequeue_msi(struct pci_pbm_info *pbm,
pbm               985 arch/sparc/kernel/pci_sun4v.c 	ep = (pbm->msi_queues + ((msiqid - pbm->msiq_first) *
pbm               986 arch/sparc/kernel/pci_sun4v.c 				 (pbm->msiq_ent_count *
pbm              1000 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_msi_setstate(pbm->devhandle,
pbm              1011 arch/sparc/kernel/pci_sun4v.c 	    (pbm->msiq_ent_count * sizeof(struct pci_sun4v_msiq_entry)))
pbm              1017 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_set_head(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm              1022 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_msiq_sethead(pbm->devhandle, msiqid, head);
pbm              1029 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_msi_setup(struct pci_pbm_info *pbm, unsigned long msiqid,
pbm              1032 arch/sparc/kernel/pci_sun4v.c 	if (pci_sun4v_msi_setmsiq(pbm->devhandle, msi, msiqid,
pbm              1036 arch/sparc/kernel/pci_sun4v.c 	if (pci_sun4v_msi_setstate(pbm->devhandle, msi, HV_MSISTATE_IDLE))
pbm              1038 arch/sparc/kernel/pci_sun4v.c 	if (pci_sun4v_msi_setvalid(pbm->devhandle, msi, HV_MSIVALID_VALID))
pbm              1043 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_msi_teardown(struct pci_pbm_info *pbm, unsigned long msi)
pbm              1047 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_msi_getmsiq(pbm->devhandle, msi, &msiqid);
pbm              1051 arch/sparc/kernel/pci_sun4v.c 	pci_sun4v_msi_setvalid(pbm->devhandle, msi, HV_MSIVALID_INVALID);
pbm              1056 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_msiq_alloc(struct pci_pbm_info *pbm)
pbm              1061 arch/sparc/kernel/pci_sun4v.c 	q_size = pbm->msiq_ent_count * sizeof(struct pci_sun4v_msiq_entry);
pbm              1062 arch/sparc/kernel/pci_sun4v.c 	alloc_size = (pbm->msiq_num * q_size);
pbm              1071 arch/sparc/kernel/pci_sun4v.c 	pbm->msi_queues = (void *) pages;
pbm              1073 arch/sparc/kernel/pci_sun4v.c 	for (i = 0; i < pbm->msiq_num; i++) {
pbm              1077 arch/sparc/kernel/pci_sun4v.c 		err = pci_sun4v_msiq_conf(pbm->devhandle,
pbm              1078 arch/sparc/kernel/pci_sun4v.c 					  pbm->msiq_first + i,
pbm              1079 arch/sparc/kernel/pci_sun4v.c 					  base, pbm->msiq_ent_count);
pbm              1086 arch/sparc/kernel/pci_sun4v.c 		err = pci_sun4v_msiq_info(pbm->devhandle,
pbm              1087 arch/sparc/kernel/pci_sun4v.c 					  pbm->msiq_first + i,
pbm              1094 arch/sparc/kernel/pci_sun4v.c 		if (ret1 != base || ret2 != pbm->msiq_ent_count) {
pbm              1097 arch/sparc/kernel/pci_sun4v.c 			       base, pbm->msiq_ent_count,
pbm              1110 arch/sparc/kernel/pci_sun4v.c static void pci_sun4v_msiq_free(struct pci_pbm_info *pbm)
pbm              1115 arch/sparc/kernel/pci_sun4v.c 	for (i = 0; i < pbm->msiq_num; i++) {
pbm              1116 arch/sparc/kernel/pci_sun4v.c 		unsigned long msiqid = pbm->msiq_first + i;
pbm              1118 arch/sparc/kernel/pci_sun4v.c 		(void) pci_sun4v_msiq_conf(pbm->devhandle, msiqid, 0UL, 0);
pbm              1121 arch/sparc/kernel/pci_sun4v.c 	q_size = pbm->msiq_ent_count * sizeof(struct pci_sun4v_msiq_entry);
pbm              1122 arch/sparc/kernel/pci_sun4v.c 	alloc_size = (pbm->msiq_num * q_size);
pbm              1125 arch/sparc/kernel/pci_sun4v.c 	pages = (unsigned long) pbm->msi_queues;
pbm              1129 arch/sparc/kernel/pci_sun4v.c 	pbm->msi_queues = NULL;
pbm              1132 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_msiq_build_irq(struct pci_pbm_info *pbm,
pbm              1136 arch/sparc/kernel/pci_sun4v.c 	unsigned int irq = sun4v_build_irq(pbm->devhandle, devino);
pbm              1141 arch/sparc/kernel/pci_sun4v.c 	if (pci_sun4v_msiq_setvalid(pbm->devhandle, msiqid, HV_MSIQ_VALID))
pbm              1143 arch/sparc/kernel/pci_sun4v.c 	if (pci_sun4v_msiq_setstate(pbm->devhandle, msiqid, HV_MSIQSTATE_IDLE))
pbm              1160 arch/sparc/kernel/pci_sun4v.c static void pci_sun4v_msi_init(struct pci_pbm_info *pbm)
pbm              1162 arch/sparc/kernel/pci_sun4v.c 	sparc64_pbm_msi_init(pbm, &pci_sun4v_msiq_ops);
pbm              1165 arch/sparc/kernel/pci_sun4v.c static void pci_sun4v_msi_init(struct pci_pbm_info *pbm)
pbm              1170 arch/sparc/kernel/pci_sun4v.c static int pci_sun4v_pbm_init(struct pci_pbm_info *pbm,
pbm              1176 arch/sparc/kernel/pci_sun4v.c 	pbm->numa_node = of_node_to_nid(dp);
pbm              1178 arch/sparc/kernel/pci_sun4v.c 	pbm->pci_ops = &sun4v_pci_ops;
pbm              1179 arch/sparc/kernel/pci_sun4v.c 	pbm->config_space_reg_bits = 12;
pbm              1181 arch/sparc/kernel/pci_sun4v.c 	pbm->index = pci_num_pbms++;
pbm              1183 arch/sparc/kernel/pci_sun4v.c 	pbm->op = op;
pbm              1185 arch/sparc/kernel/pci_sun4v.c 	pbm->devhandle = devhandle;
pbm              1187 arch/sparc/kernel/pci_sun4v.c 	pbm->name = dp->full_name;
pbm              1189 arch/sparc/kernel/pci_sun4v.c 	printk("%s: SUN4V PCI Bus Module\n", pbm->name);
pbm              1190 arch/sparc/kernel/pci_sun4v.c 	printk("%s: On NUMA node %d\n", pbm->name, pbm->numa_node);
pbm              1192 arch/sparc/kernel/pci_sun4v.c 	pci_determine_mem_io_space(pbm);
pbm              1194 arch/sparc/kernel/pci_sun4v.c 	pci_get_pbm_props(pbm);
pbm              1196 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_iommu_init(pbm);
pbm              1200 arch/sparc/kernel/pci_sun4v.c 	pci_sun4v_msi_init(pbm);
pbm              1202 arch/sparc/kernel/pci_sun4v.c 	pci_sun4v_scan_bus(pbm, &op->dev);
pbm              1207 arch/sparc/kernel/pci_sun4v.c 	if (pbm->iommu->atu) {
pbm              1208 arch/sparc/kernel/pci_sun4v.c 		err = pci_sun4v_atu_init(pbm);
pbm              1210 arch/sparc/kernel/pci_sun4v.c 			kfree(pbm->iommu->atu);
pbm              1211 arch/sparc/kernel/pci_sun4v.c 			pbm->iommu->atu = NULL;
pbm              1216 arch/sparc/kernel/pci_sun4v.c 	pbm->next = pci_pbm_root;
pbm              1217 arch/sparc/kernel/pci_sun4v.c 	pci_pbm_root = pbm;
pbm              1226 arch/sparc/kernel/pci_sun4v.c 	struct pci_pbm_info *pbm;
pbm              1289 arch/sparc/kernel/pci_sun4v.c 	pbm = kzalloc(sizeof(*pbm), GFP_KERNEL);
pbm              1290 arch/sparc/kernel/pci_sun4v.c 	if (!pbm) {
pbm              1301 arch/sparc/kernel/pci_sun4v.c 	pbm->iommu = iommu;
pbm              1311 arch/sparc/kernel/pci_sun4v.c 	err = pci_sun4v_pbm_init(pbm, op, devhandle);
pbm              1315 arch/sparc/kernel/pci_sun4v.c 	dev_set_drvdata(&op->dev, pbm);
pbm              1321 arch/sparc/kernel/pci_sun4v.c 	kfree(pbm->iommu);
pbm              1324 arch/sparc/kernel/pci_sun4v.c 	kfree(pbm);
pbm               291 arch/sparc/kernel/pcic.c 	struct linux_pbm_info* pbm;
pbm               352 arch/sparc/kernel/pcic.c 	pbm = &pcic->pbm;
pbm               353 arch/sparc/kernel/pcic.c 	pbm->prom_node = node;
pbm               355 arch/sparc/kernel/pcic.c 	strcpy(pbm->prom_name, namebuf);
pbm               392 arch/sparc/kernel/pcic.c 	struct linux_pbm_info *pbm = &pcic->pbm;
pbm               394 arch/sparc/kernel/pcic.c 	pbm->pci_bus = pci_scan_bus(pbm->pci_first_busno, &pcic_ops, pbm);
pbm               395 arch/sparc/kernel/pcic.c 	if (!pbm->pci_bus)
pbm               399 arch/sparc/kernel/pcic.c 	pci_fill_in_pbm_cookies(pbm->pci_bus, pbm, pbm->prom_node);
pbm               400 arch/sparc/kernel/pcic.c 	pci_record_assignments(pbm, pbm->pci_bus);
pbm               401 arch/sparc/kernel/pcic.c 	pci_assign_unassigned(pbm, pbm->pci_bus);
pbm               402 arch/sparc/kernel/pcic.c 	pci_fixup_irq(pbm, pbm->pci_bus);
pbm               404 arch/sparc/kernel/pcic.c 	pci_bus_add_devices(pbm->pci_bus);
pbm               447 arch/sparc/kernel/pcic.c static int pdev_to_pnode(struct linux_pbm_info *pbm, struct pci_dev *pdev)
pbm               451 arch/sparc/kernel/pcic.c 	phandle node = prom_getchild(pbm->prom_node);
pbm               626 arch/sparc/kernel/pcic.c 		node = pdev_to_pnode(&pcic->pbm, dev);
pbm               632 arch/sparc/kernel/pcic.c 		pcp->pbm = &pcic->pbm;
pbm                35 arch/sparc/kernel/psycho_common.c static void psycho_check_stc_error(struct pci_pbm_info *pbm)
pbm                38 arch/sparc/kernel/psycho_common.c 	struct strbuf *strbuf = &pbm->stc;
pbm                90 arch/sparc/kernel/psycho_common.c 				       pbm->name,
pbm               101 arch/sparc/kernel/psycho_common.c 			       pbm->name,
pbm               109 arch/sparc/kernel/psycho_common.c 			       pbm->name,
pbm               126 arch/sparc/kernel/psycho_common.c static void psycho_record_iommu_tags_and_data(struct pci_pbm_info *pbm,
pbm               132 arch/sparc/kernel/psycho_common.c 		unsigned long base = pbm->controller_regs;
pbm               154 arch/sparc/kernel/psycho_common.c static void psycho_dump_iommu_tags_and_data(struct pci_pbm_info *pbm,
pbm               185 arch/sparc/kernel/psycho_common.c 		       pbm->name, i, type_str,
pbm               192 arch/sparc/kernel/psycho_common.c 		       pbm->name, i,
pbm               202 arch/sparc/kernel/psycho_common.c void psycho_check_iommu_error(struct pci_pbm_info *pbm,
pbm               208 arch/sparc/kernel/psycho_common.c 	struct iommu *iommu = pbm->iommu;
pbm               235 arch/sparc/kernel/psycho_common.c 		       pbm->name, type_str);
pbm               243 arch/sparc/kernel/psycho_common.c 		psycho_record_iommu_tags_and_data(pbm, iommu_tag, iommu_data);
pbm               244 arch/sparc/kernel/psycho_common.c 		psycho_dump_iommu_tags_and_data(pbm, iommu_tag, iommu_data);
pbm               246 arch/sparc/kernel/psycho_common.c 	psycho_check_stc_error(pbm);
pbm               253 arch/sparc/kernel/psycho_common.c static irqreturn_t psycho_pcierr_intr_other(struct pci_pbm_info *pbm)
pbm               259 arch/sparc/kernel/psycho_common.c 	csr = upa_readq(pbm->pci_csr);
pbm               263 arch/sparc/kernel/psycho_common.c 		upa_writeq(csr, pbm->pci_csr);
pbm               268 arch/sparc/kernel/psycho_common.c 			       "error asserted.\n", pbm->name);
pbm               271 arch/sparc/kernel/psycho_common.c 			       pbm->name);
pbm               274 arch/sparc/kernel/psycho_common.c 	addr = psycho_pci_config_mkaddr(pbm, pbm->pci_first_busno,
pbm               283 arch/sparc/kernel/psycho_common.c 		       pbm->name, stat);
pbm               307 arch/sparc/kernel/psycho_common.c 	struct pci_pbm_info *pbm = dev_id;
pbm               311 arch/sparc/kernel/psycho_common.c 	afsr = upa_readq(pbm->pci_afsr);
pbm               312 arch/sparc/kernel/psycho_common.c 	afar = upa_readq(pbm->pci_afar);
pbm               319 arch/sparc/kernel/psycho_common.c 		return psycho_pcierr_intr_other(pbm);
pbm               320 arch/sparc/kernel/psycho_common.c 	upa_writeq(error_bits, pbm->pci_afsr);
pbm               322 arch/sparc/kernel/psycho_common.c 	       pbm->name,
pbm               332 arch/sparc/kernel/psycho_common.c 	       pbm->name,
pbm               336 arch/sparc/kernel/psycho_common.c 	printk(KERN_ERR "%s: PCI AFAR [%016llx]\n", pbm->name, afar);
pbm               337 arch/sparc/kernel/psycho_common.c 	printk(KERN_ERR "%s: PCI Secondary errors [", pbm->name);
pbm               360 arch/sparc/kernel/psycho_common.c 		psycho_check_iommu_error(pbm, afsr, afar, PCI_ERR);
pbm               361 arch/sparc/kernel/psycho_common.c 		pci_scan_for_target_abort(pbm, pbm->pci_bus);
pbm               364 arch/sparc/kernel/psycho_common.c 		pci_scan_for_master_abort(pbm, pbm->pci_bus);
pbm               367 arch/sparc/kernel/psycho_common.c 		pci_scan_for_parity_error(pbm, pbm->pci_bus);
pbm               372 arch/sparc/kernel/psycho_common.c static void psycho_iommu_flush(struct pci_pbm_info *pbm)
pbm               379 arch/sparc/kernel/psycho_common.c 		upa_writeq(0, pbm->controller_regs + PSYCHO_IOMMU_TAG + off);
pbm               380 arch/sparc/kernel/psycho_common.c 		upa_writeq(0, pbm->controller_regs + PSYCHO_IOMMU_DATA + off);
pbm               400 arch/sparc/kernel/psycho_common.c int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize,
pbm               404 arch/sparc/kernel/psycho_common.c 	struct iommu *iommu = pbm->iommu;
pbm               408 arch/sparc/kernel/psycho_common.c 	iommu->iommu_control  = pbm->controller_regs + PSYCHO_IOMMU_CONTROL;
pbm               409 arch/sparc/kernel/psycho_common.c 	iommu->iommu_tsbbase  = pbm->controller_regs + PSYCHO_IOMMU_TSBBASE;
pbm               410 arch/sparc/kernel/psycho_common.c 	iommu->iommu_flush    = pbm->controller_regs + PSYCHO_IOMMU_FLUSH;
pbm               411 arch/sparc/kernel/psycho_common.c 	iommu->iommu_tags     = pbm->controller_regs + PSYCHO_IOMMU_TAG;
pbm               412 arch/sparc/kernel/psycho_common.c 	iommu->write_complete_reg = (pbm->controller_regs +
pbm               421 arch/sparc/kernel/psycho_common.c 	psycho_iommu_flush(pbm);
pbm               425 arch/sparc/kernel/psycho_common.c 			       dvma_offset, dma_mask, pbm->numa_node);
pbm               452 arch/sparc/kernel/psycho_common.c void psycho_pbm_init_common(struct pci_pbm_info *pbm, struct platform_device *op,
pbm               457 arch/sparc/kernel/psycho_common.c 	pbm->name = dp->full_name;
pbm               458 arch/sparc/kernel/psycho_common.c 	pbm->numa_node = NUMA_NO_NODE;
pbm               459 arch/sparc/kernel/psycho_common.c 	pbm->chip_type = chip_type;
pbm               460 arch/sparc/kernel/psycho_common.c 	pbm->chip_version = of_getintprop_default(dp, "version#", 0);
pbm               461 arch/sparc/kernel/psycho_common.c 	pbm->chip_revision = of_getintprop_default(dp, "module-revision#", 0);
pbm               462 arch/sparc/kernel/psycho_common.c 	pbm->op = op;
pbm               463 arch/sparc/kernel/psycho_common.c 	pbm->pci_ops = &sun4u_pci_ops;
pbm               464 arch/sparc/kernel/psycho_common.c 	pbm->config_space_reg_bits = 8;
pbm               465 arch/sparc/kernel/psycho_common.c 	pbm->index = pci_num_pbms++;
pbm               466 arch/sparc/kernel/psycho_common.c 	pci_get_pbm_props(pbm);
pbm               467 arch/sparc/kernel/psycho_common.c 	pci_determine_mem_io_space(pbm);
pbm               470 arch/sparc/kernel/psycho_common.c 	       pbm->name, chip_name,
pbm               471 arch/sparc/kernel/psycho_common.c 	       pbm->chip_version, pbm->chip_revision);
pbm                20 arch/sparc/kernel/psycho_common.h static inline void *psycho_pci_config_mkaddr(struct pci_pbm_info *pbm,
pbm                26 arch/sparc/kernel/psycho_common.h 		(PSYCHO_CONFIG_BASE(pbm) |
pbm                34 arch/sparc/kernel/psycho_common.h void psycho_check_iommu_error(struct pci_pbm_info *pbm,
pbm                41 arch/sparc/kernel/psycho_common.h int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize,
pbm                45 arch/sparc/kernel/psycho_common.h void psycho_pbm_init_common(struct pci_pbm_info *pbm,