Lines Matching refs:pe
249 struct eeh_pe pe; in pseries_eeh_probe() local
256 if (!edev || edev->pe) in pseries_eeh_probe()
291 memset(&pe, 0, sizeof(struct eeh_pe)); in pseries_eeh_probe()
292 pe.phb = pdn->phb; in pseries_eeh_probe()
293 pe.config_addr = (pdn->busno << 16) | (pdn->devfn << 8); in pseries_eeh_probe()
296 ret = eeh_ops->set_option(&pe, EEH_OPT_ENABLE); in pseries_eeh_probe()
299 edev->pe_config_addr = eeh_ops->get_pe_addr(&pe); in pseries_eeh_probe()
300 pe.addr = edev->pe_config_addr; in pseries_eeh_probe()
306 ret = eeh_ops->get_state(&pe, NULL); in pseries_eeh_probe()
316 PCI_FUNC(pdn->devfn), pe.phb->global_number, in pseries_eeh_probe()
317 pe.addr); in pseries_eeh_probe()
319 (pdn_to_eeh_dev(pdn->parent))->pe) { in pseries_eeh_probe()
343 static int pseries_eeh_set_option(struct eeh_pe *pe, int option) in pseries_eeh_set_option() argument
359 config_addr = pe->config_addr; in pseries_eeh_set_option()
360 if (pe->addr) in pseries_eeh_set_option()
361 config_addr = pe->addr; in pseries_eeh_set_option()
373 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_set_option()
374 BUID_LO(pe->phb->buid), option); in pseries_eeh_set_option()
392 static int pseries_eeh_get_pe_addr(struct eeh_pe *pe) in pseries_eeh_get_pe_addr() argument
404 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr()
405 BUID_LO(pe->phb->buid), 1); in pseries_eeh_get_pe_addr()
411 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr()
412 BUID_LO(pe->phb->buid), 0); in pseries_eeh_get_pe_addr()
415 __func__, pe->phb->global_number, pe->config_addr); in pseries_eeh_get_pe_addr()
424 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr()
425 BUID_LO(pe->phb->buid), 0); in pseries_eeh_get_pe_addr()
428 __func__, pe->phb->global_number, pe->config_addr); in pseries_eeh_get_pe_addr()
451 static int pseries_eeh_get_state(struct eeh_pe *pe, int *state) in pseries_eeh_get_state() argument
459 config_addr = pe->config_addr; in pseries_eeh_get_state()
460 if (pe->addr) in pseries_eeh_get_state()
461 config_addr = pe->addr; in pseries_eeh_get_state()
465 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_state()
466 BUID_LO(pe->phb->buid)); in pseries_eeh_get_state()
471 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_state()
472 BUID_LO(pe->phb->buid)); in pseries_eeh_get_state()
522 static int pseries_eeh_reset(struct eeh_pe *pe, int option) in pseries_eeh_reset() argument
528 config_addr = pe->config_addr; in pseries_eeh_reset()
529 if (pe->addr) in pseries_eeh_reset()
530 config_addr = pe->addr; in pseries_eeh_reset()
534 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_reset()
535 BUID_LO(pe->phb->buid), option); in pseries_eeh_reset()
542 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_reset()
543 BUID_LO(pe->phb->buid), option); in pseries_eeh_reset()
564 static int pseries_eeh_wait_state(struct eeh_pe *pe, int max_wait) in pseries_eeh_wait_state() argument
581 ret = pseries_eeh_get_state(pe, &mwait); in pseries_eeh_wait_state()
625 static int pseries_eeh_get_log(struct eeh_pe *pe, int severity, char *drv_log, unsigned long len) in pseries_eeh_get_log() argument
635 config_addr = pe->config_addr; in pseries_eeh_get_log()
636 if (pe->addr) in pseries_eeh_get_log()
637 config_addr = pe->addr; in pseries_eeh_get_log()
640 BUID_HI(pe->phb->buid), BUID_LO(pe->phb->buid), in pseries_eeh_get_log()
659 static int pseries_eeh_configure_bridge(struct eeh_pe *pe) in pseries_eeh_configure_bridge() argument
667 config_addr = pe->config_addr; in pseries_eeh_configure_bridge()
668 if (pe->addr) in pseries_eeh_configure_bridge()
669 config_addr = pe->addr; in pseries_eeh_configure_bridge()
673 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_configure_bridge()
674 BUID_LO(pe->phb->buid)); in pseries_eeh_configure_bridge()
697 __func__, pe->phb->global_number, pe->addr, ret); in pseries_eeh_configure_bridge()