Commit 920173c7 authored by Dikshita Agarwal's avatar Dikshita Agarwal Committed by Mauro Carvalho Chehab
Browse files

media: venus: Add num_vpp_pipes to resource structure



V6 HW can have vpp pipes as 1 or 4, add num_vpp_pipes
to resource struture to differentiate.

Signed-off-by: default avatarDikshita Agarwal <dikshita@codeaurora.org>
Signed-off-by: default avatarStanimir Varbanov <stanimir.varbanov@linaro.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 275ad3b3
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -727,6 +727,7 @@ static const struct venus_resources sm8250_res = {
	.vcodec_num = 1,
	.max_load = 7833600,
	.hfi_version = HFI_VERSION_6XX,
	.num_vpp_pipes = 4,
	.vmem_id = VIDC_RESOURCE_NONE,
	.vmem_size = 0,
	.vmem_addr = 0,
@@ -778,6 +779,7 @@ static const struct venus_resources sc7280_res = {
	.opp_pmdomain = (const char *[]) { "cx", NULL },
	.vcodec_num = 1,
	.hfi_version = HFI_VERSION_6XX,
	.num_vpp_pipes = 1,
	.vmem_id = VIDC_RESOURCE_NONE,
	.vmem_size = 0,
	.vmem_addr = 0,
+1 −0
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ struct venus_resources {
	const char * const resets[VIDC_RESETS_NUM_MAX];
	unsigned int resets_num;
	enum hfi_version hfi_version;
	u8 num_vpp_pipes;
	u32 max_load;
	unsigned int vmem_id;
	u32 vmem_size;
+1 −1
Original line number Diff line number Diff line
@@ -583,7 +583,7 @@ static int platform_get_bufreq(struct venus_inst *inst, u32 buftype,
		return -EINVAL;

	params.version = version;
	params.num_vpp_pipes = hfi_platform_num_vpp_pipes(version);
	params.num_vpp_pipes = inst->core->res->num_vpp_pipes;

	if (is_dec) {
		params.width = inst->width;
+0 −13
Original line number Diff line number Diff line
@@ -66,16 +66,3 @@ hfi_platform_get_codec_lp_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;
}
+0 −2
Original line number Diff line number Diff line
@@ -52,7 +52,6 @@ struct hfi_platform {
	unsigned long (*codec_lp_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);
	int (*bufreq)(struct hfi_plat_buffers_params *params, u32 session_type,
		      u32 buftype, struct hfi_buffer_requirements *bufreq);
};
@@ -67,5 +66,4 @@ unsigned long hfi_platform_get_codec_vsp_freq(enum hfi_version version, u32 code
					      u32 session_type);
unsigned long hfi_platform_get_codec_lp_freq(enum hfi_version version, u32 codec,
					     u32 session_type);
u8 hfi_platform_num_vpp_pipes(enum hfi_version version);
#endif
Loading