[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZR574o7etTozvhzt@smile.fi.intel.com>
Date: Thu, 5 Oct 2023 12:03:30 +0300
From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To: Tony Lindgren <tony@...mide.com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jirislaby@...nel.org>, Dhruva Gole <d-gole@...com>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
John Ogness <john.ogness@...utronix.de>,
Johan Hovold <johan@...nel.org>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Vignesh Raghavendra <vigneshr@...com>,
linux-kernel@...r.kernel.org, linux-serial@...r.kernel.org
Subject: Re: [PATCH v2 1/1] serial: 8250_omap: Drop pm_runtime_irq_safe()
On Wed, Oct 04, 2023 at 09:26:48AM +0300, Tony Lindgren wrote:
> Let's drop the use of pm_runtime_irq_safe() for 8250_omap. The use of
> pm_runtime_irq_safe() is not nice as it takes a permanent usage count on
> the parent device.
>
> We can finally drop pm_runtime_irq_safe() safely as the kernel now knows
> when the uart port tx is active. This changed with commit 84a9582fd203
> ("serial: core: Start managing serial controllers to enable runtime PM").
>
> For serial port rx, we already use Linux generic wakeirqs for 8250_omap.
>
> To drop pm_runtime_irq_safe(), we need to add handling for shallow idle
> state where the port hardware may already be awake and an IO interrupt
> happens. We also need to replace the serial8250_rpm sync calls in the
> interrupt handlers with async runtime PM calls.
>
> Note that omap8250_irq() calls omap_8250_dma_handle_irq(), so we don't
> need separate runtime PM calls in omap_8250_dma_handle_irq().
>
> While at it, let's also add the missing line break to the end of
> omap8250_runtime_resume() to group the calls.
Yoo-hoo! A few years only to get to the point :-)
Reviewed-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists