scsi: cxlflash: Setup AFU PASID
Per the OCXL specification, the maximum PASID supported by the AFU is indicated by a field within the configuration space. Similar to acTags, implementations can choose to use any sub-range of PASID within their assigned range. For cxlflash, the entire range is used. Signed-off-by: Uma Krishnan <ukrishn@linux.vnet.ibm.com> Acked-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com> Reviewed-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com> Reviewed-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Родитель
d926519e8f
Коммит
41df40d817
|
@ -118,6 +118,9 @@ static int ocxlflash_config_afu(struct pci_dev *pdev, struct ocxl_hw_afu *afu)
|
||||||
dev_dbg(dev, "%s: acTag base=%d enabled=%d\n", __func__, base, count);
|
dev_dbg(dev, "%s: acTag base=%d enabled=%d\n", __func__, base, count);
|
||||||
afu->afu_actag_base = base;
|
afu->afu_actag_base = base;
|
||||||
afu->afu_actag_enabled = count;
|
afu->afu_actag_enabled = count;
|
||||||
|
afu->max_pasid = 1 << acfg->pasid_supported_log;
|
||||||
|
|
||||||
|
ocxl_config_set_afu_pasid(pdev, pos, 0, acfg->pasid_supported_log);
|
||||||
out:
|
out:
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,5 +25,6 @@ struct ocxl_hw_afu {
|
||||||
int afu_actag_base; /* AFU acTag base */
|
int afu_actag_base; /* AFU acTag base */
|
||||||
int afu_actag_enabled; /* AFU acTag number enabled */
|
int afu_actag_enabled; /* AFU acTag number enabled */
|
||||||
|
|
||||||
|
int max_pasid; /* Maximum number of contexts */
|
||||||
bool is_present; /* Function has AFUs defined */
|
bool is_present; /* Function has AFUs defined */
|
||||||
};
|
};
|
||||||
|
|
Загрузка…
Ссылка в новой задаче