All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@ti.com>
To: Sumit Semwal <sumit.semwal@ti.com>
Cc: tomi.valkeinen@nokia.com, paul@pwsan.com, hvaibhav@ti.com,
	linux-omap@vger.kernel.org,
	Senthilvadivu Guruswamy <svadivu@ti.com>
Subject: Re: [PATCH v5 08/17] OMAP2,3: DSS2: Build omap_device for each DSS HWIP
Date: Fri, 07 Jan 2011 15:34:32 -0800	[thread overview]
Message-ID: <87zkrci8zb.fsf@ti.com> (raw)
In-Reply-To: <1294399551-10457-9-git-send-email-sumit.semwal@ti.com> (Sumit Semwal's message of "Fri, 7 Jan 2011 16:55:42 +0530")

Sumit Semwal <sumit.semwal@ti.com> writes:

> From: Senthilvadivu Guruswamy <svadivu@ti.com>
>
> Looks up the hwmod database for each of the given DSS HW IP and builds
> omap_device which inturn does the platform device register for each of DSS HW IP
>
> Signed-off-by: Senthilvadivu Guruswamy <svadivu@ti.com>
> Signed-off-by: Sumit Semwal <sumit.semwal@ti.com>
> ---
>  arch/arm/mach-omap2/display.c             |   44 +++++++++++++++++++++++++++++
>  arch/arm/plat-omap/include/plat/display.h |    6 ++++
>  2 files changed, 50 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/display.c b/arch/arm/mach-omap2/display.c
> index 26d3feb..276b800 100644
> --- a/arch/arm/mach-omap2/display.c
> +++ b/arch/arm/mach-omap2/display.c
> @@ -36,10 +36,54 @@ static struct platform_device omap_display_device = {
>  	},
>  };
>  
> +static struct omap_device_pm_latency omap_dss_latency[] = {
> +	[0] = {
> +		.deactivate_func        = omap_device_idle_hwmods,
> +		.activate_func          = omap_device_enable_hwmods,

Without any latency numbers or AUTO_ADJUST you're going to have noisy
output from omap_device.

> +	},
> +};
> +
>  int __init omap_display_init(struct omap_dss_board_info
>  					*board_data)
>  {
>  	int r = 0;
> +	struct omap_hwmod *oh;
> +	struct omap_device *od;
> +	int i;
> +	struct omap_display_platform_data pdata;
> +	char *oh_name[] = { 	"dss_dss",	/* omap2,3 */
> +				"dss_dispc",	/* omap2,3 */
> +				"dss_rfbi",	/* omap2,3 */
> +				"dss_venc",	/* omap2,3 */
> +				"dss_dsi1" };	/* omap3 */

Why all the extra whitespace before the strings?

> +	char *dev_name[] = { "omap_dss", "omap_dispc", "omap_rfbi",
> +				"omap_venc", "omap_dsi1" };

ditto

> +	int oh_count;
> +
> +	if (cpu_is_omap24xx()) {
> +		oh_count = ARRAY_SIZE(oh_name) - 1;
> +		/* last hwmod dev in oh_name is not available for omap2 */
> +	} else {
> +		oh_count = ARRAY_SIZE(oh_name);
> +	}

braces not needed

> +	pdata.board_data	=	board_data;

extra whitespace not necessary

> +	pdata.board_data->get_last_off_on_transaction_id = NULL;

instead, you should probably zero all of pdata before using it since it
is on the stack

> +	for (i = 0; i < oh_count; i++) {
> +		oh = omap_hwmod_lookup(oh_name[i]);
> +		if (!oh) {
> +			pr_err("Could not look up %s\n", oh_name[i]);
> +			return r;
> +		}
> +		od = omap_device_build(dev_name[i], -1, oh, &pdata,
> +				sizeof(struct omap_display_platform_data),
> +				omap_dss_latency,
> +				ARRAY_SIZE(omap_dss_latency), 0);
> +
> +		WARN((IS_ERR(od)), "Could not build omap_device for %s\n",
> +				oh_name[i]);

yet code below will still try and register it?

> +	}
>  	omap_display_device.dev.platform_data = board_data;
>  
>  	r = platform_device_register(&omap_display_device);
> diff --git a/arch/arm/plat-omap/include/plat/display.h b/arch/arm/plat-omap/include/plat/display.h
> index 871bbae..23afd6d 100644
> --- a/arch/arm/plat-omap/include/plat/display.h
> +++ b/arch/arm/plat-omap/include/plat/display.h
> @@ -26,6 +26,7 @@
>  #include <linux/platform_device.h>
>  #include <asm/atomic.h>
>  
> +

stray whitespace change

>  #define DISPC_IRQ_FRAMEDONE		(1 << 0)
>  #define DISPC_IRQ_VSYNC			(1 << 1)
>  #define DISPC_IRQ_EVSYNC_EVEN		(1 << 2)
> @@ -224,6 +225,11 @@ struct omap_dss_board_info {
>  /* Init with the board info */
>  extern int omap_display_init(struct omap_dss_board_info *board_data);
>  
> +struct omap_display_platform_data {
> +	struct omap_dss_board_info *board_data;
> +	/* TODO: Additional members to be added when PM is considered */
> +};
> +
>  struct omap_video_timings {
>  	/* Unit: pixels */
>  	u16 x_res;

Kevin

  reply	other threads:[~2011-01-07 23:34 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-07 11:25 [PATCH v5 00/17] OMAP2,3: hwmod DSS Adaptation Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 01/17] OMAP2420: hwmod data: add DSS DISPC RFBI VENC Sumit Semwal
2011-01-10 23:21   ` Paul Walmsley
2011-01-07 11:25 ` [PATCH v5 02/17] OMAP2430: " Sumit Semwal
2011-01-10 23:43   ` Paul Walmsley
2011-01-07 11:25 ` [PATCH v5 03/17] OMAP3: hwmod data: add DSS DISPC RFBI DSI VENC Sumit Semwal
2011-01-10 22:51   ` Paul Walmsley
2011-01-07 11:25 ` [PATCH v5 04/17] OMAP2,3 DSS2 Change driver name to omap_display Sumit Semwal
2011-01-10 23:55   ` Paul Walmsley
2011-01-11  5:17     ` Semwal, Sumit
2011-01-07 11:25 ` [PATCH v5 05/17] OMAP2,3 DSS2 Use Regulator init with driver name Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 06/17] OMAP2,3: DSS2: Create new file display.c for central dss driver registration Sumit Semwal
2011-01-07 14:03   ` Tomi Valkeinen
2011-01-09  6:59     ` Semwal, Sumit
2011-01-09  7:01       ` Semwal, Sumit
2011-01-07 21:26   ` Kevin Hilman
2011-01-09  7:00     ` Semwal, Sumit
2011-01-07 11:25 ` [PATCH v5 07/17] OMAP2,3: DSS2: board files: replace platform_device_register with omap_display_init() Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 08/17] OMAP2,3: DSS2: Build omap_device for each DSS HWIP Sumit Semwal
2011-01-07 23:34   ` Kevin Hilman [this message]
2011-01-09  8:04     ` Semwal, Sumit
2011-01-07 11:25 ` [PATCH v5 09/17] OMAP2,3: DSS2: DSS: create platform_driver, move init,exit to driver Sumit Semwal
2011-01-07 23:43   ` Kevin Hilman
2011-01-09  8:33     ` Semwal, Sumit
2011-01-07 11:25 ` [PATCH v5 10/17] OMAP2,3: DSS2: Move clocks from core driver to dss driver Sumit Semwal
2011-01-10 23:59   ` Paul Walmsley
2011-01-11  5:16     ` Semwal, Sumit
2011-01-07 11:25 ` [PATCH v5 11/17] OMAP2,3: DSS2: RFBI: create platform_driver, move init,exit to driver Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 12/17] OMAP2,3: DSS2: DISPC: " Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 13/17] OMAP2,3: DSS2: VENC: " Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 14/17] OMAP2,3: DSS2: DSI: " Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 15/17] OMAP2,3: DSS2: replace printk with dev_dbg in init Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 16/17] OMAP2,3: DSS2: Use platform device to get baseaddr Sumit Semwal
2011-01-07 11:25 ` [PATCH v5 17/17] OMAP2,3: DSS2: Get DSS IRQ from platform device Sumit Semwal
2011-01-10 20:00   ` Paul Walmsley
2011-01-07 12:56 ` [PATCH v5 00/17] OMAP2,3: hwmod DSS Adaptation Tomi Valkeinen
2011-01-07 13:14   ` Tomi Valkeinen

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=87zkrci8zb.fsf@ti.com \
    --to=khilman@ti.com \
    --cc=hvaibhav@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=paul@pwsan.com \
    --cc=sumit.semwal@ti.com \
    --cc=svadivu@ti.com \
    --cc=tomi.valkeinen@nokia.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.