Lines Matching refs:hba

192 	u8 first_bus = d->hba.hba_bus->busn_res.start;  in lba_device_present()
193 u8 last_sub_bus = d->hba.hba_bus->busn_res.end; in lba_device_present()
208 error_config = READ_REG32(d->hba.base_addr + LBA_ERROR_CONFIG); \
211 status_control = READ_REG32(d->hba.base_addr + LBA_STAT_CTL); \
217 arb_mask = READ_REG32(d->hba.base_addr + LBA_ARB_MASK); \
223 WRITE_REG32(0x1, d->hba.base_addr + LBA_ARB_MASK); \
229 WRITE_REG32(error_config | LBA_SMART_MODE, d->hba.base_addr + LBA_ERROR_CONFIG); \
238 WRITE_REG32(tok | PCI_VENDOR_ID, (d)->hba.base_addr + LBA_PCI_CFG_ADDR);\
243 lba_t32 = READ_REG32((d)->hba.base_addr + LBA_PCI_CFG_ADDR); \
248 WRITE_REG32(~0, (d)->hba.base_addr + LBA_PCI_CFG_DATA); \
253 lba_t32 = READ_REG32((d)->hba.base_addr + LBA_PCI_CFG_ADDR); \
308 WRITE_REG32(((addr) & ~3), (d)->hba.base_addr + LBA_PCI_CFG_ADDR);
311 WRITE_REG32(((addr) & ~3), (d)->hba.base_addr + LBA_PCI_CFG_ADDR); \
316 lba_t32 = READ_REG32((d)->hba.base_addr + LBA_PCI_CFG_ADDR); \
348 LBA_CFG_MASTER_ABORT_CHECK(d, d->hba.base_addr, tok, error); in lba_rd_cfg()
350 void __iomem *data_reg = d->hba.base_addr + LBA_PCI_CFG_DATA; in lba_rd_cfg()
359 LBA_CFG_RESTORE(d, d->hba.base_addr); in lba_rd_cfg()
369 void __iomem *data_reg = d->hba.base_addr + LBA_PCI_CFG_DATA; in elroy_cfg_read()
412 void __iomem *data_reg = d->hba.base_addr + LBA_PCI_CFG_DATA; in lba_wr_cfg()
421 LBA_CFG_MASTER_ABORT_CHECK(d, d->hba.base_addr, tok, error); in lba_wr_cfg()
422 LBA_CFG_RESTORE(d, d->hba.base_addr); in lba_wr_cfg()
457 case 1: WRITE_REG8 (data, d->hba.base_addr + LBA_PCI_CFG_DATA + (pos & 3)); in elroy_cfg_write()
459 case 2: WRITE_REG16(data, d->hba.base_addr + LBA_PCI_CFG_DATA + (pos & 2)); in elroy_cfg_write()
461 case 4: WRITE_REG32(data, d->hba.base_addr + LBA_PCI_CFG_DATA); in elroy_cfg_write()
465 lba_t32 = READ_REG32(d->hba.base_addr + LBA_PCI_CFG_ADDR); in elroy_cfg_write()
486 void __iomem *data_reg = d->hba.base_addr + LBA_PCI_CFG_DATA; in mercury_cfg_read()
516 void __iomem *data_reg = d->hba.base_addr + LBA_PCI_CFG_DATA; in mercury_cfg_write()
539 lba_t32 = READ_U32(d->hba.base_addr + LBA_PCI_CFG_ADDR); in mercury_cfg_write()
704 ldev->hba.io_space.name, in lba_fixup_bus()
705 ldev->hba.io_space.start, ldev->hba.io_space.end, in lba_fixup_bus()
706 ldev->hba.io_space.flags); in lba_fixup_bus()
708 ldev->hba.lmmio_space.name, in lba_fixup_bus()
709 ldev->hba.lmmio_space.start, ldev->hba.lmmio_space.end, in lba_fixup_bus()
710 ldev->hba.lmmio_space.flags); in lba_fixup_bus()
712 err = request_resource(&ioport_resource, &(ldev->hba.io_space)); in lba_fixup_bus()
718 if (ldev->hba.elmmio_space.flags) { in lba_fixup_bus()
720 &(ldev->hba.elmmio_space)); in lba_fixup_bus()
725 (long)ldev->hba.elmmio_space.start, in lba_fixup_bus()
726 (long)ldev->hba.elmmio_space.end); in lba_fixup_bus()
733 if (ldev->hba.lmmio_space.flags) { in lba_fixup_bus()
734 err = request_resource(&iomem_resource, &(ldev->hba.lmmio_space)); in lba_fixup_bus()
738 (long)ldev->hba.lmmio_space.start, in lba_fixup_bus()
739 (long)ldev->hba.lmmio_space.end); in lba_fixup_bus()
745 if (ldev->hba.gmmio_space.flags) { in lba_fixup_bus()
746 err = request_resource(&iomem_resource, &(ldev->hba.gmmio_space)); in lba_fixup_bus()
750 (long)ldev->hba.gmmio_space.start, in lba_fixup_bus()
751 (long)ldev->hba.gmmio_space.end); in lba_fixup_bus()
1036 lba_dev->hba.bus_num.start = p->start; in lba_pat_resources()
1037 lba_dev->hba.bus_num.end = p->end; in lba_pat_resources()
1038 lba_dev->hba.bus_num.flags = IORESOURCE_BUS; in lba_pat_resources()
1043 if (!lba_dev->hba.lmmio_space.flags) { in lba_pat_resources()
1046 lba_len = ~READ_REG32(lba_dev->hba.base_addr in lba_pat_resources()
1052 sprintf(lba_dev->hba.lmmio_name, in lba_pat_resources()
1054 (int)lba_dev->hba.bus_num.start); in lba_pat_resources()
1055 lba_dev->hba.lmmio_space_offset = p->start - in lba_pat_resources()
1057 r = &lba_dev->hba.lmmio_space; in lba_pat_resources()
1058 r->name = lba_dev->hba.lmmio_name; in lba_pat_resources()
1059 } else if (!lba_dev->hba.elmmio_space.flags) { in lba_pat_resources()
1060 sprintf(lba_dev->hba.elmmio_name, in lba_pat_resources()
1062 (int)lba_dev->hba.bus_num.start); in lba_pat_resources()
1063 r = &lba_dev->hba.elmmio_space; in lba_pat_resources()
1064 r->name = lba_dev->hba.elmmio_name; in lba_pat_resources()
1079 sprintf(lba_dev->hba.gmmio_name, "PCI%02x GMMIO", in lba_pat_resources()
1080 (int)lba_dev->hba.bus_num.start); in lba_pat_resources()
1081 r = &lba_dev->hba.gmmio_space; in lba_pat_resources()
1082 r->name = lba_dev->hba.gmmio_name; in lba_pat_resources()
1102 sprintf(lba_dev->hba.io_name, "PCI%02x Ports", in lba_pat_resources()
1103 (int)lba_dev->hba.bus_num.start); in lba_pat_resources()
1104 r = &lba_dev->hba.io_space; in lba_pat_resources()
1105 r->name = lba_dev->hba.io_name; in lba_pat_resources()
1106 r->start = HBA_PORT_BASE(lba_dev->hba.hba_num); in lba_pat_resources()
1140 lba_dev->hba.lmmio_space_offset = PCI_F_EXTEND; in lba_legacy_resources()
1149 lba_num = READ_REG32(lba_dev->hba.base_addr + LBA_FW_SCRATCH); in lba_legacy_resources()
1150 r = &(lba_dev->hba.bus_num); in lba_legacy_resources()
1159 r = &(lba_dev->hba.lmmio_space); in lba_legacy_resources()
1160 sprintf(lba_dev->hba.lmmio_name, "PCI%02x LMMIO", in lba_legacy_resources()
1161 (int)lba_dev->hba.bus_num.start); in lba_legacy_resources()
1162 r->name = lba_dev->hba.lmmio_name; in lba_legacy_resources()
1231 r->start = READ_REG32(lba_dev->hba.base_addr + LBA_LMMIO_BASE); in lba_legacy_resources()
1239 rsize = ~ READ_REG32(lba_dev->hba.base_addr + LBA_LMMIO_MASK); in lba_legacy_resources()
1268 r = &(lba_dev->hba.elmmio_space); in lba_legacy_resources()
1269 sprintf(lba_dev->hba.elmmio_name, "PCI%02x ELMMIO", in lba_legacy_resources()
1270 (int)lba_dev->hba.bus_num.start); in lba_legacy_resources()
1271 r->name = lba_dev->hba.elmmio_name; in lba_legacy_resources()
1277 r->start = READ_REG32(lba_dev->hba.base_addr + LBA_ELMMIO_BASE); in lba_legacy_resources()
1285 rsize = READ_REG32(lba_dev->hba.base_addr + LBA_ELMMIO_MASK); in lba_legacy_resources()
1290 r = &(lba_dev->hba.io_space); in lba_legacy_resources()
1291 sprintf(lba_dev->hba.io_name, "PCI%02x Ports", in lba_legacy_resources()
1292 (int)lba_dev->hba.bus_num.start); in lba_legacy_resources()
1293 r->name = lba_dev->hba.io_name; in lba_legacy_resources()
1295 r->start = READ_REG32(lba_dev->hba.base_addr + LBA_IOS_BASE) & ~1L; in lba_legacy_resources()
1296 …r->end = r->start + (READ_REG32(lba_dev->hba.base_addr + LBA_IOS_MASK) ^ (HBA_PORT_SPACE_SIZE - … in lba_legacy_resources()
1299 lba_num = HBA_PORT_BASE(lba_dev->hba.hba_num); in lba_legacy_resources()
1325 d->hba.base_addr, in lba_hw_init()
1326 READ_REG64(d->hba.base_addr + LBA_STAT_CTL), in lba_hw_init()
1327 READ_REG64(d->hba.base_addr + LBA_ERROR_CONFIG), in lba_hw_init()
1328 READ_REG64(d->hba.base_addr + LBA_ERROR_STATUS), in lba_hw_init()
1329 READ_REG64(d->hba.base_addr + LBA_DMA_CTL) ); in lba_hw_init()
1331 READ_REG64(d->hba.base_addr + LBA_ARB_MASK), in lba_hw_init()
1332 READ_REG64(d->hba.base_addr + LBA_ARB_PRI), in lba_hw_init()
1333 READ_REG64(d->hba.base_addr + LBA_ARB_MODE), in lba_hw_init()
1334 READ_REG64(d->hba.base_addr + LBA_ARB_MTLT) ); in lba_hw_init()
1336 READ_REG64(d->hba.base_addr + LBA_HINT_CFG)); in lba_hw_init()
1340 printk(" %Lx", READ_REG64(d->hba.base_addr + i)); in lba_hw_init()
1354 bus_reset = READ_REG32(d->hba.base_addr + LBA_STAT_CTL + 4) & 1; in lba_hw_init()
1359 stat = READ_REG32(d->hba.base_addr + LBA_ERROR_CONFIG); in lba_hw_init()
1363 WRITE_REG32(stat, d->hba.base_addr + LBA_ERROR_CONFIG); in lba_hw_init()
1367 stat = READ_REG32(d->hba.base_addr + LBA_STAT_CTL); in lba_hw_init()
1368 WRITE_REG32(stat | HF_ENABLE, d->hba.base_addr + LBA_STAT_CTL); in lba_hw_init()
1378 if (0 == READ_REG32(d->hba.base_addr + LBA_ARB_MASK)) { in lba_hw_init()
1389 WRITE_REG32(0x3, d->hba.base_addr + LBA_ARB_MASK); in lba_hw_init()
1499 lba_dev->hba.base_addr = addr; in lba_driver_probe()
1500 lba_dev->hba.dev = dev; in lba_driver_probe()
1502 lba_dev->hba.iommu = sba_get_iommu(dev); /* get iommu data */ in lba_driver_probe()
1531 if (lba_dev->hba.bus_num.start < lba_next_bus) in lba_driver_probe()
1532 lba_dev->hba.bus_num.start = lba_next_bus; in lba_driver_probe()
1544 &(lba_dev->hba.lmmio_space))) { in lba_driver_probe()
1546 (long)lba_dev->hba.lmmio_space.start, in lba_driver_probe()
1547 (long)lba_dev->hba.lmmio_space.end); in lba_driver_probe()
1548 lba_dev->hba.lmmio_space.flags = 0; in lba_driver_probe()
1551 pci_add_resource_offset(&resources, &lba_dev->hba.io_space, in lba_driver_probe()
1552 HBA_PORT_BASE(lba_dev->hba.hba_num)); in lba_driver_probe()
1553 if (lba_dev->hba.elmmio_space.flags) in lba_driver_probe()
1554 pci_add_resource_offset(&resources, &lba_dev->hba.elmmio_space, in lba_driver_probe()
1555 lba_dev->hba.lmmio_space_offset); in lba_driver_probe()
1556 if (lba_dev->hba.lmmio_space.flags) in lba_driver_probe()
1557 pci_add_resource_offset(&resources, &lba_dev->hba.lmmio_space, in lba_driver_probe()
1558 lba_dev->hba.lmmio_space_offset); in lba_driver_probe()
1559 if (lba_dev->hba.gmmio_space.flags) { in lba_driver_probe()
1562 &lba_dev->hba.gmmio_space); in lba_driver_probe()
1565 pci_add_resource(&resources, &lba_dev->hba.bus_num); in lba_driver_probe()
1568 lba_bus = lba_dev->hba.hba_bus = in lba_driver_probe()
1569 pci_create_root_bus(&dev->dev, lba_dev->hba.bus_num.start, in lba_driver_probe()
1590 lba_dump_res(&lba_dev->hba.io_space, 2); in lba_driver_probe()
1592 lba_dump_res(&lba_dev->hba.lmmio_space, 2); in lba_driver_probe()