Subject: [PATCH -next] serial: fix pch_uart kconfig & build

From: Randy Dunlap <[email-masked]>
Date: Thu, 2 Dec 2010 09:19:48 -0800

From: Randy Dunlap <[email-masked]>

The dma_request_channel/dma_release_channel interfaces are not
built when DMADEVICES is not enabled, so make the driver depend on
DMADEVICES.  Also, the help text says that the driver enables & uses
PCH_DMA, which is not enabled, so select that.

ERROR: "__dma_request_channel" [drivers/serial/pch_uart.ko] undefined!
ERROR: "dma_release_channel" [drivers/serial/pch_uart.ko] undefined!

Signed-off-by: Randy Dunlap <[email-masked]>
Cc: Tomoya MORINAGA <[email-masked]>
Reported-by: Zimny Lech <[email-masked]>
---
 drivers/serial/Kconfig |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

This driver seems to have some other issues:

drivers/serial/pch_uart.c: In function 'dma_handle_rx':
drivers/serial/pch_uart.c:685: warning: cast from pointer to integer of different size
drivers/serial/pch_uart.c: In function 'dma_handle_tx':
drivers/serial/pch_uart.c:778: warning: cast from pointer to integer of different size
drivers/serial/pch_uart.c: In function 'pch_uart_init_port':
drivers/serial/pch_uart.c:1289: warning: cast to pointer from integer of different size
drivers/serial/pch_uart.c: In function 'pch_uart_exit_port':
drivers/serial/pch_uart.c:1328: warning: cast from pointer to integer of different size

--- linux-next-20101202.orig/drivers/serial/Kconfig
+++ linux-next-20101202/drivers/serial/Kconfig
@@ -1650,8 +1650,9 @@ config SERIAL_IFX6X60
 
 config SERIAL_PCH_UART
 	tristate "Intel EG20T PCH UART"
+	depends on PCI && DMADEVICES
 	select SERIAL_CORE
-	depends on PCI
+	select PCH_DMA
 	help
 	  This driver is for PCH(Platform controller Hub) UART of Intel EG20T
 	  which is an IOH(Input/Output Hub) for x86 embedded processor.