From: Lang Yu <[email protected]>

Enable Video Processing Engine on SoCs
that contain VPE 6.1.0.

Signed-off-by: Lang Yu <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
index c513b1650be5..ed68ed9b9e72 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
@@ -90,6 +90,8 @@
 #include "smuio_v13_0_3.h"
 #include "smuio_v13_0_6.h"
 
+#include "amdgpu_vpe.h"
+
 #define FIRMWARE_IP_DISCOVERY "amdgpu/ip_discovery.bin"
 MODULE_FIRMWARE(FIRMWARE_IP_DISCOVERY);
 
@@ -2138,6 +2140,19 @@ static void amdgpu_discovery_init_soc_config(struct 
amdgpu_device *adev)
        }
 }
 
+static int amdgpu_discovery_set_vpe_ip_blocks(struct amdgpu_device *adev)
+{
+       switch (adev->ip_versions[VPE_HWIP][0]) {
+       case IP_VERSION(6, 1, 0):
+               amdgpu_device_ip_block_add(adev, &vpe_v6_1_ip_block);
+               break;
+       default:
+               break;
+       }
+
+       return 0;
+}
+
 int amdgpu_discovery_set_ip_blocks(struct amdgpu_device *adev)
 {
        int r;
@@ -2625,6 +2640,10 @@ int amdgpu_discovery_set_ip_blocks(struct amdgpu_device 
*adev)
        if (r)
                return r;
 
+       r = amdgpu_discovery_set_vpe_ip_blocks(adev);
+       if (r)
+               return r;
+
        return 0;
 }
 
-- 
2.41.0

Reply via email to