OSDN Git Service

media: venus: hfi_plat: Add platform ops for getting number of VPP pipes
authorStanimir Varbanov <stanimir.varbanov@linaro.org>
Wed, 26 Aug 2020 11:35:47 +0000 (13:35 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 13 Jan 2021 08:14:30 +0000 (09:14 +0100)
Starting from v6 we have one more hfi property which will be needed
to calculate buffer sizes/count for particular codec and session type.

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/platform/qcom/venus/hfi_platform.c
drivers/media/platform/qcom/venus/hfi_platform.h

index 65559ca..06f4690 100644 (file)
@@ -47,3 +47,17 @@ hfi_platform_get_codec_vsp_freq(enum hfi_version version, u32 codec, u32 session
 
        return freq;
 }
+
+u8 hfi_platform_num_vpp_pipes(enum hfi_version version)
+{
+       const struct hfi_platform *plat;
+
+       plat = hfi_platform_get(version);
+       if (!plat)
+               return 0;
+
+       if (plat->num_vpp_pipes)
+               return plat->num_vpp_pipes();
+
+       return 0;
+}
index 50512d1..5cc67c0 100644 (file)
@@ -49,6 +49,7 @@ struct hfi_platform {
        unsigned long (*codec_vsp_freq)(u32 session_type, u32 codec);
        void (*codecs)(u32 *enc_codecs, u32 *dec_codecs, u32 *count);
        const struct hfi_plat_caps *(*capabilities)(unsigned int *entries);
+       u8 (*num_vpp_pipes)(void);
 };
 
 extern const struct hfi_platform hfi_plat_v4;
@@ -58,4 +59,5 @@ unsigned long hfi_platform_get_codec_vpp_freq(enum hfi_version version, u32 code
                                              u32 session_type);
 unsigned long hfi_platform_get_codec_vsp_freq(enum hfi_version version, u32 codec,
                                              u32 session_type);
+u8 hfi_platform_num_vpp_pipes(enum hfi_version version);
 #endif