Lines Matching refs:pe

202 	struct eeh_pe pe;  in pseries_eeh_probe()  local
209 if (!edev || edev->pe) in pseries_eeh_probe()
244 memset(&pe, 0, sizeof(struct eeh_pe)); in pseries_eeh_probe()
245 pe.phb = edev->phb; in pseries_eeh_probe()
246 pe.config_addr = (pdn->busno << 16) | (pdn->devfn << 8); in pseries_eeh_probe()
249 ret = eeh_ops->set_option(&pe, EEH_OPT_ENABLE); in pseries_eeh_probe()
253 edev->pe_config_addr = eeh_ops->get_pe_addr(&pe); in pseries_eeh_probe()
254 pe.addr = edev->pe_config_addr; in pseries_eeh_probe()
260 ret = eeh_ops->get_state(&pe, NULL); in pseries_eeh_probe()
270 PCI_FUNC(pdn->devfn), pe.phb->global_number, in pseries_eeh_probe()
271 pe.addr); in pseries_eeh_probe()
273 (pdn_to_eeh_dev(pdn->parent))->pe) { in pseries_eeh_probe()
298 static int pseries_eeh_set_option(struct eeh_pe *pe, int option) in pseries_eeh_set_option() argument
314 config_addr = pe->config_addr; in pseries_eeh_set_option()
315 if (pe->addr) in pseries_eeh_set_option()
316 config_addr = pe->addr; in pseries_eeh_set_option()
328 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_set_option()
329 BUID_LO(pe->phb->buid), option); in pseries_eeh_set_option()
347 static int pseries_eeh_get_pe_addr(struct eeh_pe *pe) in pseries_eeh_get_pe_addr() argument
359 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr()
360 BUID_LO(pe->phb->buid), 1); in pseries_eeh_get_pe_addr()
366 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr()
367 BUID_LO(pe->phb->buid), 0); in pseries_eeh_get_pe_addr()
370 __func__, pe->phb->global_number, pe->config_addr); in pseries_eeh_get_pe_addr()
379 pe->config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_pe_addr()
380 BUID_LO(pe->phb->buid), 0); in pseries_eeh_get_pe_addr()
383 __func__, pe->phb->global_number, pe->config_addr); in pseries_eeh_get_pe_addr()
406 static int pseries_eeh_get_state(struct eeh_pe *pe, int *state) in pseries_eeh_get_state() argument
414 config_addr = pe->config_addr; in pseries_eeh_get_state()
415 if (pe->addr) in pseries_eeh_get_state()
416 config_addr = pe->addr; in pseries_eeh_get_state()
420 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_state()
421 BUID_LO(pe->phb->buid)); in pseries_eeh_get_state()
426 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_get_state()
427 BUID_LO(pe->phb->buid)); in pseries_eeh_get_state()
477 static int pseries_eeh_reset(struct eeh_pe *pe, int option) in pseries_eeh_reset() argument
483 config_addr = pe->config_addr; in pseries_eeh_reset()
484 if (pe->addr) in pseries_eeh_reset()
485 config_addr = pe->addr; in pseries_eeh_reset()
489 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_reset()
490 BUID_LO(pe->phb->buid), option); in pseries_eeh_reset()
497 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_reset()
498 BUID_LO(pe->phb->buid), option); in pseries_eeh_reset()
519 static int pseries_eeh_wait_state(struct eeh_pe *pe, int max_wait) in pseries_eeh_wait_state() argument
536 ret = pseries_eeh_get_state(pe, &mwait); in pseries_eeh_wait_state()
580 static int pseries_eeh_get_log(struct eeh_pe *pe, int severity, char *drv_log, unsigned long len) in pseries_eeh_get_log() argument
590 config_addr = pe->config_addr; in pseries_eeh_get_log()
591 if (pe->addr) in pseries_eeh_get_log()
592 config_addr = pe->addr; in pseries_eeh_get_log()
595 BUID_HI(pe->phb->buid), BUID_LO(pe->phb->buid), in pseries_eeh_get_log()
614 static int pseries_eeh_configure_bridge(struct eeh_pe *pe) in pseries_eeh_configure_bridge() argument
622 config_addr = pe->config_addr; in pseries_eeh_configure_bridge()
623 if (pe->addr) in pseries_eeh_configure_bridge()
624 config_addr = pe->addr; in pseries_eeh_configure_bridge()
630 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_configure_bridge()
631 BUID_LO(pe->phb->buid)); in pseries_eeh_configure_bridge()
634 config_addr, BUID_HI(pe->phb->buid), in pseries_eeh_configure_bridge()
635 BUID_LO(pe->phb->buid)); in pseries_eeh_configure_bridge()
661 __func__, pe->phb->global_number, pe->addr, ret); in pseries_eeh_configure_bridge()