• Ian Munsie's avatar
    cxl: Add cxl_slot_is_supported API · 4e56f858
    Ian Munsie authored
    This extends the check that the adapter is in a CAPI capable slot so
    that it may be called by external users in the kernel API. This will be
    used by the upcoming Mellanox CX4 support, which needs to know ahead of
    time if the card can be switched to cxl mode so that it can leave it in
    PCI mode if it is not.
    
    This API takes a parameter to check if CAPP DMA mode is supported, which
    it currently only allows on P8NVL systems, since that mode currently has
    issues accessing memory < 4GB on P8, and we cannot realistically avoid
    that.
    
    This API does not currently check if a CAPP unit is available (i.e. not
    already assigned to another PHB) on P8. Doing so would be racy since it
    is assigned on a first come first serve basis, and so long as CAPP DMA
    mode is not supported on P8 we don't need this, since the only
    anticipated user of this API requires CAPP DMA mode.
    
    Cc: Philippe Bergheaud <felix@linux.vnet.ibm.com>
    Signed-off-by: default avatarIan Munsie <imunsie@au1.ibm.com>
    Reviewed-by: default avatarAndrew Donnellan <andrew.donnellan@au1.ibm.com>
    Reviewed-by: default avatarFrederic Barrat <fbarrat@linux.vnet.ibm.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    4e56f858
pci.c 49.5 KB