linux/drivers/tty/serial
Tomoya MORINAGA af6d17cdc8 pch_uart: Fix dma channel unallocated issue
This driver anticipates pch_uart_verify_port() is not called
during installation.
However, actually pch_uart_verify_port() is called during
installation.
As a result, memory access violation occurs like below.

0. initial value: use_dma=0
1. starup()
    - dma channel is not allocated because use_dma=0
2. pch_uart_verify_port()
    - Set use_dma=1
3. UART processing acts DMA mode because use_dma=1
     - memory access violation occurs!

This patch fixes the issue.

Solution:
Whenever pch_uart_verify_port() is called and then
dma channel is not allocated, the channel should be allocated.

Signed-off-by: Tomoya MORINAGA <tomoya.rohm@gmail.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-04-18 15:19:50 -07:00
..
8250 serial/8250_pci: add a "force background timer" flag and use it for the "kt" serial port 2012-04-09 10:38:30 -07:00
cpm_uart
jsm
21285.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
68328serial.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
68328serial.h
altera_jtaguart.c
altera_uart.c tty: serial: altera_uart: Check for NULL platform_data in probe. 2012-04-09 10:30:39 -07:00
amba-pl010.c
amba-pl011.c serial: PL011: move interrupt clearing 2012-04-06 14:04:33 -07:00
apbuart.c
apbuart.h
ar933x_uart.c
atmel_serial.c tty/serial: atmel_serial: fix RS485 half-duplex problem 2012-04-09 10:30:39 -07:00
bcm63xx_uart.c
bfin_sport_uart.c
bfin_sport_uart.h
bfin_uart.c serial: bfin-uart: Don't access tty circular buffer in TX DMA interrupt after it is reset. 2012-03-13 14:33:39 -07:00
clps711x.c ARM: clps711x: serial driver hungs are a result of call disable_irq within ISR 2012-04-18 15:19:50 -07:00
crisv10.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
crisv10.h
dz.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
dz.h
efm32-uart.c
icom.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
icom.h
ifx6x60.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
ifx6x60.h
imx.c serial: imx: add clk_prepare/clk_unprepare 2012-02-01 14:29:31 +01:00
ioc3_serial.c
ioc4_serial.c TTY: remove serialP.h inclusion from some files 2012-03-08 11:47:02 -08:00
ip22zilog.c
ip22zilog.h
Kconfig tty/serial/omap: console can only be built-in 2012-04-09 10:34:16 -07:00
kgdboc.c
lantiq.c
m32r_sio_reg.h m32r: relocate drivers back out of 8250 dir 2012-02-08 15:04:32 -08:00
m32r_sio.c TTY: remove serialP.h inclusion from some files 2012-03-08 11:47:02 -08:00
m32r_sio.h TTY: serial, include pci.h in m32r_sio 2012-03-08 11:47:02 -08:00
Makefile Merge tag 'tty-3.3-rc3' tty-next 2012-02-10 10:25:27 -08:00
max3100.c
max3107.c
max3107.h
mcf.c
mfd.c simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
mpc52xx_uart.c mpc5200b/uart: select more tolerant uart prescaler on low baudrates 2012-03-08 13:15:50 -08:00
mpsc.c
mrst_max3110.c
mrst_max3110.h
msm_serial_hs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
msm_serial.c
msm_serial.h
msm_smd_tty.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
mux.c tty/serial/mux.c: linux/tty.h included twice 2012-02-24 13:50:45 -08:00
mxs-auart.c
netx-serial.c
nwpserial.c
of_serial.c
omap-serial.c omap-serial: Fix the error handling in the omap_serial probe 2012-04-09 10:30:38 -07:00
pch_uart.c pch_uart: Fix dma channel unallocated issue 2012-04-18 15:19:50 -07:00
pmac_zilog.c
pmac_zilog.h
pnx8xxx_uart.c
pxa.c ARM: device tree work 2012-03-27 16:47:35 -07:00
sa1100.c ARM: 7342/2: sa1100: prepare for sparse irq conversion 2012-03-25 23:57:20 +01:00
samsung.c serial: samsung: fix omission initialize ulcon in reset port fn() 2012-04-09 10:30:39 -07:00
samsung.h
sb1250-duart.c
sc26xx.c
serial_core.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
serial_ks8695.c
serial_txx9.c
sh-sci.c serial: sh-sci: use serial_port_in/out vs sci_in/out. 2012-03-30 19:50:15 +09:00
sh-sci.h serial: sh-sci: use serial_port_in/out vs sci_in/out. 2012-03-30 19:50:15 +09:00
sirfsoc_uart.c pinctrl: API changes to support multiple states per device 2012-03-05 11:22:59 +01:00
sirfsoc_uart.h serial/sirf: fixup for changes to pin control 2012-02-22 17:59:12 +01:00
sn_console.c Miscellaneous Itanium patches 2012-03-23 17:19:37 -07:00
suncore.c tty: sparc: rename drivers/tty/serial/suncore.h -> include/linux/sunserialcore.h 2012-02-10 10:44:35 -08:00
sunhv.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sunsab.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sunsab.h
sunsu.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sunzilog.c serial/sunzilog: fix keyboard on SUN SPARCstation 2012-04-04 00:37:10 -07:00
sunzilog.h
timbuart.c
timbuart.h
uartlite.c
ucc_uart.c
vr41xx_siu.c
vt8500_serial.c tty: serial: vt8500: fix annotations for probe/remove 2012-03-12 10:21:55 -07:00
xilinx_uartps.c
zs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
zs.h