Re: [PATCH v5 7/8] media: qcom: venus: Add msm8939 resource struct
Bryan O'Donoghue <[email protected]>
| Newsgroups | org.kernel.vger.phone-devel,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-media |
|---|---|
| Message-ID | <[email protected]> |
On 07/05/2026 09:32, Erikas Bitovtas wrote: > From: André Apitzsch <[email protected]> > > Add msm8939 configuration data and related compatible. > > Reviewed-by: Dmitry Baryshkov <[email protected]> > Signed-off-by: André Apitzsch <[email protected]> > Signed-off-by: Erikas Bitovtas <[email protected]> > --- > drivers/media/platform/qcom/venus/core.c | 41 ++++++++++++++++++++++++++++++++ > 1 file changed, 41 insertions(+) > > diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c > index 7e639760c41d..6ad20d58dda2 100644 > --- a/drivers/media/platform/qcom/venus/core.c > +++ b/drivers/media/platform/qcom/venus/core.c > @@ -688,6 +688,46 @@ static const struct venus_resources msm8916_res = { > .enc_nodename = "video-encoder", > }; > > +static const struct freq_tbl msm8939_freq_table[] = { > + { 489600, 266670000 }, /* 1080p @ 60 */ > + { 244800, 133330000 }, /* 1080p @ 30 */ > + { 244800, 200000000 }, /* 1080p @ 30 */ > + { 220800, 133330000 }, /* 720p @ 60 */ > + { 108000, 133330000 }, /* 720p @ 30 */ > + { 108000, 200000000 }, /* 720p @ 30 */ > + { 72000, 133330000 }, /* VGA @ 60 */ > + { 36000, 133330000 }, /* VGA @ 30 */ > +}; > + > +static const struct reg_val msm8939_reg_preset[] = { > + { 0xe0020, 0x0aaaaaaa }, > + { 0xe0024, 0x0aaaaaaa }, > + { 0x80124, 0x00000003 }, > +}; > + > +static const struct venus_resources msm8939_res = { > + .freq_tbl = msm8939_freq_table, > + .freq_tbl_size = ARRAY_SIZE(msm8939_freq_table), > + .reg_tbl = msm8939_reg_preset, > + .reg_tbl_size = ARRAY_SIZE(msm8939_reg_preset), > + .clks = { "core", "iface", "bus", }, > + .clks_num = 3, > + .vcodec0_clks = { "vcodec0_core", "vcodec1_core" }, > + .vcodec1_clks = { "vcodec0_core", "vcodec1_core" }, > + .vcodec_clks_num = 2, > + .vcodec_pmdomains = (const char *[]) { "venus", "vcodec0", "vcodec1" }, > + .vcodec_pmdomains_num = 3, > + .max_load = 489600, /* 1080p@30 + 1080p@30 */ > + .hfi_version = HFI_VERSION_1XX, > + .vmem_id = VIDC_RESOURCE_NONE, > + .vmem_size = 0, > + .vmem_addr = 0, > + .dma_mask = 0xddc00000 - 1, > + .fwname = "qcom/venus-1.8/venus.mbn", > + .dec_nodename = "video-decoder", > + .enc_nodename = "video-encoder", > +}; > + > static const struct freq_tbl msm8996_freq_table[] = { > { 1944000, 520000000 }, /* 4k UHD @ 60 (decode only) */ > { 972000, 520000000 }, /* 4k UHD @ 30 */ > @@ -1121,6 +1161,7 @@ static const struct venus_resources qcm2290_res = { > > static const struct of_device_id venus_dt_match[] = { > { .compatible = "qcom,msm8916-venus", .data = &msm8916_res, }, > + { .compatible = "qcom,msm8939-venus", .data = &msm8939_res, }, > { .compatible = "qcom,msm8996-venus", .data = &msm8996_res, }, > { .compatible = "qcom,msm8998-venus", .data = &msm8998_res, }, > { .compatible = "qcom,qcm2290-venus", .data = &qcm2290_res, }, > > -- > 2.54.0 > Reviewed-by: Bryan O'Donoghue <[email protected]> --- bod