drm/amd/amdgpu/sriov temporarily skip ras,dtm,hdcp for arcturus VF
Temporarily skip ras,dtm,hdcp initialize and terminate for arcturus VF Currently the three features haven't been enabled at SRIOV, it would trigger guest driver load fail with the bare-metal path of the three features. Signed-off-by: Jack Zhang <Jack.Zhang1@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
210b3b3c75
commit
ef1c0cbcd1
|
@ -758,6 +758,12 @@ static int psp_ras_terminate(struct psp_context *psp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: bypass the terminate in sriov for now
|
||||||
|
*/
|
||||||
|
if (amdgpu_sriov_vf(psp->adev))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!psp->ras.ras_initialized)
|
if (!psp->ras.ras_initialized)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
@ -779,6 +785,12 @@ static int psp_ras_initialize(struct psp_context *psp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: bypass the initialize in sriov for now
|
||||||
|
*/
|
||||||
|
if (amdgpu_sriov_vf(psp->adev))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!psp->adev->psp.ta_ras_ucode_size ||
|
if (!psp->adev->psp.ta_ras_ucode_size ||
|
||||||
!psp->adev->psp.ta_ras_start_addr) {
|
!psp->adev->psp.ta_ras_start_addr) {
|
||||||
dev_warn(psp->adev->dev, "RAS: ras ta ucode is not available\n");
|
dev_warn(psp->adev->dev, "RAS: ras ta ucode is not available\n");
|
||||||
|
@ -874,6 +886,12 @@ static int psp_hdcp_initialize(struct psp_context *psp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: bypass the initialize in sriov for now
|
||||||
|
*/
|
||||||
|
if (amdgpu_sriov_vf(psp->adev))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!psp->adev->psp.ta_hdcp_ucode_size ||
|
if (!psp->adev->psp.ta_hdcp_ucode_size ||
|
||||||
!psp->adev->psp.ta_hdcp_start_addr) {
|
!psp->adev->psp.ta_hdcp_start_addr) {
|
||||||
dev_warn(psp->adev->dev, "HDCP: hdcp ta ucode is not available\n");
|
dev_warn(psp->adev->dev, "HDCP: hdcp ta ucode is not available\n");
|
||||||
|
@ -962,6 +980,12 @@ static int psp_hdcp_terminate(struct psp_context *psp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: bypass the terminate in sriov for now
|
||||||
|
*/
|
||||||
|
if (amdgpu_sriov_vf(psp->adev))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!psp->hdcp_context.hdcp_initialized)
|
if (!psp->hdcp_context.hdcp_initialized)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
@ -1053,6 +1077,12 @@ static int psp_dtm_initialize(struct psp_context *psp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: bypass the initialize in sriov for now
|
||||||
|
*/
|
||||||
|
if (amdgpu_sriov_vf(psp->adev))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!psp->adev->psp.ta_dtm_ucode_size ||
|
if (!psp->adev->psp.ta_dtm_ucode_size ||
|
||||||
!psp->adev->psp.ta_dtm_start_addr) {
|
!psp->adev->psp.ta_dtm_start_addr) {
|
||||||
dev_warn(psp->adev->dev, "DTM: dtm ta ucode is not available\n");
|
dev_warn(psp->adev->dev, "DTM: dtm ta ucode is not available\n");
|
||||||
|
@ -1111,6 +1141,12 @@ static int psp_dtm_terminate(struct psp_context *psp)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: bypass the terminate in sriov for now
|
||||||
|
*/
|
||||||
|
if (amdgpu_sriov_vf(psp->adev))
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!psp->dtm_context.dtm_initialized)
|
if (!psp->dtm_context.dtm_initialized)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue