[PATCH 5/5] tty: serial: Add 8250-core based omap driver
From: bigeasy@linutronix.de (Sebastian Andrzej Siewior)
Date: 2014-07-17 15:12:07
Also in:
linux-omap, linux-serial, lkml
From: bigeasy@linutronix.de (Sebastian Andrzej Siewior)
Date: 2014-07-17 15:12:07
Also in:
linux-omap, linux-serial, lkml
On 07/17/2014 04:54 PM, Felipe Balbi wrote:
Hi, On Wed, Jul 16, 2014 at 04:45:03PM +0200, Sebastian Andrzej Siewior wrote:quoted
+static int omap_8250_startup(struct uart_port *port) +{ + struct uart_8250_port *up = + container_of(port, struct uart_8250_port, port); + struct omap8250_priv *priv = port->private_data; + + int ret; + + if (priv->wakeirq) { + ret = request_irq(priv->wakeirq, omap_wake_irq, + port->irqflags, "wakeup irq", port); + if (ret) + return ret; + disable_irq(priv->wakeirq); + } + + ret = serial8250_do_startup(port); + if (ret) + goto err; + + pm_runtime_get_sync(port->dev);should this pm_runtime_get_sync() be placed above serial8250_do_startup() call ?
I don't think it matters since serial8250_do_startup() has its own pm_runtime_get_sync(). ->startup(), ->shutdown() are called via omap callbacks so we could spare in the 8250-core if we do it in the omap code before invoking the function. The same goes for serial8250_set_termios() which is not used by omap but has those runtime-pm stuff, too. It would be wrong if someone would use the serial8250_do_startup() without his own runtime-pm get but it is omap only which does this things. So it is not used by anyone else (right now) and if you want to keep it to a minimum I could remove them from those places. Sebastian