Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0bfb9a4f authored by Alexander Beykun's avatar Alexander Beykun Committed by Gerrit - the friendly Code Review server
Browse files

msm/sde: add ubwc 4.0 support in sde rotator driver



Add support for ubwc 4.0 compression into v4l2 driver
for sde rotator.

Change-Id: If87e7134436d28aff0aa7e19c7f0a2438186a44d
Signed-off-by: default avatarAlexander Beykun <abeykun@codeaurora.org>
parent 036c11ff
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -128,6 +128,7 @@ enum sde_rot_type {
 * @SDE_CAPS_PARTIALWR: partial write override
 * @SDE_CAPS_HW_TIMESTAMP: rotator has hw timestamp support
 * @SDE_CAPS_UBWC_3: universal bandwidth compression version 3
 * @SDE_CAPS_UBWC_4: universal bandwidth compression version 4
 */
enum sde_caps_settings {
	SDE_CAPS_R1_WB,
@@ -139,6 +140,7 @@ enum sde_caps_settings {
	SDE_CAPS_PARTIALWR,
	SDE_CAPS_HW_TIMESTAMP,
	SDE_CAPS_UBWC_3,
	SDE_CAPS_UBWC_4,
	SDE_CAPS_MAX,
};

+3 −1
Original line number Diff line number Diff line
@@ -1496,7 +1496,8 @@ static void sde_hw_rotator_setup_fetchengine(struct sde_hw_rotator_context *ctx,
				((ctx->rot->ubwc_malsize & 0x3) << 8) |
				((ctx->rot->highest_bank & 0x3) << 4) |
				((ctx->rot->ubwc_swizzle & 0x1) << 0));
	else if (test_bit(SDE_CAPS_UBWC_3, mdata->sde_caps_map))
	else if (test_bit(SDE_CAPS_UBWC_3, mdata->sde_caps_map) ||
			test_bit(SDE_CAPS_UBWC_4, mdata->sde_caps_map))
		SDE_REGDMA_WRITE(wrptr, ROT_SSPP_UBWC_STATIC_CTRL, BIT(30));

	/* setup source buffer plane security status */
@@ -3084,6 +3085,7 @@ static int sde_rotator_hw_rev_init(struct sde_hw_rotator *rot)
	if (IS_SDE_MAJOR_MINOR_SAME(mdata->mdss_version, SDE_MDP_HW_REV_600)) {
		SDEROT_DBG("Supporting sys cache inline rotation\n");
		set_bit(SDE_CAPS_SBUF_1,  mdata->sde_caps_map);
		set_bit(SDE_CAPS_UBWC_4,  mdata->sde_caps_map);
		set_bit(SDE_CAPS_PARTIALWR,  mdata->sde_caps_map);
		set_bit(SDE_CAPS_HW_TIMESTAMP, mdata->sde_caps_map);
		rot->inpixfmts[SDE_ROTATOR_MODE_OFFLINE] =