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

Commit 7d258a40 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "drm/msm/sde: add maxlinewidth to rotator capabiilty" into msm-4.9

parents 655b198a 1a915805
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -778,6 +778,25 @@ static size_t sde_hw_rot_get_cache_size(struct sde_hw_rot *hw)
	return hw->caps->slice_size;
}

/**
 * sde_hw_rot_get_maxlinewidth - get maximum line width of rotator
 * @hw: Pointer to rotator hardware driver
 * return: maximum line width
 */
static int sde_hw_rot_get_maxlinewidth(struct sde_hw_rot *hw)
{
	struct platform_device *pdev;

	if (!hw || !hw->caps || !hw->caps->pdev) {
		SDE_ERROR("invalid rotator hw\n");
		return 0;
	}

	pdev = hw->caps->pdev;

	return sde_rotator_inline_get_maxlinewidth(pdev);
}

/**
 * _setup_rot_ops - setup rotator operations
 * @ops: Pointer to operation table
@@ -790,6 +809,7 @@ static void _setup_rot_ops(struct sde_hw_rot_ops *ops, unsigned long features)
	ops->get_format_caps = sde_hw_rot_get_format_caps;
	ops->get_downscale_caps = sde_hw_rot_get_downscale_caps;
	ops->get_cache_size = sde_hw_rot_get_cache_size;
	ops->get_maxlinewidth = sde_hw_rot_get_maxlinewidth;
}

/**
+1 −0
Original line number Diff line number Diff line
@@ -118,6 +118,7 @@ struct sde_hw_rot_ops {
			struct sde_hw_rot *hw);
	const char *(*get_downscale_caps)(struct sde_hw_rot *hw);
	size_t (*get_cache_size)(struct sde_hw_rot *hw);
	int (*get_maxlinewidth)(struct sde_hw_rot *hw);
};

/**
+4 −0
Original line number Diff line number Diff line
@@ -2142,6 +2142,10 @@ static void sde_plane_rot_install_caps(struct drm_plane *plane)
		sde_kms_info_add_keyint(info, "cache_size",
				rot_hw->ops.get_cache_size(rot_hw));

	if (rot_hw->ops.get_maxlinewidth)
		sde_kms_info_add_keyint(info, "max_linewidth",
				rot_hw->ops.get_maxlinewidth(rot_hw));

	msm_property_set_blob(&psde->property_info, &psde->blob_rot_caps,
			info->data, info->len, PLANE_PROP_ROT_CAPS_V1);