diff mbox

drm: drm init call takes large time

Message ID 1372552919-7791-1-git-send-email-abbas_raza@mentor.com (mailing list archive)
State New, archived
Headers show

Commit Message

Abbas Raza June 30, 2013, 12:41 a.m. UTC
From: Abbas Raza <Abbas_Raza@mentor.com>

DRM_INFO calls in the drm init routines are causing a large delay at boot time
due to which imx_drm_init call average takes around 26 ms. Changing DRM_INFO to
DRM_DEBUG reduces startup time to < 3ms.

Signed-off-by: Abbas Raza <Abbas_Raza@mentor.com>
CC: David Airlie <airlied@linux.ie>
Acked-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
---
 drivers/gpu/drm/drm_irq.c      | 6 +++---
 drivers/gpu/drm/drm_platform.c | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

Comments

Ville Syrjala July 2, 2013, 10:14 a.m. UTC | #1
On Sun, Jun 30, 2013 at 05:41:59AM +0500, Abbas Raza wrote:
> From: Abbas Raza <Abbas_Raza@mentor.com>
> 
> DRM_INFO calls in the drm init routines are causing a large delay at boot time
> due to which imx_drm_init call average takes around 26 ms. Changing DRM_INFO to
> DRM_DEBUG reduces startup time to < 3ms.

Serial console enabled?

Not that I think these printks are particularly useful...

> Signed-off-by: Abbas Raza <Abbas_Raza@mentor.com>
> CC: David Airlie <airlied@linux.ie>
> Acked-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
> ---
>  drivers/gpu/drm/drm_irq.c      | 6 +++---
>  drivers/gpu/drm/drm_platform.c | 2 +-
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
> index c798eea..782f5ff 100644
> --- a/drivers/gpu/drm/drm_irq.c
> +++ b/drivers/gpu/drm/drm_irq.c
> @@ -252,13 +252,13 @@ int drm_vblank_init(struct drm_device *dev, int num_crtcs)
>  	if (!dev->_vblank_time)
>  		goto err;
>  
> -	DRM_INFO("Supports vblank timestamp caching Rev 1 (10.10.2010).\n");
> +	DRM_DEBUG("Supports vblank timestamp caching Rev 1 (10.10.2010).\n");
>  
>  	/* Driver specific high-precision vblank timestamping supported? */
>  	if (dev->driver->get_vblank_timestamp)
> -		DRM_INFO("Driver supports precise vblank timestamp query.\n");
> +		DRM_DEBUG("Driver supports precise vblank timestamp query.\n");
>  	else
> -		DRM_INFO("No driver support for vblank timestamp query.\n");
> +		DRM_DEBUG("No driver support for vblank timestamp query.\n");
>  
>  	/* Zero per-crtc vblank stuff */
>  	for (i = 0; i < num_crtcs; i++) {
> diff --git a/drivers/gpu/drm/drm_platform.c b/drivers/gpu/drm/drm_platform.c
> index 82431dc..7649963 100644
> --- a/drivers/gpu/drm/drm_platform.c
> +++ b/drivers/gpu/drm/drm_platform.c
> @@ -92,7 +92,7 @@ int drm_get_platform_dev(struct platform_device *platdev,
>  
>  	mutex_unlock(&drm_global_mutex);
>  
> -	DRM_INFO("Initialized %s %d.%d.%d %s on minor %d\n",
> +	DRM_DEBUG("Initialized %s %d.%d.%d %s on minor %d\n",
>  		 driver->name, driver->major, driver->minor, driver->patchlevel,
>  		 driver->date, dev->primary->index);
>  
> -- 
> 1.8.2
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
Abbas Raza July 8, 2013, 8:26 p.m. UTC | #2
On 07/02/2013 03:14 PM, Ville Syrjälä wrote:
> On Sun, Jun 30, 2013 at 05:41:59AM +0500, Abbas Raza wrote:
>> From: Abbas Raza <Abbas_Raza@mentor.com>
>>
>> DRM_INFO calls in the drm init routines are causing a large delay at boot time
>> due to which imx_drm_init call average takes around 26 ms. Changing DRM_INFO to
>> DRM_DEBUG reduces startup time to < 3ms.
> 
> Serial console enabled?
> 
> Not that I think these printks are particularly useful...

Yes serial console is enabled. these printk's seem useful but they take lot of time, increasing the boot time.
> 
>> Signed-off-by: Abbas Raza <Abbas_Raza@mentor.com>
>> CC: David Airlie <airlied@linux.ie>
>> Acked-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
>> ---
>>  drivers/gpu/drm/drm_irq.c      | 6 +++---
>>  drivers/gpu/drm/drm_platform.c | 2 +-
>>  2 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
>> index c798eea..782f5ff 100644
>> --- a/drivers/gpu/drm/drm_irq.c
>> +++ b/drivers/gpu/drm/drm_irq.c
>> @@ -252,13 +252,13 @@ int drm_vblank_init(struct drm_device *dev, int num_crtcs)
>>  	if (!dev->_vblank_time)
>>  		goto err;
>>  
>> -	DRM_INFO("Supports vblank timestamp caching Rev 1 (10.10.2010).\n");
>> +	DRM_DEBUG("Supports vblank timestamp caching Rev 1 (10.10.2010).\n");
>>  
>>  	/* Driver specific high-precision vblank timestamping supported? */
>>  	if (dev->driver->get_vblank_timestamp)
>> -		DRM_INFO("Driver supports precise vblank timestamp query.\n");
>> +		DRM_DEBUG("Driver supports precise vblank timestamp query.\n");
>>  	else
>> -		DRM_INFO("No driver support for vblank timestamp query.\n");
>> +		DRM_DEBUG("No driver support for vblank timestamp query.\n");
>>  
>>  	/* Zero per-crtc vblank stuff */
>>  	for (i = 0; i < num_crtcs; i++) {
>> diff --git a/drivers/gpu/drm/drm_platform.c b/drivers/gpu/drm/drm_platform.c
>> index 82431dc..7649963 100644
>> --- a/drivers/gpu/drm/drm_platform.c
>> +++ b/drivers/gpu/drm/drm_platform.c
>> @@ -92,7 +92,7 @@ int drm_get_platform_dev(struct platform_device *platdev,
>>  
>>  	mutex_unlock(&drm_global_mutex);
>>  
>> -	DRM_INFO("Initialized %s %d.%d.%d %s on minor %d\n",
>> +	DRM_DEBUG("Initialized %s %d.%d.%d %s on minor %d\n",
>>  		 driver->name, driver->major, driver->minor, driver->patchlevel,
>>  		 driver->date, dev->primary->index);
>>  
>> -- 
>> 1.8.2
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel
> 

Thanks .
Abbas Raza
diff mbox

Patch

diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index c798eea..782f5ff 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -252,13 +252,13 @@  int drm_vblank_init(struct drm_device *dev, int num_crtcs)
 	if (!dev->_vblank_time)
 		goto err;
 
-	DRM_INFO("Supports vblank timestamp caching Rev 1 (10.10.2010).\n");
+	DRM_DEBUG("Supports vblank timestamp caching Rev 1 (10.10.2010).\n");
 
 	/* Driver specific high-precision vblank timestamping supported? */
 	if (dev->driver->get_vblank_timestamp)
-		DRM_INFO("Driver supports precise vblank timestamp query.\n");
+		DRM_DEBUG("Driver supports precise vblank timestamp query.\n");
 	else
-		DRM_INFO("No driver support for vblank timestamp query.\n");
+		DRM_DEBUG("No driver support for vblank timestamp query.\n");
 
 	/* Zero per-crtc vblank stuff */
 	for (i = 0; i < num_crtcs; i++) {
diff --git a/drivers/gpu/drm/drm_platform.c b/drivers/gpu/drm/drm_platform.c
index 82431dc..7649963 100644
--- a/drivers/gpu/drm/drm_platform.c
+++ b/drivers/gpu/drm/drm_platform.c
@@ -92,7 +92,7 @@  int drm_get_platform_dev(struct platform_device *platdev,
 
 	mutex_unlock(&drm_global_mutex);
 
-	DRM_INFO("Initialized %s %d.%d.%d %s on minor %d\n",
+	DRM_DEBUG("Initialized %s %d.%d.%d %s on minor %d\n",
 		 driver->name, driver->major, driver->minor, driver->patchlevel,
 		 driver->date, dev->primary->index);