linux/drivers/char
Alan Cox 266794eb71 nozomi: Add tty_port usage
The Nozomi tty handling is very broken on the open/close side (See
http://bugzilla.kernel.org/show_bug.cgi?id=13024 for one example). In
particular it marks the tty as closed on the first close() not on the last.

Most of the logic is pretty solid except for the open/close path so switch
to the tty_port helpers and let them do all the heavy lifting. This is also
fixes all the POSIX behaviour violations in the open/close paths.

Begin by adding the tty port usage

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-02 14:43:20 -08:00
..
agp Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:37:06 -08:00
hw_random Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2010-02-26 16:50:02 -08:00
ip2 tty: declare MODULE_FIRMWARE in various drivers 2010-03-02 14:43:15 -08:00
ipmi ACPI: fix ACPI=n allmodconfig build 2009-12-30 01:24:25 -05:00
mwave mwave: fix read buffer overflow 2009-09-24 07:21:03 -07:00
pcmcia cm4000_cs.c: Remove unnecessary cast 2010-02-17 17:37:33 +01:00
rio tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
tpm tpm_infineon: fix suspend/resume handler for pnp_driver 2010-02-11 13:59:42 -08:00
xilinx_hwicap const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
.gitignore
amiserial.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
apm-emulation.c const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
applicom.c headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
applicom.h
bfin_jtag_comm.c tty: const: constify remaining tty_operations 2009-12-11 15:18:03 -08:00
bfin-otp.c const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
briq_panel.c
bsr.c powerpc/BSR: Fix BSR to allow mmap of small BSR on 64k kernel 2009-06-26 14:37:26 +10:00
cd1865.h
ChangeLog
consolemap.c consolemap: indentation & braces disagree - reindent 2009-01-06 15:59:30 -08:00
cp437.uni unicode table for cp437 2008-12-13 11:25:49 -08:00
cs5535_gpio.c drivers: Remove BKL from cs5535_gpio 2009-10-14 17:36:48 +02:00
cyclades.c tty: declare MODULE_FIRMWARE in various drivers 2010-03-02 14:43:15 -08:00
defkeymap.c_shipped
defkeymap.map
digi1.h
digiFep1.h
digiPCI.h
ds1302.c rtc: use bcd2bin/bin2bcd 2008-10-20 08:52:41 -07:00
ds1620.c [ARM] netwinder: clean up GPIO naming 2008-12-13 09:12:07 +00:00
dsp56k.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
dtlk.c headers: remove sched.h from poll.h 2009-10-04 15:05:10 -07:00
efirtc.c efirtc: explicitly set llseek to no_llseek 2009-12-16 07:19:59 -08:00
epca.c tty: const: constify remaining tty_operations 2009-12-11 15:18:03 -08:00
epca.h
epcaconfig.h
generic_nvram.c nvram: Drop the bkl from nvram_llseek() 2009-10-14 17:36:49 +02:00
generic_serial.c headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
genrtc.c headers: Fix build after <linux/sched.h> removal 2009-10-13 10:20:16 -07:00
hangcheck-timer.c
hpet.c sysctl: Drop & in front of every proc_handler. 2009-11-18 08:37:40 -08:00
hvc_beat.c Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6 2010-02-25 15:38:37 -08:00
hvc_console.c hvc_console: fix test on unsigned in hvc_console_print() 2010-03-02 14:43:13 -08:00
hvc_console.h hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvc_irq.c hvc_console: Call free_irq() only if request_irq() was successful 2009-01-13 14:48:01 +11:00
hvc_iseries.c hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvc_iucv.c hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvc_rtas.c hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvc_udbg.c hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvc_vio.c hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvc_xen.c hvc_console: make the ops pointer const. 2010-02-24 14:22:32 +10:30
hvcs.c Merge commit 'origin/master' into next 2009-06-18 11:16:55 +10:00
hvsi.c powerpc/hvsi: Avoid calculating possibly-invalid address 2009-08-20 10:29:28 +10:00
i8k.c i8k: Add Dell Vostro systems 2009-01-02 10:28:32 -08:00
isicom.c tty: declare MODULE_FIRMWARE in various drivers 2010-03-02 14:43:15 -08:00
istallion.c tty: istallion: tty port open/close methods 2009-12-11 15:18:06 -08:00
Kconfig virtio: console: Associate each port with a char device 2010-02-24 14:22:53 +10:30
keyboard.c Input: add match() method to input hanlders 2010-02-04 00:25:19 -08:00
lp.c lp: move compat_ioctl handling into lp.c 2009-12-10 22:55:36 +01:00
Makefile tty: esp: remove broken driver 2009-12-11 15:18:03 -08:00
mbcs.c [IA64] mbcs: fix printk format warnings 2009-09-15 08:42:00 -07:00
mbcs.h
mem.c devmem: fix kmem write bug on memory holes 2010-02-02 18:11:22 -08:00
misc.c drivers/char/misc.c: use bitmap/bitops functions for dynamic minor number allocation 2009-12-15 08:53:27 -08:00
mmtimer.c
moxa.c tty: declare MODULE_FIRMWARE in various drivers 2010-03-02 14:43:15 -08:00
moxa.h
mspec.c tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
mxser.c tty: char: mxser, remove unnecessary tty test 2010-03-02 14:43:12 -08:00
mxser.h
n_hdlc.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
n_r3964.c tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
n_tty.c n_tty: move echoctl check and clean up logic 2009-09-19 13:13:34 -07:00
nozomi.c nozomi: Add tty_port usage 2010-03-02 14:43:20 -08:00
nsc_gpio.c
nvram.c Merge branches 'futexes-for-linus', 'irq-core-for-linus' and 'bkl-drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-01 08:51:52 -08:00
nwbutton.c
nwbutton.h
nwflash.c ARM: add missing include to nwflash.c 2009-12-19 23:36:00 +00:00
pc8736x_gpio.c drivers: Remove BKL from pc8736x_gpio 2009-10-14 17:36:52 +02:00
ppdev.c ppdev: reduce kernel log spam 2009-06-18 13:03:54 -07:00
ps3flash.c ps3flash: Always read chunks of 256 KiB, and cache them 2009-06-15 16:47:27 +10:00
pty.c tty: push the BKL down into the handlers a bit 2009-12-11 15:18:08 -08:00
random.c random: Remove unused inode variable 2010-02-02 06:50:27 +11:00
raw.c Driver-Core: extend devnode callbacks to provide permissions 2009-09-19 12:50:38 -07:00
riscom8_reg.h
riscom8.c tty: riscom8: switch to the tty_port_open API 2009-12-11 15:18:06 -08:00
riscom8.h
rocket_int.h tty: rocketport uses different port flags to everyone else 2009-01-02 10:19:39 -08:00
rocket.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
rocket.h tty: rocketport uses different port flags to everyone else 2009-01-02 10:19:39 -08:00
rtc.c sysctl: Drop & in front of every proc_handler. 2009-11-18 08:37:40 -08:00
scc.h m68k: atari - Rename "mfp" to "st_mfp" 2009-02-22 09:23:02 -08:00
scx200_gpio.c drivers: Remove BKL from scx200_gpio 2009-10-14 17:36:53 +02:00
selection.c tty: rewrite the ldisc locking 2009-06-11 08:51:01 -07:00
ser_a2232.c headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
ser_a2232.h
ser_a2232fw.ax
ser_a2232fw.h
serial167.c serial167: fix read buffer overflow 2009-10-01 16:11:16 -07:00
snsc_event.c
snsc.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
snsc.h
sonypi.c sony_pi: Remove the BKL from open and ioctl 2010-01-04 12:31:20 -08:00
specialix_io8.h
specialix.c specialix.c: convert nested spin_lock_irqsave to spin_lock 2009-07-20 16:38:43 -07:00
stallion.c tty: stallion: Convert to the tty_port_open/close methods 2009-12-11 15:18:06 -08:00
sx.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
sx.h
sxboards.h
sxwindow.h
synclink_gt.c serial: synclink_gt: dropped transmit data bugfix 2010-03-02 14:43:08 -08:00
synclink.c Char: synclink, remove unnecessary checks 2010-03-02 14:43:16 -08:00
synclinkmp.c hdlc: convert to netdev_tx_t 2009-09-01 01:13:31 -07:00
sysrq.c oom-kill: fix NUMA constraint check with nodemask 2009-12-16 07:19:57 -08:00
tb0219.c mips: Remove BKL from tb0219 2009-10-14 17:36:53 +02:00
tlclk.c headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
toshiba.c tosh: Use non bkl ioctl 2010-01-04 12:31:21 -08:00
tty_audit.c tty: remove buffer special casing 2009-06-11 08:51:02 -07:00
tty_buffer.c tty: use the new 'flush_delayed_work()' helper to do ldisc flush 2009-10-14 09:20:41 -07:00
tty_io.c Fix race in tty_fasync() properly 2010-02-07 10:26:01 -08:00
tty_ioctl.c tree-wide: fix a very frequent spelling mistake 2009-11-09 09:40:54 +01:00
tty_ldisc.c tty: Push the lock down further into the ldisc code 2009-12-11 15:18:08 -08:00
tty_port.c tty: tty_port: Add a kref object to the tty port 2009-12-11 15:18:07 -08:00
uv_mmtimer.c x86, UV: Fix RTC latency bug by reading replicated cachelines 2010-01-27 11:33:53 +01:00
vc_screen.c vc: create vcs(a) devices for consoles 2009-07-20 16:38:43 -07:00
viotape.c tape: beyond ARRAY_SIZE of viocd_diskinfo 2009-06-02 10:32:34 +10:00
virtio_console.c virtio: console: Fill ports' entire in_vq with buffers 2010-02-24 14:23:06 +10:30
vme_scc.c m68k: vme_scc - __init annotations 2010-02-27 18:27:14 +01:00
vt_ioctl.c vt: Fix use of "new" in a struct field 2009-11-19 13:43:06 -08:00
vt.c vt: make the default cursor shape configurable 2009-12-16 07:19:57 -08:00