From b3654ce17ef4ffaf1e96b91cc060ac4019911f5a Mon Sep 17 00:00:00 2001 From: Feng Tang Date: Tue, 22 Feb 2011 15:28:12 +0800 Subject: [PATCH] --- yaml --- r: 235548 b: refs/heads/master c: f023eab379821365bf265a0240f30c00cecaef7c h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/tty/serial/mfd.c | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 551062d2f834..afc5ca023ca4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 085a4f758f0cf95e1865b63892bf4304a149f0ca +refs/heads/master: f023eab379821365bf265a0240f30c00cecaef7c diff --git a/trunk/drivers/tty/serial/mfd.c b/trunk/drivers/tty/serial/mfd.c index 53ff6af16273..c111f36f5d21 100644 --- a/trunk/drivers/tty/serial/mfd.c +++ b/trunk/drivers/tty/serial/mfd.c @@ -47,6 +47,11 @@ #define mfd_readl(obj, offset) readl(obj->reg + offset) #define mfd_writel(obj, offset, val) writel(val, obj->reg + offset) +static int hsu_dma_enable; +module_param(hsu_dma_enable, int, 0); +MODULE_PARM_DESC(hsu_dma_enable, "It is a bitmap to set working mode, if \ +bit[x] is 1, then port[x] will work in DMA mode, otherwise in PIO mode."); + struct hsu_dma_buffer { u8 *buf; dma_addr_t dma_addr; @@ -1367,6 +1372,12 @@ static void hsu_global_init(void) serial_hsu_ports[i] = uport; uport->index = i; + + if (hsu_dma_enable & (1<use_dma = 1; + else + uport->use_dma = 0; + uport++; }