Lines Matching defs:pxu_p

106 px_lib_map_regs(pxu_t *pxu_p, dev_info_t *dip)
111 DBG(DBG_ATTACH, dip, "px_lib_map_regs: pxu_p:0x%p, dip 0x%p\n",
112 pxu_p, dip);
121 if (ddi_regs_map_setup(dip, reg_bank, &pxu_p->px_address[reg_bank],
122 0, 0, &attr, &pxu_p->px_ac[reg_bank]) != DDI_SUCCESS) {
131 if (ddi_regs_map_setup(dip, reg_bank, &pxu_p->px_address[reg_bank],
132 0, 0, &attr, &pxu_p->px_ac[reg_bank]) != DDI_SUCCESS) {
136 pxu_p->px_address[reg_bank] -= FIRE_CONTROL_STATUS;
141 reg_bank, pxu_p->px_address[reg_bank]);
151 pxu_p->px_address[reg_bank] = NULL;
152 ddi_regs_map_free(&pxu_p->px_ac[reg_bank]);
168 px_lib_unmap_regs(pxu_t *pxu_p)
173 if (pxu_p->px_ac[i])
174 ddi_regs_map_free(&pxu_p->px_ac[i]);
184 pxu_t *pxu_p;
205 pxu_p = kmem_zalloc(sizeof (pxu_t), KM_SLEEP);
206 pxu_p->chip_type = chip_type;
207 pxu_p->portid = ddi_getprop(DDI_DEV_T_ANY, dip, DDI_PROP_DONTPASS,
211 if (px_lib_map_regs(pxu_p, dip) == DDI_FAILURE) {
212 kmem_free(pxu_p, sizeof (pxu_t));
217 xbc_csr_base = (caddr_t)pxu_p->px_address[PX_REG_XBC];
218 csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
220 pxu_p->tsb_cookie = iommu_tsb_alloc(pxu_p->portid);
221 pxu_p->tsb_size = iommu_tsb_cookie_to_size(pxu_p->tsb_cookie);
222 pxu_p->tsb_vaddr = iommu_tsb_cookie_to_va(pxu_p->tsb_cookie);
224 pxu_p->tsb_paddr = va_to_pa(pxu_p->tsb_vaddr);
231 - ((pxu_p->tsb_size >> 3) << MMU_PAGE_SHIFT);
241 hvio_cb_init(xbc_csr_base, pxu_p);
242 hvio_ib_init(csr_base, pxu_p);
243 hvio_pec_init(csr_base, pxu_p);
244 hvio_mmu_init(csr_base, pxu_p);
246 px_p->px_plat_p = (void *)pxu_p;
251 switch (PX_CHIP_TYPE(pxu_p)) {
296 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
303 switch (PX_CHIP_TYPE(pxu_p)) {
306 chip_mask = BITMASK(PX_CHIP_TYPE(pxu_p));
307 csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
317 iommu_tsb_free(pxu_p->tsb_cookie);
333 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
340 pxu_p, devino, sysino)) != H_EOK) {
443 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
449 if ((ret = hvio_intr_gettarget(DIP_TO_HANDLE(dip), pxu_p,
466 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
472 if ((ret = hvio_intr_settarget(DIP_TO_HANDLE(dip), pxu_p,
511 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
518 if ((ret = hvio_iommu_map(px_p->px_dev_hdl, pxu_p, tsbid, pages,
533 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
539 if ((ret = hvio_iommu_demap(px_p->px_dev_hdl, pxu_p, tsbid, pages))
556 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
562 if ((ret = hvio_iommu_getmap(DIP_TO_HANDLE(dip), pxu_p, tsbid,
599 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
601 *lo_p = hvio_get_bypass_base(pxu_p);
602 *hi_p = hvio_get_bypass_end(pxu_p);
615 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
620 if ((ret = hvio_iommu_getbypass(DIP_TO_HANDLE(dip), pxu_p, ra,
641 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
643 if ((PX_CHIP_TYPE(pxu_p) == PX_CHIP_OBERON) && (attr & PCI_MAP_ATTR_RO))
659 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
668 if (PX_CHIP_TYPE(pxu_p) == PX_CHIP_OBERON)
719 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
748 pxu_p->msiq_mapped_p = vmem_xalloc(px_p->px_mmu_p->mmu_dvma_map,
751 if (pxu_p->msiq_mapped_p == NULL)
755 MMU_BTOP((ulong_t)pxu_p->msiq_mapped_p));
769 pxu_p)) != H_EOK) {
785 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
800 MMU_BTOP((ulong_t)pxu_p->msiq_mapped_p));
807 (void *)pxu_p->msiq_mapped_p, size);
1325 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
1332 dev_hdl = (devhandle_t)pxu_p->px_address[PX_REG_CSR];
1333 xbus_dev_hdl = (devhandle_t)pxu_p->px_address[PX_REG_XBC];
1335 if ((ret = hvio_suspend(dev_hdl, pxu_p)) != H_EOK)
1339 ret = hvio_cb_suspend(xbus_dev_hdl, pxu_p);
1343 pxu_p->cpr_flag = PX_ENTERED_CPR;
1353 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
1361 dev_hdl = (devhandle_t)pxu_p->px_address[PX_REG_CSR];
1362 xbus_dev_hdl = (devhandle_t)pxu_p->px_address[PX_REG_XBC];
1365 hvio_cb_resume(dev_hdl, xbus_dev_hdl, xbc_ino, pxu_p);
1367 hvio_resume(dev_hdl, pec_ino, pxu_p);
1378 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
1385 ubc_id = (((pxu_p->portid >> OBERON_PORT_ID_IOC) &
1386 OBERON_PORT_ID_IOC_MASK) | (((pxu_p->portid >>
1458 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
1463 if (PX_CHIP_TYPE(pxu_p) == PX_CHIP_OBERON)
1466 return (CSR_XR((caddr_t)pxu_p->px_address[PX_REG_XBC], JBUS_SCRATCH_1));
1473 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
1478 if (PX_CHIP_TYPE(pxu_p) == PX_CHIP_OBERON) {
1483 CSR_XS((caddr_t)pxu_p->px_address[PX_REG_XBC], JBUS_SCRATCH_1, val);
1873 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
1874 caddr_t csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
2020 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2021 caddr_t csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
2184 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2197 pxu_p->px_cb_p = cb_p;
2202 (pxu_p->chip_type == PX_CHIP_FIRE) ?
2204 pxu_p->px_address[PX_REG_XBC]);
2206 pxu_p->px_cb_p = cb_p;
2260 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2286 pxu_p->px_cb_p = NULL;
2324 (pxu_p->chip_type == PX_CHIP_FIRE) ? PX_ERR_JBC : PX_ERR_UBC,
2325 pxu_p->px_address[PX_REG_XBC]);
2380 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2390 csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
2428 pxu_p->cpr_flag = PX_NOT_CPR;
2473 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2476 switch (PX_CHIP_TYPE(pxu_p)) {
2545 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2559 pxu_p->hp_sysino, INTR_IDLE_STATE) != DDI_SUCCESS)
2569 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2578 px_p->px_inos[PX_INTR_HOTPLUG], &pxu_p->hp_sysino) !=
2588 VERIFY(add_ivintr(pxu_p->hp_sysino, PCIE_INTR_PRI,
2603 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2608 VERIFY(rem_ivintr(pxu_p->hp_sysino, PCIE_INTR_PRI) == 0);
2629 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2630 caddr_t csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
2633 if (PX_CHIP_TYPE(pxu_p) == PX_CHIP_OBERON) {
2645 pxu_t *pxu_p = (pxu_t *)px_p->px_plat_p;
2646 caddr_t csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
2658 pxu_t *pxu_p;
2661 pxu_p = (pxu_t *)px_p->px_plat_p;
2663 if (pxu_p == NULL)
2666 csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];
2679 pxu_t *pxu_p;
2685 pxu_p = (pxu_t *)px_p->px_plat_p;
2687 if (pxu_p == NULL)
2690 csr_base = (caddr_t)pxu_p->px_address[PX_REG_CSR];