On Fri, Dec 03, 2010 at 12:47:14PM +0100, Vitaly Wool wrote: > On Tue, Nov 9, 2010 at 11:40 PM, Greg KH <greg@xxxxxxxxx> wrote: > > On Tue, Nov 09, 2010 at 04:30:37PM +0100, Linus Walleij wrote: > >> From: Grzegorz Sygieda <grzegorz.sygieda@xxxxxxxxx> > >> > >> This patch allows to control the pl011 clock using set_termios > >> callback. Any positive baudrate passed enables clock, otherwise > >> disables. This saves a lot of power on submicron designs since > >> we can clock off and disable unused UARTs. > > > > That's nice, but it seems like an overload of what people traditionally > > think of when it comes to baud rates. Why not just power down ports > > that are not open instead? > > I like the idea as well and this is definitely gonna help conserving > the power for Bluetooth UARTs. > > But using baud rate 0 is something I don't like. You can't use the baud rate of 0 to power down ports - that already has a POSIX-defined function (hang up). > Why don't you stop > the clocks if RTS is cleared? This would have allowed the line > discipline driver to implicitly control the UART clock and there will > be no risk of losing data, as well as no non-standard behavior > involved. In fact, you'll be transparent to the upper layers in this > case. I've no idea what you're thinking, but you can't stop the UART clock because RTS is deasserted - or DTR for that matter. Neither of those two define whether characters will be transmitted or received. There are specialist protocols and devices out there which require RTS and DTR to be held at certain non-standard states for them to work. One range of devices are car OBD-II interfaces, where RTS controls the L line and sometimes the TX/RX direction on the bidirectional K data line. Similar things are done with DTR, and there's protocols which use DTR as a handshake. -- 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