[Skiboot] [PATCH v11 09/23] core/pci: Fix wrong reserved PE# in enumeration
Stewart Smith
stewart at linux.vnet.ibm.com
Wed Jun 8 14:58:05 AEST 2016
Gavin Shan <gwshan at linux.vnet.ibm.com> writes:
> When scanning to non-existing PCI device, EEH (frozen) error is
> usually happening. We clear the unexpected frozen PE state after
> it. The reserved PE number is assumed to be 0 wrongly. So the
> frozen state on the reserved PE number isn't cleared properly.
>
> This introduces struct phb_ops::get_info() to retrieve the reserved
> PE number from platforms. Then the EEH frozen state checking and
> clearing are applied to the reserved PE number.
>
> Signed-off-by: Gavin Shan <gwshan at linux.vnet.ibm.com>
> ---
> core/pci.c | 15 ++++++++++++---
> hw/npu.c | 1 +
> hw/p7ioc-phb.c | 15 +++++++++++++++
> hw/phb3.c | 16 ++++++++++++++++
> include/pci.h | 7 +++++++
> 5 files changed, 51 insertions(+), 3 deletions(-)
I'd prefer just a int64_t (or int46_t*) to the get_info() function
unless there's a real set of other things we need to have a get_info
method for. We can always add get_info() once we get a few - but in
general, it looks a bit too ioctl() like for me.
--
Stewart Smith
OPAL Architect, IBM.
More information about the Skiboot
mailing list