Re: [PATCH 5/5] tty: serial: Add 8250-core based omap driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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:
>> +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
--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux