OpenCloudOS-Kernel/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 TTY: serial, fix includes in some drivers 2011-09-22 15:49:26 -07:00
jsm jsm: Fixed EEH recovery error 2012-01-24 12:55:36 -08:00
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 TTY: serial, remove dead code from 68328 2011-09-22 15:47:54 -07:00
Kconfig tty/serial/omap: console can only be built-in 2012-04-09 10:34:16 -07:00
Makefile Merge tag 'tty-3.3-rc3' tty-next 2012-02-10 10:25:27 -08:00
altera_jtaguart.c Merge branch 'devicetree/next' of git://git.secretlab.ca/git/linux-2.6 2011-10-27 08:35:41 +02:00
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 serial: pl010: Enable module alias autogeneration for AMBA drivers 2011-11-22 10:58:32 +00:00
amba-pl011.c serial: PL011: move interrupt clearing 2012-04-06 14:04:33 -07:00
apbuart.c apbuart: fix section mismatch warning 2011-12-27 16:33:13 -05:00
apbuart.h
ar933x_uart.c SERIAL: AR933X: Add driver for the built-in UART of the SoC 2011-12-07 22:02:46 +00:00
atmel_serial.c tty/serial: atmel_serial: fix RS485 half-duplex problem 2012-04-09 10:30:39 -07:00
bcm63xx_uart.c serial: bcm63xx_uart: fix irq storm after rx fifo overrun. 2011-06-16 12:01:58 -07:00
bfin_sport_uart.c serial: bfin-sport-uart: Add tty ASYNC_CTS_FLOW flag to do CTS flow control. 2011-12-09 19:05:33 -08:00
bfin_sport_uart.h tty: bfin-sport-uart: Rx interrupt is not called always with irq disabled. 2011-12-09 19:05:33 -08:00
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 serial/efm32: add new driver 2012-01-26 11:29:47 -08:00
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 serial: ifx6x60: minor cleanup 2011-02-17 11:16:15 -08:00
imx.c serial: imx: add clk_prepare/clk_unprepare 2012-02-01 14:29:31 +01:00
ioc3_serial.c TTY: serial, fix includes in some drivers 2011-09-22 15:49:26 -07:00
ioc4_serial.c TTY: remove serialP.h inclusion from some files 2012-03-08 11:47:02 -08:00
ip22zilog.c Fix common misspellings 2011-03-31 11:26:23 -03:00
ip22zilog.h
kgdboc.c tty: Add module.h to drivers/tty users who just expect it there. 2011-10-31 19:31:27 -04:00
lantiq.c Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty 2011-10-26 15:11:09 +02: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
m32r_sio_reg.h m32r: relocate drivers back out of 8250 dir 2012-02-08 15:04:32 -08:00
max3100.c TTY: Remove redundant spi driver bus initialization 2011-11-26 20:19:21 -08:00
max3107.c TTY: Remove redundant spi driver bus initialization 2011-11-26 20:19:21 -08:00
max3107.h Fix common misspellings 2011-03-31 11:26:23 -03:00
mcf.c TTY: irq: Remove IRQF_DISABLED 2011-09-22 16:08:57 -07:00
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 TTY: Remove redundant spi driver bus initialization 2011-11-26 20:19:21 -08:00
mrst_max3110.h max3110: add sysrq support 2011-08-26 11:01:15 -07:00
msm_serial.c Merge branch 'next/dt' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 21:02:35 -07:00
msm_serial.h tty: remove invalid location line in file header 2011-04-19 16:33:36 -07:00
msm_serial_hs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
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 clock management changes for i.MX 2012-01-09 14:44:15 -08:00
netx-serial.c tty: remove invalid location line in file header 2011-04-19 16:33:36 -07:00
nwpserial.c tty: Add export.h for EXPORT_SYMBOL/THIS_MODULE to exporters 2011-10-31 19:31:28 -04:00
of_serial.c drivercore: Add helper macro for platform_driver boilerplate 2011-10-25 00:35:47 +02:00
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 serial: Kill off NO_IRQ 2012-01-26 17:14:50 -08:00
pmac_zilog.h tty/serial/pmac_zilog: Fix suspend & resume 2011-12-16 11:10:01 +11:00
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 serial: samsung: merge probe() function from all SoC specific extensions 2011-12-23 10:07:00 +09:00
sb1250-duart.c TTY: serial, fix includes in some drivers 2011-09-22 15:49:26 -07:00
sc26xx.c TTY: serial: convert drivers/tty/serial/* to use module_platform_driver() 2011-11-30 20:11:46 +09:00
serial_core.c TTY: remove re-assignments to tty_driver members 2012-03-08 11:37:58 -08:00
serial_ks8695.c TTY: irq: Remove IRQF_DISABLED 2011-09-22 16:08:57 -07:00
serial_txx9.c TTY: serial, fix includes in some drivers 2011-09-22 15:49:26 -07:00
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 TTY: serial: convert drivers/tty/serial/* to use module_platform_driver() 2011-11-30 20:11:46 +09:00
timbuart.h
uartlite.c Merge branch 'devicetree/next' of git://git.secretlab.ca/git/linux-2.6 2011-10-27 08:35:41 +02:00
ucc_uart.c serial: Kill off NO_IRQ 2012-01-26 17:14:50 -08:00
vr41xx_siu.c serial: Kill off NO_IRQ 2012-01-26 17:14:50 -08:00
vt8500_serial.c tty: serial: vt8500: fix annotations for probe/remove 2012-03-12 10:21:55 -07:00
xilinx_uartps.c tty: Add module.h to drivers/tty users who just expect it there. 2011-10-31 19:31:27 -04:00
zs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
zs.h