diff mbox series

[1/2] drm/msm/mdp4: refactor HW revision detection into read_mdp_hw_revision

Message ID 20210705231641.315804-1-david@ixit.cz
State Accepted
Commit 4d319afe666b0fc9a9855ba9bdf9ae3710ecf431
Headers show
Series [1/2] drm/msm/mdp4: refactor HW revision detection into read_mdp_hw_revision | expand

Commit Message

David Heidelberg July 5, 2021, 11:16 p.m. UTC
Inspired by MDP5 code.
Also use DRM_DEV_INFO for MDP version as MDP5 does.

Cosmetic change: uint32_t -> u32 - checkpatch suggestion.

Signed-off-by: David Heidelberg <david@ixit.cz>
---
 drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 27 ++++++++++++++++--------
 1 file changed, 18 insertions(+), 9 deletions(-)

Comments

Dmitry Baryshkov Aug. 5, 2021, 9:04 a.m. UTC | #1
On 06/07/2021 02:16, David Heidelberg wrote:
> Inspired by MDP5 code.

> Also use DRM_DEV_INFO for MDP version as MDP5 does.

> 

> Cosmetic change: uint32_t -> u32 - checkpatch suggestion.

> 

> Signed-off-by: David Heidelberg <david@ixit.cz>


Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>


> ---

>   drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 27 ++++++++++++++++--------

>   1 file changed, 18 insertions(+), 9 deletions(-)

> 

> diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c

> index 4a5b518288b0..3a7a01d801aa 100644

> --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c

> +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c

> @@ -19,20 +19,13 @@ static int mdp4_hw_init(struct msm_kms *kms)

>   {

>   	struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms));

>   	struct drm_device *dev = mdp4_kms->dev;

> -	uint32_t version, major, minor, dmap_cfg, vg_cfg;

> +	u32 major, minor, dmap_cfg, vg_cfg;

>   	unsigned long clk;

>   	int ret = 0;

>   

>   	pm_runtime_get_sync(dev->dev);

>   

> -	mdp4_enable(mdp4_kms);

> -	version = mdp4_read(mdp4_kms, REG_MDP4_VERSION);

> -	mdp4_disable(mdp4_kms);

> -

> -	major = FIELD(version, MDP4_VERSION_MAJOR);

> -	minor = FIELD(version, MDP4_VERSION_MINOR);

> -

> -	DBG("found MDP4 version v%d.%d", major, minor);

> +	read_mdp_hw_revision(mdp4_kms, &major, &minor);

>   

>   	if (major != 4) {

>   		DRM_DEV_ERROR(dev->dev, "unexpected MDP version: v%d.%d\n",

> @@ -411,6 +404,22 @@ static int modeset_init(struct mdp4_kms *mdp4_kms)

>   	return ret;

>   }

>   

> +static void read_mdp_hw_revision(struct mdp4_kms *mdp4_kms,

> +				 u32 *major, u32 *minor)

> +{

> +	struct drm_device *dev = mdp4_kms->dev;

> +	u32 version;

> +

> +	mdp4_enable(mdp4_kms);

> +	version = mdp4_read(mdp4_kms, REG_MDP4_VERSION);

> +	mdp4_disable(mdp4_kms);

> +

> +	*major = FIELD(version, MDP4_VERSION_MAJOR);

> +	*minor = FIELD(version, MDP4_VERSION_MINOR);

> +

> +	DRM_DEV_INFO(dev->dev, "MDP4 version v%d.%d", *major, *minor);

> +}

> +

>   struct msm_kms *mdp4_kms_init(struct drm_device *dev)

>   {

>   	struct platform_device *pdev = to_platform_device(dev->dev);

> 



-- 
With best wishes
Dmitry
diff mbox series

Patch

diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c
index 4a5b518288b0..3a7a01d801aa 100644
--- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c
+++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c
@@ -19,20 +19,13 @@  static int mdp4_hw_init(struct msm_kms *kms)
 {
 	struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms));
 	struct drm_device *dev = mdp4_kms->dev;
-	uint32_t version, major, minor, dmap_cfg, vg_cfg;
+	u32 major, minor, dmap_cfg, vg_cfg;
 	unsigned long clk;
 	int ret = 0;
 
 	pm_runtime_get_sync(dev->dev);
 
-	mdp4_enable(mdp4_kms);
-	version = mdp4_read(mdp4_kms, REG_MDP4_VERSION);
-	mdp4_disable(mdp4_kms);
-
-	major = FIELD(version, MDP4_VERSION_MAJOR);
-	minor = FIELD(version, MDP4_VERSION_MINOR);
-
-	DBG("found MDP4 version v%d.%d", major, minor);
+	read_mdp_hw_revision(mdp4_kms, &major, &minor);
 
 	if (major != 4) {
 		DRM_DEV_ERROR(dev->dev, "unexpected MDP version: v%d.%d\n",
@@ -411,6 +404,22 @@  static int modeset_init(struct mdp4_kms *mdp4_kms)
 	return ret;
 }
 
+static void read_mdp_hw_revision(struct mdp4_kms *mdp4_kms,
+				 u32 *major, u32 *minor)
+{
+	struct drm_device *dev = mdp4_kms->dev;
+	u32 version;
+
+	mdp4_enable(mdp4_kms);
+	version = mdp4_read(mdp4_kms, REG_MDP4_VERSION);
+	mdp4_disable(mdp4_kms);
+
+	*major = FIELD(version, MDP4_VERSION_MAJOR);
+	*minor = FIELD(version, MDP4_VERSION_MINOR);
+
+	DRM_DEV_INFO(dev->dev, "MDP4 version v%d.%d", *major, *minor);
+}
+
 struct msm_kms *mdp4_kms_init(struct drm_device *dev)
 {
 	struct platform_device *pdev = to_platform_device(dev->dev);