On Tue, Mar 04, 2025 at 01:07:12PM +0000, Bryan O'Donoghue wrote: > From: Konrad Dybcio <konradybcio@xxxxxxxxxx> > > Add SC8280XP configuration data and related compatible. > > Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> > Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> > Link: https://lore.kernel.org/r/20230731-topic-8280_venus-v1-6-8c8bbe1983a5@xxxxxxxxxx > [ johan: rebase on 6.9-rc1; convert vcodec_pmdomains ] > Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> > [ bod: added static video encoder/decoder desciptors ] > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> > --- > drivers/media/platform/qcom/venus/core.c | 47 ++++++++++++++++++++++++++++++++ > 1 file changed, 47 insertions(+) > > diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c > index dbce635f9fa45..3d23a5919462d 100644 > --- a/drivers/media/platform/qcom/venus/core.c > +++ b/drivers/media/platform/qcom/venus/core.c > @@ -1116,6 +1116,52 @@ static const struct venus_resources sc7280_res = { > .enc_nodename = "video-encoder", > }; > > +static const struct freq_tbl sc8280xp_freq_table[] = { > + { 0, 239999999 }, > + { 0, 338000000 }, > + { 0, 366000000 }, > + { 0, 444000000 }, > + { 0, 533000000 }, > + { 0, 560000000 }, > +}; > + > +static const struct venus_resources sc8280xp_res = { > + .freq_tbl = sc8280xp_freq_table, > + .freq_tbl_size = ARRAY_SIZE(sc8280xp_freq_table), > + .reg_tbl = sm8350_reg_preset, > + .reg_tbl_size = ARRAY_SIZE(sm8350_reg_preset), > + .bw_tbl_enc = sm8250_bw_table_enc, > + .bw_tbl_enc_size = ARRAY_SIZE(sm8250_bw_table_enc), > + .bw_tbl_dec = sm8250_bw_table_dec, > + .bw_tbl_dec_size = ARRAY_SIZE(sm8250_bw_table_dec), > + .clks = { "core", "iface" }, > + .clks_num = 2, > + .resets = { "core" }, > + .resets_num = 1, > + .vcodec0_clks = { "vcodec0_core" }, > + .vcodec_clks_num = 1, > + .vcodec_pmdomains = (const char *[]) { "venus", "vcodec0" }, > + .vcodec_pmdomains_num = 2, > + .opp_pmdomain = (const char *[]) { "mx", NULL }, > + .vcodec_num = 1, > + .max_load = 7833600, /* 7680x4320@60fps */ > + .hfi_version = HFI_VERSION_6XX, > + .vpu_version = VPU_VERSION_IRIS2, > + .num_vpp_pipes = 4, > + .vmem_id = VIDC_RESOURCE_NONE, > + .vmem_size = 0, > + .vmem_addr = 0, > + .dma_mask = GENMASK(31, 29) - 1, > + .cp_start = 0, > + .cp_size = 0x25800000, > + .cp_nonpixel_start = 0x1000000, > + .cp_nonpixel_size = 0x24800000, > + .fwname = "qcom/vpu-2.0/venus.mbn", qcom/vpu/vpu20_p1.mbn > + .dec_nodename = "video-decoder", > + .enc_nodename = "video-encoder", > +}; > + > + > static const struct of_device_id venus_dt_match[] = { > { .compatible = "qcom,msm8916-venus", .data = &msm8916_res }, > { .compatible = "qcom,msm8996-venus", .data = &msm8996_res }, > @@ -1125,6 +1171,7 @@ static const struct of_device_id venus_dt_match[] = { > { .compatible = "qcom,sdm845-venus-v2", .data = &sdm845_res_v2 }, > { .compatible = "qcom,sc7180-venus", .data = &sc7180_res }, > { .compatible = "qcom,sc7280-venus", .data = &sc7280_res }, > + { .compatible = "qcom,sc8280xp-venus", .data = &sc8280xp_res }, > { .compatible = "qcom,sm8250-venus", .data = &sm8250_res }, > { .compatible = "qcom,sm8350-venus", .data = &sm8350_res }, > { } > > -- > 2.47.2 > -- With best wishes Dmitry