[Skiboot] [PATCH v2 1/9] core/pci: Return error on invalid power state transition
Andrew Donnellan
andrew.donnellan at au1.ibm.com
Thu Oct 13 15:18:10 AEDT 2016
On 13/10/16 12:16, Gavin Shan wrote:
> This returns error (OPAL_PARAMETER) when having invalid power state
> transition requests. The invalid requests include: ON to ON, OFF to
> OFF.
>
> Signed-off-by: Gavin Shan <gwshan at linux.vnet.ibm.com>
What's the advantage of doing this rather than immediately returning
OPAL_SUCCESS?
> ---
> core/pcie-slot.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/core/pcie-slot.c b/core/pcie-slot.c
> index 6854ef1..7fe3785 100644
> --- a/core/pcie-slot.c
> +++ b/core/pcie-slot.c
> @@ -199,13 +199,13 @@ static int64_t pcie_slot_set_power_state(struct pci_slot *slot, uint8_t val)
> uint32_t ecap;
> uint16_t state;
>
> + if (slot->power_state == val)
> + return OPAL_PARAMETER;
> +
> /* Drop the request if functionality doesn't exist */
> if (!(slot->slot_cap & PCICAP_EXP_SLOTCAP_PWCTRL))
> return OPAL_SUCCESS;
>
> - if (slot->power_state == val)
> - return OPAL_SUCCESS;
> -
> pci_slot_set_state(slot, PCI_SLOT_STATE_SPOWER_START);
> slot->power_state = val;
> ecap = pci_cap(pd, PCI_CFG_CAP_ID_EXP, false);
>
--
Andrew Donnellan OzLabs, ADL Canberra
andrew.donnellan at au1.ibm.com IBM Australia Limited
More information about the Skiboot
mailing list