Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp136494pxv; Wed, 14 Jul 2021 00:03:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwf2YO3UuGYqGVzpnM7qm/4p+vxXe0GZwOHumfeTBBFqIZ7IqagWcRCckT1dCXIDirDM7Ow X-Received: by 2002:aa7:d8c1:: with SMTP id k1mr11361333eds.28.1626246213078; Wed, 14 Jul 2021 00:03:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626246213; cv=none; d=google.com; s=arc-20160816; b=MxhLZbjEEk4ZI0mAO8AFROQl/u+vgIYjG9S3cik7ZyuMgExmJZQVzJktgjxMsCA98A JSubHEUbsISabyq++dIReCrfEO+gURLvEwt4Lq6mHRI4UBsETj2OMv1dw7L6MK1nIYTk /x+5oVMYIiwFALTiI1pxv3t7u5tgOMc+8+Lh2kOtLtD2tzDY3ygkIWNoaTh2HlCfy8At rd6Jo7fjiDiwXaV8/IQoN86ulXk4B65MnlmIVKxqvb0hrqCy5cbOzHF1mMgnzqQOX+zJ 2UqgGcxgc2Z8K1uFo/pn1tA4VJiwRoyVGxNFejFYgr6GO2DO2huwe6g7TO2bflaToTyl Fp8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from; bh=4qa5/siYIqh+Qo17Q+cE/R9grSrZn2dyEj3XQwOC6NE=; b=iKQtfgmKxY0SA3UOp9DGdg2Oe/XrTdQahHOgjFBVO7vcsvBCvVQ8AcvioIgTuPHCrb o/2gnJUGFNIVox1L9p+gYv93/YEyH2fL3NYb0d095dzZLu6EUJvqOAKpULH97AklLN1e or24fc7897qtjwUlKNRHOBePOK5O/kLkS6NeYw/g2I2qMXc0hOnLv/GjJtfz0w2kA5Ir KU6SxBSPt97atl5202AnVpTkLnT/CNrCopOMsf6X12lFqzWXEsD+jmP2UJY0vJxr7LOQ 6lE6Op+ZNDMpWI1DxAPXYsfULlDJUIAK8Xjkih4zG799Y2Wzuw+8QjMO3SVhQdef7eCE FL8w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dp16si1988147ejc.454.2021.07.14.00.03.09; Wed, 14 Jul 2021 00:03:33 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238251AbhGNHEl (ORCPT + 99 others); Wed, 14 Jul 2021 03:04:41 -0400 Received: from alexa-out.qualcomm.com ([129.46.98.28]:28488 "EHLO alexa-out.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238210AbhGNHEg (ORCPT ); Wed, 14 Jul 2021 03:04:36 -0400 Received: from ironmsg07-lv.qualcomm.com ([10.47.202.151]) by alexa-out.qualcomm.com with ESMTP; 14 Jul 2021 00:01:45 -0700 X-QCInternal: smtphost Received: from ironmsg01-blr.qualcomm.com ([10.86.208.130]) by ironmsg07-lv.qualcomm.com with ESMTP/TLS/AES256-SHA; 14 Jul 2021 00:01:43 -0700 X-QCInternal: smtphost Received: from dikshita-linux.qualcomm.com ([10.204.65.237]) by ironmsg01-blr.qualcomm.com with ESMTP; 14 Jul 2021 12:31:23 +0530 Received: by dikshita-linux.qualcomm.com (Postfix, from userid 347544) id 22E1521B6B; Wed, 14 Jul 2021 12:31:22 +0530 (IST) From: Dikshita Agarwal To: linux-media@vger.kernel.org, stanimir.varbanov@linaro.org Cc: linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, vgarodia@codeaurora.org, Dikshita Agarwal Subject: [PATCH v3 2/7] media: venus: core: Add sc7280 DT compatible and resource data Date: Wed, 14 Jul 2021 12:31:03 +0530 Message-Id: <1626246068-21023-3-git-send-email-dikshita@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1626246068-21023-1-git-send-email-dikshita@codeaurora.org> References: <1626246068-21023-1-git-send-email-dikshita@codeaurora.org> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Adds a sm7280 compatible binding to the venus core. Co-developed-by: Mansur Alisha Shaik Signed-off-by: Dikshita Agarwal --- drivers/media/platform/qcom/venus/core.c | 52 ++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c index 91b1584..68acfc0 100644 --- a/drivers/media/platform/qcom/venus/core.c +++ b/drivers/media/platform/qcom/venus/core.c @@ -736,6 +736,57 @@ static const struct venus_resources sm8250_res = { .fwname = "qcom/vpu-1.0/venus.mdt", }; +static const struct freq_tbl sc7280_freq_table[] = { + { 0, 460000000 }, + { 0, 424000000 }, + { 0, 335000000 }, + { 0, 240000000 }, + { 0, 133333333 }, +}; + +static const struct bw_tbl sc7280_bw_table_enc[] = { + { 1944000, 1896000, 0, 3657000, 0 }, /* 3840x2160@60 */ + { 972000, 968000, 0, 1848000, 0 }, /* 3840x2160@30 */ + { 489600, 618000, 0, 941000, 0 }, /* 1920x1080@60 */ + { 244800, 318000, 0, 480000, 0 }, /* 1920x1080@30 */ +}; + +static const struct bw_tbl sc7280_bw_table_dec[] = { + { 2073600, 2128000, 0, 3831000, 0 }, /* 4096x2160@60 */ + { 1036800, 1085000, 0, 1937000, 0 }, /* 4096x2160@30 */ + { 489600, 779000, 0, 998000, 0 }, /* 1920x1080@60 */ + { 244800, 400000, 0, 509000, 0 }, /* 1920x1080@30 */ +}; + +static const struct reg_val sm7280_reg_preset[] = { + { 0xb0088, 0 }, +}; + +static const struct venus_resources sc7280_res = { + .freq_tbl = sc7280_freq_table, + .freq_tbl_size = ARRAY_SIZE(sc7280_freq_table), + .reg_tbl = sm7280_reg_preset, + .reg_tbl_size = ARRAY_SIZE(sm7280_reg_preset), + .bw_tbl_enc = sc7280_bw_table_enc, + .bw_tbl_enc_size = ARRAY_SIZE(sc7280_bw_table_enc), + .bw_tbl_dec = sc7280_bw_table_dec, + .bw_tbl_dec_size = ARRAY_SIZE(sc7280_bw_table_dec), + .clks = {"core", "bus", "iface"}, + .clks_num = 3, + .vcodec0_clks = {"vcodec_core", "vcodec_bus"}, + .vcodec_clks_num = 2, + .vcodec_pmdomains = { "venus", "vcodec0" }, + .vcodec_pmdomains_num = 2, + .opp_pmdomain = (const char *[]) { "cx", NULL }, + .vcodec_num = 1, + .hfi_version = HFI_VERSION_6XX, + .vmem_id = VIDC_RESOURCE_NONE, + .vmem_size = 0, + .vmem_addr = 0, + .dma_mask = 0xe0000000 - 1, + .fwname = "qcom/vpu-2.0/venus.mdt", +}; + static const struct of_device_id venus_dt_match[] = { { .compatible = "qcom,msm8916-venus", .data = &msm8916_res, }, { .compatible = "qcom,msm8996-venus", .data = &msm8996_res, }, @@ -743,6 +794,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,sm8250-venus", .data = &sm8250_res, }, + { .compatible = "qcom,sc7280-venus", .data = &sc7280_res, }, { } }; MODULE_DEVICE_TABLE(of, venus_dt_match); -- 2.7.4