linux-mips
[Top] [All Lists]

Re: Alchemy DMA and GFP_DMA

To: Ralf Baechle <ralf@linux-mips.org>
Subject: Re: Alchemy DMA and GFP_DMA
From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Date: Sun, 26 Aug 2007 18:48:41 +0400
Cc: linux-mips@linux-mips.org
In-reply-to: <20070816110501.GA5701@linux-mips.org>
Organization: MontaVista Software Inc.
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20070816110501.GA5701@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mozilla/5.0 (X11; U; Linux i686; rv:1.7.2) Gecko/20040803
Hello.

Ralf Baechle wrote:

arch/mips/au1000/common/dbdma.c uses GFP_DMA in two places and I think
both instances are uncessary.  Could some alchmist confirm that both are
unnecessary?

Thanks,

  Ralf

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

diff --git a/arch/mips/au1000/common/dbdma.c b/arch/mips/au1000/common/dbdma.c
index 626de44..708b83b 100644
--- a/arch/mips/au1000/common/dbdma.c
+++ b/arch/mips/au1000/common/dbdma.c
@@ -397,7 +397,7 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
         * slabs of memory.
         */
        desc_base = (u32)kmalloc(entries * sizeof(au1x_ddma_desc_t),
-                       GFP_KERNEL|GFP_DMA);
+                       GFP_KERNEL);
        if (desc_base == 0)
                return 0;
@@ -408,7 +408,7 @@ au1xxx_dbdma_ring_alloc(u32 chanid, int entries)
                kfree((const void *)desc_base);
                i = entries * sizeof(au1x_ddma_desc_t);
                i += (sizeof(au1x_ddma_desc_t) - 1);
-               if ((desc_base = (u32)kmalloc(i, GFP_KERNEL|GFP_DMA)) == 0)
+               if ((desc_base = (u32)kmalloc(i, GFP_KERNEL)) == 0)
                        return 0;
desc_base = ALIGN_ADDR(desc_base, sizeof(au1x_ddma_desc_t));

Those are probably still necessary because the DBDMA descriptors itselves (not the data they address) must have 32-bit addresses.

WBR, Sergei

<Prev in Thread] Current Thread [Next in Thread>