[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100727091408.49d55447@lxorguk.ukuu.org.uk>
Date: Tue, 27 Jul 2010 09:14:08 +0100
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: Philippe Langlais <philippe.langlais@...ricsson.com>
Cc: "gregkh@...e.de" <gregkh@...e.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Ludovic BARRE <ludovic.barre@...ricsson.com>,
Vincent Guittot <vincent.guittot@...ricsson.com>
Subject: Re: patch "U6715 8250 serial like driver" added to gregkh-2.6 tree
> > I think what you need to keep this clean is to create a
> > port->set_termios() for the 8250 port (akin to
> > port->serial_in/serial_out) which does the specials you need each end and
> > calls the standard serial8250_set_termios)
> >
> I don't think so, call a function which compute clock each time
> we access UART registers isn't optimal, another function to overload ?
set_termios() gets called once at init time and once each time a
caller requests a change in serial parameters. That's not usually
considered a hot path. I'm not suggesting you hide it in the register
methods but add ->set_termios as a method that can be overridden, plus
export the existing one so you can wrap it.
If you can't detect the chip then create yourself a u6715 driver file
which registers the ports you have and specifies the relevant
serial_in/out methods and other detail as well as containing the board
specific routines needed.
See arch/arm/mach-omap2/serial.c for a ARM example doing this, where all
the chip knowledge is nicely buried away in the platform support.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists