diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c
index 8a6ce0d..ca03428 100644
--- a/drivers/mtd/nand/denali.c
+++ b/drivers/mtd/nand/denali.c
@@ -1424,7 +1424,7 @@
 }
 
 /* programs the controller to either enable/disable DMA transfers */
-static void enable_dma(struct denali_nand_info *denali, bool en)
+static void denali_enable_dma(struct denali_nand_info *denali, bool en)
 {
 	uint32_t reg_val = 0x0;
 
@@ -1435,7 +1435,7 @@
 }
 
 /* setups the HW to perform the data DMA */
-static void setup_dma(struct denali_nand_info *denali, int op)
+static void denali_setup_dma(struct denali_nand_info *denali, int op)
 {
 	uint32_t mode = 0x0;
 	const int page_count = 1;
@@ -1494,9 +1494,9 @@
 	pci_dma_sync_single_for_device(pci_dev, addr, size, PCI_DMA_TODEVICE);
 
 	clear_interrupts(denali);
-	enable_dma(denali, true);	
+	denali_enable_dma(denali, true);	
 
-	setup_dma(denali, DENALI_WRITE);
+	denali_setup_dma(denali, DENALI_WRITE);
 
 	/* wait for operation to complete */
 	irq_status = wait_for_irq(denali, irq_mask);
@@ -1509,7 +1509,7 @@
 						   	     PASS;
 	}
 
-	enable_dma(denali, false);	
+	denali_enable_dma(denali, false);	
 	pci_dma_sync_single_for_cpu(pci_dev, addr, size, PCI_DMA_TODEVICE);
 }
 
@@ -1569,11 +1569,11 @@
 
 	setup_ecc_for_xfer(denali, true, false);
 
-	enable_dma(denali, true);
+	denali_enable_dma(denali, true);
 	pci_dma_sync_single_for_device(pci_dev, addr, size, PCI_DMA_FROMDEVICE);
 
 	clear_interrupts(denali);
-	setup_dma(denali, DENALI_READ);
+	denali_setup_dma(denali, DENALI_READ);
 
 	/* wait for operation to complete */
 	irq_status = wait_for_irq(denali, irq_mask);
@@ -1583,7 +1583,7 @@
 	memcpy(buf, denali->buf.buf, mtd->writesize);
 	
 	check_erased_page = handle_ecc(denali, buf, chip->oob_poi, irq_status);
-	enable_dma(denali, false);
+	denali_enable_dma(denali, false);
 
 	if (check_erased_page)
 	{
@@ -1618,19 +1618,19 @@
 	uint32_t irq_mask = INTR_STATUS0__DMA_CMD_COMP;
 						
 	setup_ecc_for_xfer(denali, false, true);
-	enable_dma(denali, true);
+	denali_enable_dma(denali, true);
 
 	pci_dma_sync_single_for_device(pci_dev, addr, size, PCI_DMA_FROMDEVICE);
 
 	clear_interrupts(denali);
-	setup_dma(denali, DENALI_READ);
+	denali_setup_dma(denali, DENALI_READ);
 
 	/* wait for operation to complete */
 	irq_status = wait_for_irq(denali, irq_mask);
 
 	pci_dma_sync_single_for_cpu(pci_dev, addr, size, PCI_DMA_FROMDEVICE);
 
-	enable_dma(denali, false);
+	denali_enable_dma(denali, false);
 
 	memcpy(buf, denali->buf.buf, mtd->writesize);
 	memcpy(chip->oob_poi, denali->buf.buf + mtd->writesize, mtd->oobsize);
