All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Tony Lindgren <tony@atomide.com>, <linux-omap@vger.kernel.org>
Cc: "Andrew F . Davis" <afd@ti.com>, Dave Gerlach <d-gerlach@ti.com>,
	Faiz Abbas <faiz_abbas@ti.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Keerthy <j-keerthy@ti.com>, Nishanth Menon <nm@ti.com>,
	Peter Ujfalusi <peter.ujfalusi@ti.com>,
	Roger Quadros <rogerq@ti.com>, Suman Anna <s-anna@ti.com>,
	Tero Kristo <t-kristo@ti.com>, <linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<dri-devel@lists.freedesktop.org>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Subject: Re: [PATCH 1/5] drm/omap: Fix suspend resume regression after platform data removal
Date: Wed, 3 Jun 2020 15:33:43 +0300	[thread overview]
Message-ID: <16ba1808-5c7f-573d-8dd0-c80cac2f476e@ti.com> (raw)
In-Reply-To: <20200531193941.13179-2-tony@atomide.com>

Hi Tony,

On 31/05/2020 22:39, Tony Lindgren wrote:
> When booting without legacy platform data, we no longer have omap_device
> calling PM runtime suspend for us on suspend. This causes the driver
> context not be saved as we have no suspend and resume functions defined.
> 
> Let's fix the issue by switching over to use UNIVERSAL_DEV_PM_OPS as it
> will call the existing PM runtime suspend functions on suspend.

I don't think we can use UNIVERSAL_DEV_PM_OPS, as we can't disable DSS modules in any order, but 
things have to be shut down in orderly manner.

omapdrm hasn't relied on omap_device calling runtime suspend for us (I didn't know it does that). We 
have system suspend hooks in omap_drv.c:

SIMPLE_DEV_PM_OPS(omapdrm_pm_ops, omap_drm_suspend, omap_drm_resume)

omap_drm_suspend() is supposed to turn off the displays, which then cause dispc_runtime_put (and 
other runtime_puts) to be called, which result in dispc_runtime_suspend (and other runtime PM suspends).

So... For some reason that's no longer happening? I need to try to find a board with which 
suspend/resume works (without DSS)...

  Tomi

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

WARNING: multiple messages have this Message-ID (diff)
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Tony Lindgren <tony@atomide.com>, <linux-omap@vger.kernel.org>
Cc: Nishanth Menon <nm@ti.com>, Tero Kristo <t-kristo@ti.com>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Dave Gerlach <d-gerlach@ti.com>, Keerthy <j-keerthy@ti.com>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	"Andrew F . Davis" <afd@ti.com>,
	Peter Ujfalusi <peter.ujfalusi@ti.com>,
	Faiz Abbas <faiz_abbas@ti.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Suman Anna <s-anna@ti.com>,
	linux-arm-kernel@lists.infradead.org,
	Roger Quadros <rogerq@ti.com>
Subject: Re: [PATCH 1/5] drm/omap: Fix suspend resume regression after platform data removal
Date: Wed, 3 Jun 2020 15:33:43 +0300	[thread overview]
Message-ID: <16ba1808-5c7f-573d-8dd0-c80cac2f476e@ti.com> (raw)
In-Reply-To: <20200531193941.13179-2-tony@atomide.com>

Hi Tony,

On 31/05/2020 22:39, Tony Lindgren wrote:
> When booting without legacy platform data, we no longer have omap_device
> calling PM runtime suspend for us on suspend. This causes the driver
> context not be saved as we have no suspend and resume functions defined.
> 
> Let's fix the issue by switching over to use UNIVERSAL_DEV_PM_OPS as it
> will call the existing PM runtime suspend functions on suspend.

I don't think we can use UNIVERSAL_DEV_PM_OPS, as we can't disable DSS modules in any order, but 
things have to be shut down in orderly manner.

omapdrm hasn't relied on omap_device calling runtime suspend for us (I didn't know it does that). We 
have system suspend hooks in omap_drv.c:

SIMPLE_DEV_PM_OPS(omapdrm_pm_ops, omap_drm_suspend, omap_drm_resume)

omap_drm_suspend() is supposed to turn off the displays, which then cause dispc_runtime_put (and 
other runtime_puts) to be called, which result in dispc_runtime_suspend (and other runtime PM suspends).

So... For some reason that's no longer happening? I need to try to find a board with which 
suspend/resume works (without DSS)...

  Tomi

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Tony Lindgren <tony@atomide.com>, <linux-omap@vger.kernel.org>
Cc: Nishanth Menon <nm@ti.com>, Tero Kristo <t-kristo@ti.com>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Dave Gerlach <d-gerlach@ti.com>, Keerthy <j-keerthy@ti.com>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	"Andrew F . Davis" <afd@ti.com>,
	Peter Ujfalusi <peter.ujfalusi@ti.com>,
	Faiz Abbas <faiz_abbas@ti.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Suman Anna <s-anna@ti.com>,
	linux-arm-kernel@lists.infradead.org,
	Roger Quadros <rogerq@ti.com>
Subject: Re: [PATCH 1/5] drm/omap: Fix suspend resume regression after platform data removal
Date: Wed, 3 Jun 2020 15:33:43 +0300	[thread overview]
Message-ID: <16ba1808-5c7f-573d-8dd0-c80cac2f476e@ti.com> (raw)
In-Reply-To: <20200531193941.13179-2-tony@atomide.com>

Hi Tony,

On 31/05/2020 22:39, Tony Lindgren wrote:
> When booting without legacy platform data, we no longer have omap_device
> calling PM runtime suspend for us on suspend. This causes the driver
> context not be saved as we have no suspend and resume functions defined.
> 
> Let's fix the issue by switching over to use UNIVERSAL_DEV_PM_OPS as it
> will call the existing PM runtime suspend functions on suspend.

I don't think we can use UNIVERSAL_DEV_PM_OPS, as we can't disable DSS modules in any order, but 
things have to be shut down in orderly manner.

omapdrm hasn't relied on omap_device calling runtime suspend for us (I didn't know it does that). We 
have system suspend hooks in omap_drv.c:

SIMPLE_DEV_PM_OPS(omapdrm_pm_ops, omap_drm_suspend, omap_drm_resume)

omap_drm_suspend() is supposed to turn off the displays, which then cause dispc_runtime_put (and 
other runtime_puts) to be called, which result in dispc_runtime_suspend (and other runtime PM suspends).

So... For some reason that's no longer happening? I need to try to find a board with which 
suspend/resume works (without DSS)...

  Tomi

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-06-03 12:34 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-31 19:39 [PATCH 0/5] Suspend and resume fixes for omapdrm pdata removal Tony Lindgren
2020-05-31 19:39 ` Tony Lindgren
2020-05-31 19:39 ` Tony Lindgren
2020-05-31 19:39 ` [PATCH 1/5] drm/omap: Fix suspend resume regression after platform data removal Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-06-03 12:33   ` Tomi Valkeinen [this message]
2020-06-03 12:33     ` Tomi Valkeinen
2020-06-03 12:33     ` Tomi Valkeinen
2020-06-03 14:06     ` Tony Lindgren
2020-06-03 14:06       ` Tony Lindgren
2020-06-03 14:06       ` Tony Lindgren
2020-06-09  7:04       ` Tomi Valkeinen
2020-06-09  7:04         ` Tomi Valkeinen
2020-06-09  7:04         ` Tomi Valkeinen
2020-06-09 15:19         ` Tony Lindgren
2020-06-09 15:19           ` Tony Lindgren
2020-06-09 15:19           ` Tony Lindgren
2020-06-09 15:26           ` Tomi Valkeinen
2020-06-09 15:26             ` Tomi Valkeinen
2020-06-09 15:26             ` Tomi Valkeinen
2020-06-09 16:52             ` Tony Lindgren
2020-06-09 16:52               ` Tony Lindgren
2020-06-09 16:52               ` Tony Lindgren
2020-06-09 17:10               ` Tony Lindgren
2020-06-09 17:10                 ` Tony Lindgren
2020-06-09 17:10                 ` Tony Lindgren
2020-06-09 17:26                 ` Tony Lindgren
2020-06-09 17:26                   ` Tony Lindgren
2020-06-09 17:26                   ` Tony Lindgren
2020-06-10 11:47                 ` Tomi Valkeinen
2020-06-10 11:47                   ` Tomi Valkeinen
2020-06-10 11:47                   ` Tomi Valkeinen
2020-06-10 22:41                   ` Tony Lindgren
2020-06-10 22:41                     ` Tony Lindgren
2020-06-10 22:41                     ` Tony Lindgren
2020-06-11 14:00             ` Grygorii Strashko
2020-06-11 14:00               ` Grygorii Strashko
2020-06-11 14:00               ` Grygorii Strashko
2020-06-11 14:32               ` Tony Lindgren
2020-06-11 14:32                 ` Tony Lindgren
2020-06-11 14:32                 ` Tony Lindgren
2020-06-16 13:01               ` Tomi Valkeinen
2020-06-16 13:01                 ` Tomi Valkeinen
2020-06-16 13:01                 ` Tomi Valkeinen
2020-06-16 15:30                 ` Tony Lindgren
2020-06-16 15:30                   ` Tony Lindgren
2020-06-16 15:30                   ` Tony Lindgren
2020-06-16 16:56                   ` Grygorii Strashko
2020-06-16 16:56                     ` Grygorii Strashko
2020-06-16 16:56                     ` Grygorii Strashko
2020-06-17  6:04                     ` Tomi Valkeinen
2020-06-17  6:04                       ` Tomi Valkeinen
2020-06-17  6:04                       ` Tomi Valkeinen
2020-06-17 12:49                       ` Grygorii Strashko
2020-06-17 12:49                         ` Grygorii Strashko
2020-06-17 12:49                         ` Grygorii Strashko
2020-05-31 19:39 ` [PATCH 2/5] bus: ti-sysc: Use optional clocks on for enable and wait for softreset bit Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-06-01  2:19   ` kbuild test robot
2020-06-01  2:19     ` kbuild test robot
2020-06-01 15:01     ` Tony Lindgren
2020-06-01 15:01       ` Tony Lindgren
2020-05-31 19:39 ` [PATCH 3/5] bus: ti-sysc: Ignore clockactivity unless specified as a quirk Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39 ` [PATCH 4/5] bus: ti-sysc: Fix uninitialized framedonetv_irq Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39 ` [PATCH 5/5] ARM: OMAP2+: Fix legacy mode dss_reset Tony Lindgren
2020-05-31 19:39   ` Tony Lindgren
2020-05-31 19:39   ` 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=16ba1808-5c7f-573d-8dd0-c80cac2f476e@ti.com \
    --to=tomi.valkeinen@ti.com \
    --cc=afd@ti.com \
    --cc=d-gerlach@ti.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=faiz_abbas@ti.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=grygorii.strashko@ti.com \
    --cc=j-keerthy@ti.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=nm@ti.com \
    --cc=peter.ujfalusi@ti.com \
    --cc=rogerq@ti.com \
    --cc=s-anna@ti.com \
    --cc=t-kristo@ti.com \
    --cc=tony@atomide.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.