linux/drivers/tty
Paul Gortmaker 4fd996a146 serial: use serial_port_in/out vs serial_in/out in 8250
The serial_in and serial_out helpers are expecting to operate
on an 8250_port struct.  These in turn go after the contained
normal port struct which actually has the actual in/out accessors.

But what is happening in some cases, is that a function is passed
in a port struct, and it runs container_of to get the 8250_port
struct, and then it uses serial_in/out helpers on that.  But when
you do, it goes full circle, since it jumps back inside the 8250_port
to find the contained port struct (which we already knew!).

So, if we are operating in a scope where we know the struct port,
then use the serial_port_in/out helpers and avoid the bouncing
around.  If we don't have the struct port handy, and it isn't
worth making a local for it, then just leave things as-is which
uses the serial_in/out helpers that will resolve the 8250_port
onto the struct port.

Mostly, gcc figures this out on its own -- so this doesn't bring to
the table any revolutionary runtime delta.  However, it is somewhat
misleading to always hammer away on 8250 structs, when the actual
underlying property isn't at all 8250 specific -- and this change
makes that clear.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Acked-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-03-09 12:47:56 -08:00
..
hvc TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
ipwireless TTY: ipwireless, fix tty->index handling 2012-03-08 11:42:21 -08:00
serial serial: use serial_port_in/out vs serial_in/out in 8250 2012-03-09 12:47:56 -08:00
vt TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
amiserial.c TTY: amiserial, use tty_port_close_start 2012-03-08 12:50:02 -08:00
bfin_jtag_comm.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
cyclades.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
ehv_bytechan.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
isicom.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
Kconfig tty/powerpc: early udbg consoles can't be modules 2012-02-24 13:50:46 -08:00
Makefile tty/powerpc: introduce the ePAPR embedded hypervisor byte channel driver 2011-08-23 10:32:56 -07:00
moxa.c tty: moxa: fix bit test in moxa_start() 2012-03-08 12:55:48 -08:00
moxa.h
mxser.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
mxser.h Fix common misspellings 2011-03-31 11:26:23 -03:00
n_gsm.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
n_hdlc.c tty: n_hdlc not atomic use tty->flags. 2011-11-30 21:30:49 +09:00
n_r3964.c Revert "tty: make receive_buf() return the amout of bytes received" 2011-06-04 06:33:24 +09:00
n_tracerouter.c n_tracerouter and n_tracesink ldisc additions. 2011-05-13 16:31:00 -07:00
n_tracesink.c n_tracerouter and n_tracesink ldisc additions. 2011-05-13 16:31:00 -07:00
n_tracesink.h n_tracerouter and n_tracesink ldisc additions. 2011-05-13 16:31:00 -07:00
n_tty.c drivers/tty: Remove unneeded spaces 2011-12-09 19:11:35 -08:00
nozomi.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
pty.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
rocket_int.h
rocket.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
rocket.h
synclink_gt.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
synclink.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
synclinkmp.c TTY: remove unneeded tty->index checks 2012-03-08 11:42:21 -08:00
sysrq.c vt:tackle kbd_table 2012-03-08 10:50:35 -08:00
tty_audit.c tty_audit: fix tty_audit_add_data live lock on audit disabled 2011-03-07 12:04:50 -08:00
tty_buffer.c tty_buffer: get rid of 'seen_tail' logic in flush_to_ldisc 2011-06-08 07:46:30 -07:00
tty_io.c TTY: remove tty driver re-set from tty_reopen 2012-03-08 11:38:50 -08:00
tty_ioctl.c tty: Support compat_ioctl get/set termios_locked 2011-10-18 14:17:11 -07:00
tty_ldisc.c Merge 3.2-rc3 into tty-next to handle merge conflict in tty_ldisc.c 2011-11-26 20:07:25 -08:00
tty_mutex.c TTY: remove tty_locked 2011-08-23 10:34:07 -07:00
tty_port.c TTY: fix UV serial console regression 2012-01-24 12:55:37 -08:00