On Fri, Oct 15, 2021 at 02:26:22PM +0300, Tony Lindgren wrote: > Hi, > > Here are v3 patches to get rid of pm_runtime_irq_safe() for the 8250_omap > driver. Based on comments from Andy, Johan and Greg, I improved a bunch of > things as listed below. > > For removing the pm_runtime_irq_safe() usage, serial TX is the last > remaining issue. We deal with TX by waking up the port and returning 0 > bytes written from write_room() and write() if the port is not available > because of PM runtime autoidle. Oh, there's a lot more than TX that needs fixing... And I believe the second sentence no longer applies since v1. > Chganges since v2: > > - Use locking instead of atomic_t as suggested by Greg > > Changes since v1: > > - Separated out line discipline patches, n_tty -EAGAIN change I still > need to retest > > - Changed prep_tx() to more generic wakeup() as also flow control needs it > > - Changed over to using wakeup() with device driver runtime PM instead > of write_room() > > - Added runtime_suspended flag for drivers and generic serial layer PM > to use Johan