Lines Matching refs:hba

143 	struct pci_hba_data	hba;	/* 'C' inheritance - must be first */  member
154 static inline struct dino_device *DINO_DEV(struct pci_hba_data *hba) in DINO_DEV() argument
156 return container_of(hba, struct dino_device, hba); in DINO_DEV()
178 void __iomem *base_addr = d->hba.base_addr; in dino_cfg_read()
213 void __iomem *base_addr = d->hba.base_addr; in dino_cfg_write()
306 __raw_writel(dino_dev->imr, dino_dev->hba.base_addr+DINO_IMR); in dino_mask_irq()
323 __raw_readl(dino_dev->hba.base_addr+DINO_IPR); in dino_unmask_irq()
327 __raw_writel( dino_dev->imr, dino_dev->hba.base_addr+DINO_IMR); in dino_unmask_irq()
338 tmp = __raw_readl(dino_dev->hba.base_addr+DINO_ILR); in dino_unmask_irq()
369 mask = __raw_readl(dino_dev->hba.base_addr+DINO_IRR0) & DINO_IRR_MASK; in dino_isr()
391 mask = __raw_readl(dino_dev->hba.base_addr+DINO_ILR) & dino_dev->imr; in dino_isr()
396 dino_dev->hba.base_addr, mask); in dino_isr()
447 return is_card_dino(&dino_dev->hba.dev->id); in pci_dev_is_behind_card_dino()
488 res = &dino_dev->hba.lmmio_space; in dino_card_setup()
496 res->name = dino_dev->hba.lmmio_space.name; in dino_card_setup()
499 if (ccio_allocate_resource(dino_dev->hba.dev, res, _8MB, in dino_card_setup()
514 bus->resource[0] = &(dino_dev->hba.io_space); in dino_card_setup()
580 if (is_card_dino(&dino_dev->hba.dev->id)) { in dino_fixup_bus()
581 dino_card_setup(bus, dino_dev->hba.base_addr); in dino_fixup_bus()
617 if (is_card_dino(&dino_dev->hba.dev->id)) in dino_fixup_bus()
682 status = __raw_readl(dino_dev->hba.base_addr+DINO_IO_STATUS); in dino_card_init()
685 dino_dev->hba.base_addr+DINO_IO_COMMAND); in dino_card_init()
689 __raw_writel(0x00000000, dino_dev->hba.base_addr+DINO_GMASK); in dino_card_init()
690 __raw_writel(0x00000001, dino_dev->hba.base_addr+DINO_IO_FBB_EN); in dino_card_init()
691 __raw_writel(0x00000000, dino_dev->hba.base_addr+DINO_ICR); in dino_card_init()
701 __raw_writel( brdg_feat, dino_dev->hba.base_addr+DINO_BRDG_FEAT); in dino_card_init()
708 __raw_writel(0x00000000, dino_dev->hba.base_addr+DINO_IO_ADDR_EN); in dino_card_init()
710 __raw_writel(0x00000000, dino_dev->hba.base_addr+DINO_DAMODE); in dino_card_init()
711 __raw_writel(0x00222222, dino_dev->hba.base_addr+DINO_PCIROR); in dino_card_init()
712 __raw_writel(0x00222222, dino_dev->hba.base_addr+DINO_PCIWOR); in dino_card_init()
714 __raw_writel(0x00000040, dino_dev->hba.base_addr+DINO_MLTIM); in dino_card_init()
715 __raw_writel(0x00000080, dino_dev->hba.base_addr+DINO_IO_CONTROL); in dino_card_init()
716 __raw_writel(0x0000008c, dino_dev->hba.base_addr+DINO_TLTIM); in dino_card_init()
719 __raw_writel(0x0000007e, dino_dev->hba.base_addr+DINO_PAMR); in dino_card_init()
720 __raw_writel(0x0000007f, dino_dev->hba.base_addr+DINO_PAPR); in dino_card_init()
721 __raw_writel(0x00000000, dino_dev->hba.base_addr+DINO_PAMR); in dino_card_init()
728 __raw_writel(0x0000004f, dino_dev->hba.base_addr+DINO_PCICMD); in dino_card_init()
749 io_addr = __raw_readl(dino_dev->hba.base_addr + DINO_IO_ADDR_EN); in dino_bridge_init()
755 res = &dino_dev->hba.lmmio_space; in dino_bridge_init()
788 res = &dino_dev->hba.lmmio_space; in dino_bridge_init()
794 result = ccio_request_resource(dino_dev->hba.dev, &res[i]); in dino_bridge_init()
812 pcibios_register_hba(&dino_dev->hba); in dino_common_init()
856 __raw_writel(eim, dino_dev->hba.base_addr+DINO_IAR0); in dino_common_init()
862 __raw_readl(dino_dev->hba.base_addr+DINO_IRR0); in dino_common_init()
865 res = &dino_dev->hba.io_space; in dino_common_init()
871 res->start = HBA_PORT_BASE(dino_dev->hba.hba_num); in dino_common_init()
878 dino_dev->hba.base_addr); in dino_common_init()
976 dino_dev->hba.dev = dev; in dino_probe()
977 dino_dev->hba.base_addr = ioremap(hpa, 4096); in dino_probe()
978 dino_dev->hba.lmmio_space_offset = PCI_F_EXTEND; in dino_probe()
980 dino_dev->hba.iommu = ccio_get_iommu(dev); in dino_probe()
993 pci_add_resource_offset(&resources, &dino_dev->hba.io_space, in dino_probe()
994 HBA_PORT_BASE(dino_dev->hba.hba_num)); in dino_probe()
995 if (dino_dev->hba.lmmio_space.flags) in dino_probe()
996 pci_add_resource_offset(&resources, &dino_dev->hba.lmmio_space, in dino_probe()
997 dino_dev->hba.lmmio_space_offset); in dino_probe()
998 if (dino_dev->hba.elmmio_space.flags) in dino_probe()
999 pci_add_resource_offset(&resources, &dino_dev->hba.elmmio_space, in dino_probe()
1000 dino_dev->hba.lmmio_space_offset); in dino_probe()
1001 if (dino_dev->hba.gmmio_space.flags) in dino_probe()
1002 pci_add_resource(&resources, &dino_dev->hba.gmmio_space); in dino_probe()
1004 dino_dev->hba.bus_num.start = dino_current_bus; in dino_probe()
1005 dino_dev->hba.bus_num.end = 255; in dino_probe()
1006 dino_dev->hba.bus_num.flags = IORESOURCE_BUS; in dino_probe()
1007 pci_add_resource(&resources, &dino_dev->hba.bus_num); in dino_probe()
1012 dino_dev->hba.hba_bus = bus = pci_create_root_bus(&dev->dev, in dino_probe()