nand/denali: move all hardware initialization work to denali_hw_init

All hardware initialization will be done in denali_hw_init before
irq handler registered
Change mtd name from "DENALI NAND" to be "denali-nand" since whitespace in
name can cause problems if we use cmdlinepart

Signed-off-by: Chuanxiao Dong <chuanxiao.dong@intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

authored by Chuanxiao Dong and committed by David Woodhouse 5eab6aaa 7d8a26fd

+6 -5
+6 -5
drivers/mtd/nand/denali.c
··· 1364 1364 * */ 1365 1365 denali->bbtskipbytes = ioread32(denali->flash_reg + 1366 1366 SPARE_AREA_SKIP_BYTES); 1367 - denali_irq_init(denali); 1368 1367 denali_nand_reset(denali); 1369 1368 iowrite32(0x0F, denali->flash_reg + RB_PIN_ENABLED); 1370 1369 iowrite32(CHIP_EN_DONT_CARE__FLAG, 1371 1370 denali->flash_reg + CHIP_ENABLE_DONT_CARE); 1372 1371 1373 - iowrite32(0x0, denali->flash_reg + SPARE_AREA_SKIP_BYTES); 1374 1372 iowrite32(0xffff, denali->flash_reg + SPARE_AREA_MARKER); 1375 1373 1376 1374 /* Should set value for these registers when init */ 1377 1375 iowrite32(0, denali->flash_reg + TWO_ROW_ADDR_CYCLES); 1378 1376 iowrite32(1, denali->flash_reg + ECC_ENABLE); 1377 + denali_nand_timing_set(denali); 1378 + denali_irq_init(denali); 1379 1379 } 1380 1380 1381 1381 /* Althogh controller spec said SLC ECC is forceb to be 4bit, ··· 1501 1501 1502 1502 pci_set_master(dev); 1503 1503 denali->dev = dev; 1504 + denali->mtd.dev.parent = &dev->dev; 1504 1505 1505 1506 ret = pci_request_regions(dev, DENALI_NAND_NAME); 1506 1507 if (ret) { ··· 1526 1525 denali_hw_init(denali); 1527 1526 denali_drv_init(denali); 1528 1527 1528 + /* denali_isr register is done after all the hardware 1529 + * initilization is finished*/ 1529 1530 if (request_irq(dev->irq, denali_isr, IRQF_SHARED, 1530 1531 DENALI_NAND_NAME, denali)) { 1531 1532 printk(KERN_ERR "Spectra: Unable to allocate IRQ\n"); ··· 1540 1537 1541 1538 pci_set_drvdata(dev, denali); 1542 1539 1543 - denali_nand_timing_set(denali); 1544 - 1545 - denali->mtd.name = "Denali NAND"; 1540 + denali->mtd.name = "denali-nand"; 1546 1541 denali->mtd.owner = THIS_MODULE; 1547 1542 denali->mtd.priv = &denali->nand; 1548 1543