All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Chandrabhanu Mahapatra <cmahapatra@ti.com>
Cc: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org
Subject: Re: [PATCH V5 1/6] OMAPDSS: DISPC: cleanup cpu_is_xxxx checks
Date: Tue, 21 Aug 2012 10:31:42 +0000	[thread overview]
Message-ID: <1345545102.4085.44.camel@deskari> (raw)
In-Reply-To: <978118e2c23e2da40ceb740665fd19f86810b58a.1345468541.git.cmahapatra@ti.com>

[-- Attachment #1: Type: text/plain, Size: 2558 bytes --]

On Mon, 2012-08-20 at 18:52 +0530, Chandrabhanu Mahapatra wrote:
> All the cpu_is checks have been moved to dispc_init_features function providing
> a much more generic and cleaner interface. The OMAP version and revision
> specific functions and data are initialized by dispc_features structure which is
> local to dispc.c.
> 
> Signed-off-by: Chandrabhanu Mahapatra <cmahapatra@ti.com>
> ---
>  drivers/video/omap2/dss/dispc.c |  433 +++++++++++++++++++++++++--------------
>  1 file changed, 278 insertions(+), 155 deletions(-)
> 
> diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c
> index ff52702..3fad33a 100644
> --- a/drivers/video/omap2/dss/dispc.c
> +++ b/drivers/video/omap2/dss/dispc.c
> @@ -81,6 +81,23 @@ struct dispc_irq_stats {
>  	unsigned irqs[32];
>  };
>  
> +struct dispc_features {
> +	int hp_max;
> +	int vp_max;
> +	int sw_max;
> +	int sw_start;
> +	int fp_start;
> +	int bp_start;

Here you could use a bit smaller datatype. u16 should probably be more
than enough.

> +static int __init dispc_init_features(struct device *dev)
> +{
> +	struct dispc_features *feat = devm_kzalloc(dev, sizeof(*feat),
> +								GFP_KERNEL);
> +	if (!feat) {
> +		dev_err(dev, "Failed to allocate DISPC Features\n");
> +		return -ENOMEM;
> +	}
> +
> +	if (cpu_is_omap24xx()) {
> +		memcpy(feat, &omap24xx_dispc_feats, sizeof(*feat));
> +	} else if (cpu_is_omap34xx()) {
> +		if (omap_rev() < OMAP3430_REV_ES3_0)
> +			memcpy(feat, &omap34xx_rev1_0_dispc_feats,
> +							sizeof(*feat));
> +		else
> +			memcpy(feat, &omap34xx_rev3_0_dispc_feats,
> +							sizeof(*feat));
> +	} else if (cpu_is_omap44xx()) {
> +		memcpy(feat, &omap44xx_dispc_feats, sizeof(*feat));
> +	} else {
> +		return -ENODEV;
> +	}
> +
> +	dispc.feat = feat;
> +
> +	return 0;
> +}

This becomes much cleaner with something like the following (same could
be used in dss.c also):

	const struct dispc_features *src;
	struct dispc_features *dst;

	dst = devm_kzalloc(dev, sizeof(*dst), GFP_KERNEL);
	if (!dsst) {
		dev_err(dev, "Failed to allocate DISPC Features\n");
		return -ENOMEM;
	}

	if (cpu_is_omap24xx()) {
		src = &omap24xx_dispc_feats;
	} else if (cpu_is_omap34xx()) {
		if (omap_rev() < OMAP3430_REV_ES3_0)
			src = &omap34xx_rev1_0_dispc_feats;
		else
			src = &omap34xx_rev3_0_dispc_feats;
	} else if (cpu_is_omap44xx()) {
		src = &omap44xx_dispc_feats;
	} else {
		return -ENODEV;
	}

	memcpy(dst, src, sizeof(*dst));

	dispc.feat = dst;

 Tomi


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Chandrabhanu Mahapatra <cmahapatra@ti.com>
Cc: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org
Subject: Re: [PATCH V5 1/6] OMAPDSS: DISPC: cleanup cpu_is_xxxx checks
Date: Tue, 21 Aug 2012 13:31:42 +0300	[thread overview]
Message-ID: <1345545102.4085.44.camel@deskari> (raw)
In-Reply-To: <978118e2c23e2da40ceb740665fd19f86810b58a.1345468541.git.cmahapatra@ti.com>

[-- Attachment #1: Type: text/plain, Size: 2558 bytes --]

On Mon, 2012-08-20 at 18:52 +0530, Chandrabhanu Mahapatra wrote:
> All the cpu_is checks have been moved to dispc_init_features function providing
> a much more generic and cleaner interface. The OMAP version and revision
> specific functions and data are initialized by dispc_features structure which is
> local to dispc.c.
> 
> Signed-off-by: Chandrabhanu Mahapatra <cmahapatra@ti.com>
> ---
>  drivers/video/omap2/dss/dispc.c |  433 +++++++++++++++++++++++++--------------
>  1 file changed, 278 insertions(+), 155 deletions(-)
> 
> diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c
> index ff52702..3fad33a 100644
> --- a/drivers/video/omap2/dss/dispc.c
> +++ b/drivers/video/omap2/dss/dispc.c
> @@ -81,6 +81,23 @@ struct dispc_irq_stats {
>  	unsigned irqs[32];
>  };
>  
> +struct dispc_features {
> +	int hp_max;
> +	int vp_max;
> +	int sw_max;
> +	int sw_start;
> +	int fp_start;
> +	int bp_start;

Here you could use a bit smaller datatype. u16 should probably be more
than enough.

> +static int __init dispc_init_features(struct device *dev)
> +{
> +	struct dispc_features *feat = devm_kzalloc(dev, sizeof(*feat),
> +								GFP_KERNEL);
> +	if (!feat) {
> +		dev_err(dev, "Failed to allocate DISPC Features\n");
> +		return -ENOMEM;
> +	}
> +
> +	if (cpu_is_omap24xx()) {
> +		memcpy(feat, &omap24xx_dispc_feats, sizeof(*feat));
> +	} else if (cpu_is_omap34xx()) {
> +		if (omap_rev() < OMAP3430_REV_ES3_0)
> +			memcpy(feat, &omap34xx_rev1_0_dispc_feats,
> +							sizeof(*feat));
> +		else
> +			memcpy(feat, &omap34xx_rev3_0_dispc_feats,
> +							sizeof(*feat));
> +	} else if (cpu_is_omap44xx()) {
> +		memcpy(feat, &omap44xx_dispc_feats, sizeof(*feat));
> +	} else {
> +		return -ENODEV;
> +	}
> +
> +	dispc.feat = feat;
> +
> +	return 0;
> +}

This becomes much cleaner with something like the following (same could
be used in dss.c also):

	const struct dispc_features *src;
	struct dispc_features *dst;

	dst = devm_kzalloc(dev, sizeof(*dst), GFP_KERNEL);
	if (!dsst) {
		dev_err(dev, "Failed to allocate DISPC Features\n");
		return -ENOMEM;
	}

	if (cpu_is_omap24xx()) {
		src = &omap24xx_dispc_feats;
	} else if (cpu_is_omap34xx()) {
		if (omap_rev() < OMAP3430_REV_ES3_0)
			src = &omap34xx_rev1_0_dispc_feats;
		else
			src = &omap34xx_rev3_0_dispc_feats;
	} else if (cpu_is_omap44xx()) {
		src = &omap44xx_dispc_feats;
	} else {
		return -ENODEV;
	}

	memcpy(dst, src, sizeof(*dst));

	dispc.feat = dst;

 Tomi


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  reply	other threads:[~2012-08-21 10:31 UTC|newest]

Thread overview: 146+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-07  8:27 [PATCH 0/6] OMAPDSS: Remove cpu_is checks Chandrabhanu Mahapatra
2012-08-07  8:39 ` Chandrabhanu Mahapatra
2012-08-07  8:27 ` [PATCH 1/6] OMAPDSS: DISPC: Remove cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-07  8:39   ` Chandrabhanu Mahapatra
2012-08-07  8:48   ` Felipe Balbi
2012-08-07  8:48     ` Felipe Balbi
2012-08-07  9:05     ` Tomi Valkeinen
2012-08-07  9:05       ` Tomi Valkeinen
2012-08-07  9:14       ` Felipe Balbi
2012-08-07  9:14         ` Felipe Balbi
2012-08-07  9:27         ` Tomi Valkeinen
2012-08-07  9:27           ` Tomi Valkeinen
2012-08-07  9:32           ` Felipe Balbi
2012-08-07  9:32             ` Felipe Balbi
2012-08-07  9:57             ` Tomi Valkeinen
2012-08-07  9:57               ` Tomi Valkeinen
2012-08-07 10:27               ` Felipe Balbi
2012-08-07 10:27                 ` Felipe Balbi
2012-08-07 10:57                 ` Tomi Valkeinen
2012-08-07 10:57                   ` Tomi Valkeinen
2012-08-07 11:14                   ` Tony Lindgren
2012-08-07 11:14                     ` Tony Lindgren
2012-08-07 10:52   ` Tomi Valkeinen
2012-08-07 10:52     ` Tomi Valkeinen
2012-08-07 12:22     ` Chandrabhanu Mahapatra
2012-08-07 12:34       ` Chandrabhanu Mahapatra
2012-08-07 13:00       ` Tomi Valkeinen
2012-08-07 13:00         ` Tomi Valkeinen
2012-08-08 11:37   ` [PATCH 1/6] OMAPDSS: DISPC: cleanup " Chandrabhanu Mahapatra
2012-08-08 11:49     ` Chandrabhanu Mahapatra
2012-08-08 12:36     ` Tomi Valkeinen
2012-08-08 12:36       ` Tomi Valkeinen
2012-08-08 13:01       ` Mahapatra, Chandrabhanu
2012-08-08 13:13         ` Mahapatra, Chandrabhanu
2012-08-08 13:25         ` Tomi Valkeinen
2012-08-08 13:25           ` Tomi Valkeinen
2012-08-13 11:58     ` Chandrabhanu Mahapatra
2012-08-13 12:10       ` Chandrabhanu Mahapatra
2012-08-14  9:58       ` Tomi Valkeinen
2012-08-14  9:58         ` Tomi Valkeinen
2012-08-14 12:03       ` Mahapatra, Chandrabhanu
2012-08-14 12:15         ` Mahapatra, Chandrabhanu
2012-08-14 12:16         ` Tomi Valkeinen
2012-08-14 12:16           ` Tomi Valkeinen
2012-08-16 11:18       ` [PATCH V4 " Chandrabhanu Mahapatra
2012-08-16 11:30         ` Chandrabhanu Mahapatra
2012-08-07  8:27 ` [PATCH 2/6] OMAPDSS: DSS: Remove redundant functions Chandrabhanu Mahapatra
2012-08-07  8:39   ` Chandrabhanu Mahapatra
2012-08-07  8:28 ` [PATCH 3/6] OMAPDSS: DSS: Remove cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-07  8:40   ` Chandrabhanu Mahapatra
2012-08-07  8:49   ` Felipe Balbi
2012-08-07  8:49     ` Felipe Balbi
2012-08-07 13:14   ` Tomi Valkeinen
2012-08-07 13:14     ` Tomi Valkeinen
2012-08-08 11:38   ` [PATCH 3/6] OMAPDSS: DSS: Cleanup " Chandrabhanu Mahapatra
2012-08-08 11:50     ` Chandrabhanu Mahapatra
2012-08-08 13:16     ` Tomi Valkeinen
2012-08-08 13:16       ` Tomi Valkeinen
2012-08-09 11:39       ` Mahapatra, Chandrabhanu
2012-08-09 11:51         ` Mahapatra, Chandrabhanu
2012-08-13 11:59     ` Chandrabhanu Mahapatra
2012-08-13 12:11       ` Chandrabhanu Mahapatra
2012-08-14  9:48       ` Tomi Valkeinen
2012-08-14  9:48         ` Tomi Valkeinen
2012-08-14 12:30         ` Mahapatra, Chandrabhanu
2012-08-14 12:42           ` Mahapatra, Chandrabhanu
2012-08-14 14:34           ` Tomi Valkeinen
2012-08-14 14:34             ` Tomi Valkeinen
2012-08-16 11:18       ` [PATCH V4 " Chandrabhanu Mahapatra
2012-08-16 11:30         ` Chandrabhanu Mahapatra
2012-08-17 13:54         ` Tomi Valkeinen
2012-08-17 13:54           ` Tomi Valkeinen
2012-08-20  8:42           ` Tomi Valkeinen
2012-08-20  8:42             ` Tomi Valkeinen
2012-08-20 10:36             ` Mahapatra, Chandrabhanu
2012-08-20 10:48               ` Mahapatra, Chandrabhanu
2012-08-20 10:46               ` Tomi Valkeinen
2012-08-20 10:46                 ` Tomi Valkeinen
2012-08-07  8:28 ` [PATCH 4/6] OMAPDSS: VENC: Remove " Chandrabhanu Mahapatra
2012-08-07  8:40   ` Chandrabhanu Mahapatra
2012-08-07  8:51   ` Felipe Balbi
2012-08-07  8:51     ` Felipe Balbi
2012-08-07 12:36     ` Chandrabhanu Mahapatra
2012-08-07 12:48       ` Chandrabhanu Mahapatra
2012-08-07  8:28 ` [PATCH 5/6] ARM: OMAP: Disable venc for OMAP4 Chandrabhanu Mahapatra
2012-08-07  8:40   ` Chandrabhanu Mahapatra
2012-08-07  8:28   ` Chandrabhanu Mahapatra
2012-08-07  8:29 ` [PATCH 6/6] OMAPDSS: DPI: Remove cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-07  8:41   ` Chandrabhanu Mahapatra
2012-08-20 13:21 ` [PATCH V5 0/6] OMAPDSS: Cleanup cpu_is checks Chandrabhanu Mahapatra
2012-08-20 13:33   ` Chandrabhanu Mahapatra
2012-08-20 13:22   ` [PATCH V5 1/6] OMAPDSS: DISPC: cleanup cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-20 13:34     ` Chandrabhanu Mahapatra
2012-08-21 10:31     ` Tomi Valkeinen [this message]
2012-08-21 10:31       ` Tomi Valkeinen
2012-08-21 11:20       ` Mahapatra, Chandrabhanu
2012-08-21 11:32         ` Mahapatra, Chandrabhanu
2012-08-20 13:23   ` [PATCH V5 2/6] OMAPDSS: DSS: Remove redundant functions Chandrabhanu Mahapatra
2012-08-20 13:35     ` Chandrabhanu Mahapatra
2012-08-20 13:23   ` [PATCH V5 3/6] OMAPDSS: DSS: Cleanup cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-20 13:35     ` Chandrabhanu Mahapatra
2012-08-21 10:35     ` Tomi Valkeinen
2012-08-21 10:35       ` Tomi Valkeinen
2012-08-21 11:06       ` Mahapatra, Chandrabhanu
2012-08-21 11:18         ` Mahapatra, Chandrabhanu
2012-08-21 11:20         ` Tomi Valkeinen
2012-08-21 11:20           ` Tomi Valkeinen
2012-08-20 13:24   ` [PATCH V5 4/6] OMAPDSS: VENC: Remove " Chandrabhanu Mahapatra
2012-08-20 13:36     ` Chandrabhanu Mahapatra
2012-08-20 13:24   ` [PATCH V5 5/6] ARM: OMAP: Disable venc for OMAP4 Chandrabhanu Mahapatra
2012-08-20 13:36     ` Chandrabhanu Mahapatra
2012-08-21 10:32     ` Tomi Valkeinen
2012-08-21 10:32       ` Tomi Valkeinen
2012-08-21 11:13       ` Mahapatra, Chandrabhanu
2012-08-21 11:25         ` Mahapatra, Chandrabhanu
2012-08-20 13:24   ` [PATCH V5 6/6] OMAPDSS: DPI: Remove cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-20 13:36     ` Chandrabhanu Mahapatra
2012-08-22  6:36   ` [PATCH V6 0/6] OMAPDSS: Cleanup cpu_is checks Chandrabhanu Mahapatra
2012-08-22  6:48     ` Chandrabhanu Mahapatra
2012-08-22  6:36     ` Chandrabhanu Mahapatra
2012-08-22  6:37     ` [PATCH V6 1/6] OMAPDSS: DISPC: Cleanup cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-22  6:49       ` Chandrabhanu Mahapatra
2012-08-22  6:37     ` [PATCH V6 2/6] OMAPDSS: DSS: Remove redundant functions Chandrabhanu Mahapatra
2012-08-22  6:49       ` Chandrabhanu Mahapatra
2012-08-22  6:38     ` [PATCH V6 3/6] OMAPDSS: DSS: Cleanup cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-22  6:50       ` Chandrabhanu Mahapatra
2012-08-22  6:38     ` [PATCH V6 4/6] ARM: OMAP: Disable venc for OMAP4 Chandrabhanu Mahapatra
2012-08-22  6:50       ` Chandrabhanu Mahapatra
2012-08-22  6:38       ` Chandrabhanu Mahapatra
2012-08-22  6:38     ` [PATCH V6 5/6] OMAPDSS: VENC: Remove cpu_is_xxxx checks Chandrabhanu Mahapatra
2012-08-22  6:50       ` Chandrabhanu Mahapatra
2012-08-22  6:39     ` [PATCH V6 6/6] OMAPDSS: DPI: " Chandrabhanu Mahapatra
2012-08-22  6:51       ` Chandrabhanu Mahapatra
2012-08-22  8:44     ` [PATCH V6 0/6] OMAPDSS: Cleanup cpu_is checks Tomi Valkeinen
2012-08-22  8:44       ` Tomi Valkeinen
2012-08-22  8:44       ` Tomi Valkeinen
2012-08-30  0:20   ` [PATCH V5 " Tony Lindgren
2012-08-30  0:20     ` Tony Lindgren
2012-08-30  7:34     ` Tomi Valkeinen
2012-08-30  7:34       ` Tomi Valkeinen
2012-08-30 17:19       ` Tony Lindgren
2012-08-30 17:19         ` Tony Lindgren
2012-08-31 11:23         ` Tomi Valkeinen
2012-08-31 11:23           ` Tomi Valkeinen
2012-09-06 20:08           ` Tony Lindgren
2012-09-06 20:08             ` Tony Lindgren

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=1345545102.4085.44.camel@deskari \
    --to=tomi.valkeinen@ti.com \
    --cc=cmahapatra@ti.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    /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.