lkml.org 
[lkml]   [2020]   [Jan]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 066/191] PCI: rpaphp: Dont rely on firmware feature to imply drc-info support
    Date
    From: Tyrel Datwyler <tyreld@linux.ibm.com>

    [ Upstream commit 52e2b0f16574afd082cff0f0e8567b2d9f68c033 ]

    In the event that the partition is migrated to a platform with older
    firmware that doesn't support the ibm,drc-info property the device
    tree is modified to remove the ibm,drc-info property and replace it
    with the older style ibm,drc-* properties for types, names, indexes,
    and power-domains. One of the requirements of the drc-info firmware
    feature is that the client is able to handle both the new property,
    and old style properties at runtime. Therefore we can't rely on the
    firmware feature alone to dictate which property is currently
    present in the device tree.

    Fix this short coming by checking explicitly for the ibm,drc-info
    property, and falling back to the older ibm,drc-* properties if it
    doesn't exist.

    Signed-off-by: Tyrel Datwyler <tyreld@linux.ibm.com>
    Acked-by: Bjorn Helgaas <bhelgaas@google.com>
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/1573449697-5448-6-git-send-email-tyreld@linux.ibm.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/pci/hotplug/rpaphp_core.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/pci/hotplug/rpaphp_core.c b/drivers/pci/hotplug/rpaphp_core.c
    index e3502644a45c..e18e9a0e959c 100644
    --- a/drivers/pci/hotplug/rpaphp_core.c
    +++ b/drivers/pci/hotplug/rpaphp_core.c
    @@ -275,7 +275,7 @@ int rpaphp_check_drc_props(struct device_node *dn, char *drc_name,
    return -EINVAL;
    }

    - if (firmware_has_feature(FW_FEATURE_DRC_INFO))
    + if (of_find_property(dn->parent, "ibm,drc-info", NULL))
    return rpaphp_check_drc_props_v2(dn, drc_name, drc_type,
    *my_index);
    else
    --
    2.20.1


    \
     
     \ /
      Last update: 2020-01-02 23:15    [W:4.050 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site