All of lore.kernel.org
 help / color / mirror / Atom feed
From: Aakarsh Jain <aakarsh.jain@samsung.com>
To: linux-arm-kernel@lists.infradead.org,
	linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org
Cc: m.szyprowski@samsung.com, andrzej.hajda@intel.com,
	mchehab@kernel.org, hverkuil-cisco@xs4all.nl,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
	conor+dt@kernel.org, linux-samsung-soc@vger.kernel.org,
	andi@etezian.org, gost.dev@samsung.com, alim.akhtar@samsung.com,
	aswani.reddy@samsung.com, pankaj.dubey@samsung.com,
	ajaykumar.rs@samsung.com, aakarsh.jain@samsung.com,
	linux-fsd@tesla.com, Smitha T Murthy <smithatmurthy@gmail.com>
Subject: [Patch v5 05/11] media: s5p-mfc: Add support for rate controls in MFCv12
Date: Wed,  6 Dec 2023 12:00:39 +0530	[thread overview]
Message-ID: <20231206063045.97234-6-aakarsh.jain@samsung.com> (raw)
In-Reply-To: <20231206063045.97234-1-aakarsh.jain@samsung.com>

In MFCv12, the rc configs are changed with support for CBR loose,
CBR tight and Variable Bitrate (VBR) added.

Cc: linux-fsd@tesla.com
Signed-off-by: Smitha T Murthy <smithatmurthy@gmail.com>
Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
---
 .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c | 22 +++++++++++++++----
 .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h |  1 +
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
index 36aebca11313..4a0d0e228e78 100644
--- a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
+++ b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
@@ -992,10 +992,24 @@ static int s5p_mfc_set_enc_params(struct s5p_mfc_ctx *ctx)
 
 	/* reaction coefficient */
 	if (p->rc_frame) {
-		if (p->rc_reaction_coeff < TIGHT_CBR_MAX) /* tight CBR */
-			writel(1, mfc_regs->e_rc_mode);
-		else					  /* loose CBR */
-			writel(2, mfc_regs->e_rc_mode);
+		if (IS_MFCV12(dev)) {
+			/* loose CBR */
+			if (p->rc_reaction_coeff < LOOSE_CBR_MAX)
+				writel(1, mfc_regs->e_rc_mode);
+			/* tight CBR */
+			else if (p->rc_reaction_coeff < TIGHT_CBR_MAX)
+				writel(0, mfc_regs->e_rc_mode);
+			/* VBR */
+			else
+				writel(2, mfc_regs->e_rc_mode);
+		} else {
+			/* tight CBR */
+			if (p->rc_reaction_coeff < TIGHT_CBR_MAX)
+				writel(1, mfc_regs->e_rc_mode);
+			/* loose CBR */
+			else
+				writel(2, mfc_regs->e_rc_mode);
+		}
 	}
 
 	/* seq header ctrl */
diff --git a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h
index ff582eea4217..94ecb0e6e7c7 100644
--- a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h
+++ b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h
@@ -40,6 +40,7 @@
 #define ENC_H264_LEVEL_MAX		42
 #define ENC_MPEG4_VOP_TIME_RES_MAX	((1 << 16) - 1)
 #define FRAME_DELTA_H264_H263		1
+#define LOOSE_CBR_MAX			5
 #define TIGHT_CBR_MAX			10
 #define ENC_HEVC_RC_FRAME_RATE_MAX	((1 << 16) - 1)
 #define ENC_HEVC_QP_INDEX_MIN		-12
-- 
2.17.1


WARNING: multiple messages have this Message-ID (diff)
From: Aakarsh Jain <aakarsh.jain@samsung.com>
To: linux-arm-kernel@lists.infradead.org,
	linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org
Cc: m.szyprowski@samsung.com, andrzej.hajda@intel.com,
	mchehab@kernel.org, hverkuil-cisco@xs4all.nl,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
	conor+dt@kernel.org, linux-samsung-soc@vger.kernel.org,
	andi@etezian.org, gost.dev@samsung.com, alim.akhtar@samsung.com,
	aswani.reddy@samsung.com, pankaj.dubey@samsung.com,
	ajaykumar.rs@samsung.com, aakarsh.jain@samsung.com,
	linux-fsd@tesla.com, Smitha T Murthy <smithatmurthy@gmail.com>
Subject: [Patch v5 05/11] media: s5p-mfc: Add support for rate controls in MFCv12
Date: Wed,  6 Dec 2023 12:00:39 +0530	[thread overview]
Message-ID: <20231206063045.97234-6-aakarsh.jain@samsung.com> (raw)
In-Reply-To: <20231206063045.97234-1-aakarsh.jain@samsung.com>

In MFCv12, the rc configs are changed with support for CBR loose,
CBR tight and Variable Bitrate (VBR) added.

Cc: linux-fsd@tesla.com
Signed-off-by: Smitha T Murthy <smithatmurthy@gmail.com>
Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
---
 .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c | 22 +++++++++++++++----
 .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h |  1 +
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
index 36aebca11313..4a0d0e228e78 100644
--- a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
+++ b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
@@ -992,10 +992,24 @@ static int s5p_mfc_set_enc_params(struct s5p_mfc_ctx *ctx)
 
 	/* reaction coefficient */
 	if (p->rc_frame) {
-		if (p->rc_reaction_coeff < TIGHT_CBR_MAX) /* tight CBR */
-			writel(1, mfc_regs->e_rc_mode);
-		else					  /* loose CBR */
-			writel(2, mfc_regs->e_rc_mode);
+		if (IS_MFCV12(dev)) {
+			/* loose CBR */
+			if (p->rc_reaction_coeff < LOOSE_CBR_MAX)
+				writel(1, mfc_regs->e_rc_mode);
+			/* tight CBR */
+			else if (p->rc_reaction_coeff < TIGHT_CBR_MAX)
+				writel(0, mfc_regs->e_rc_mode);
+			/* VBR */
+			else
+				writel(2, mfc_regs->e_rc_mode);
+		} else {
+			/* tight CBR */
+			if (p->rc_reaction_coeff < TIGHT_CBR_MAX)
+				writel(1, mfc_regs->e_rc_mode);
+			/* loose CBR */
+			else
+				writel(2, mfc_regs->e_rc_mode);
+		}
 	}
 
 	/* seq header ctrl */
diff --git a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h
index ff582eea4217..94ecb0e6e7c7 100644
--- a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h
+++ b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h
@@ -40,6 +40,7 @@
 #define ENC_H264_LEVEL_MAX		42
 #define ENC_MPEG4_VOP_TIME_RES_MAX	((1 << 16) - 1)
 #define FRAME_DELTA_H264_H263		1
+#define LOOSE_CBR_MAX			5
 #define TIGHT_CBR_MAX			10
 #define ENC_HEVC_RC_FRAME_RATE_MAX	((1 << 16) - 1)
 #define ENC_HEVC_QP_INDEX_MIN		-12
-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2023-12-06  6:36 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20231206063105epcas5p3034f89af2be6922ab04771de099a124a@epcas5p3.samsung.com>
2023-12-06  6:30 ` [Patch v5 00/11] Add MFC V12 support Aakarsh Jain
2023-12-06  6:30   ` Aakarsh Jain
     [not found]   ` <CGME20231206063108epcas5p1af3d9d0442c8abebe91d769cc68284d5@epcas5p1.samsung.com>
2023-12-06  6:30     ` [Patch v5 01/11] dt-bindings: media: s5p-mfc: Add mfcv12 variant Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
2023-12-06 10:32       ` Krzysztof Kozlowski
2023-12-06 10:32         ` Krzysztof Kozlowski
     [not found]   ` <CGME20231206063111epcas5p112aeeca899892a154c9a68c8e8873647@epcas5p1.samsung.com>
2023-12-06  6:30     ` [Patch v5 02/11] media: s5p-mfc: Rename IS_MFCV10 macro Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063114epcas5p4637c47d1bc778bf293fd9d98b89bbb8a@epcas5p4.samsung.com>
2023-12-06  6:30     ` [Patch v5 03/11] media: s5p-mfc: Add initial support for MFCv12 Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063117epcas5p251b8b355642fa50678802d72d0ca3556@epcas5p2.samsung.com>
2023-12-06  6:30     ` [Patch v5 04/11] media: s5p-mfc: Add YV12 and I420 multiplanar format support Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063121epcas5p17a110abeea781dcb8760b4da4c8e4074@epcas5p1.samsung.com>
2023-12-06  6:30     ` Aakarsh Jain [this message]
2023-12-06  6:30       ` [Patch v5 05/11] media: s5p-mfc: Add support for rate controls in MFCv12 Aakarsh Jain
     [not found]   ` <CGME20231206063125epcas5p2c5d07f51ba83198ccb8fbab005bab8f6@epcas5p2.samsung.com>
2023-12-06  6:30     ` [Patch v5 06/11] media: s5p-mfc: Add support for UHD encoding Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063128epcas5p3145907e75b404400a552b8bd66e1c175@epcas5p3.samsung.com>
2023-12-06  6:30     ` [Patch v5 07/11] media: s5p-mfc: Add support for DMABUF for encoder Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063131epcas5p2e0fc772f8f8ac35897920d24a0193d71@epcas5p2.samsung.com>
2023-12-06  6:30     ` [Patch v5 08/11] media: s5p-mfc: Set context for valid case before calling try_run Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063134epcas5p2b3b9ca0351cd9c1cb169d7a4a3a30b80@epcas5p2.samsung.com>
2023-12-06  6:30     ` [Patch v5 09/11] media: s5p-mfc: Load firmware for each run in MFCv12 Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
2023-12-06 12:57       ` Hans Verkuil
2023-12-06 12:57         ` Hans Verkuil
2023-12-13  7:59         ` Aakarsh Jain
2023-12-13  7:59           ` Aakarsh Jain
     [not found]   ` <CGME20231206063137epcas5p3450b1c70bdf7461afeeb6a3db341818c@epcas5p3.samsung.com>
2023-12-06  6:30     ` [Patch v5 10/11] media: s5p-mfc: DPB Count Independent of VIDIOC_REQBUF Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
     [not found]   ` <CGME20231206063140epcas5p1ba86525117f4d9ec9172ae7cb18b7420@epcas5p1.samsung.com>
2023-12-06  6:30     ` [Patch v5 11/11] arm64: dts: fsd: Add MFC related DT enteries Aakarsh Jain
2023-12-06  6:30       ` Aakarsh Jain
2023-12-06 10:33       ` Krzysztof Kozlowski
2023-12-06 10:33         ` Krzysztof Kozlowski
2023-12-13 14:05       ` Krzysztof Kozlowski
2023-12-13 14:05         ` Krzysztof Kozlowski
2023-12-13 14:06       ` (subset) " Krzysztof Kozlowski
2023-12-13 14:06         ` Krzysztof Kozlowski
2023-12-06 12:59   ` [Patch v5 00/11] Add MFC V12 support Hans Verkuil
2023-12-06 12:59     ` Hans Verkuil
2023-12-13  7:58     ` Aakarsh Jain
2023-12-13  7:58       ` Aakarsh Jain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231206063045.97234-6-aakarsh.jain@samsung.com \
    --to=aakarsh.jain@samsung.com \
    --cc=ajaykumar.rs@samsung.com \
    --cc=alim.akhtar@samsung.com \
    --cc=andi@etezian.org \
    --cc=andrzej.hajda@intel.com \
    --cc=aswani.reddy@samsung.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gost.dev@samsung.com \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-fsd@tesla.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    --cc=mchehab@kernel.org \
    --cc=pankaj.dubey@samsung.com \
    --cc=robh+dt@kernel.org \
    --cc=smithatmurthy@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.