Hi,
We are trying to flash our binary in NAND for LCDK TMS320C6748 using the NAND Writer CCS project. We have done it previously with SFH application successfully.
With that purpose I managed to import the legacy CCSv3.3 NANDWriter_DSP project following the doc with instructions I found in this thread:
and solving some additional warnings by myself.
To set up for the LCDK TMS320C6748 I assume just the following settings need to be done:
- Set up the debugger configuration via a suitable .ccxml file
- Change NAND buswith to 16 bits in nandwriter.c, line 81
- Include a suitable GEL file to configure the PLLs, memory interfaces, etc, accordingly
Could you please confirm there are no additional settings I could be missing?
My real question is related to the last point, the GEL file. I have taken the sample GEL file "C6748_LCDK.gel" you provide within the StarterWare Tools. We have tested the DDR initialization routine with other tests we have performed, so we know it works. Nevertheless, I have some doubts regarding NAND initialization. The routine defined in the GEL file is the following (from line 547):
hotmenu EMIFA_NAND_PINMUX() {
PSC0_LPSC_enable(0, LPSC_EMIFA);
PINMUX7 = (PINMUX7 & ~0x00FF0FF0) | 0x00110110;
PINMUX8 = 0x11111111;
PINMUX9 = 0x11111111;
PINMUX12 = (PINMUX12 & ~0x0FF00000) | 0x01100000;
EMIFA_ACFG3 |= 0x1;
EMIFA_NANDFCR = (EMIFA_NANDFCR & ~0x30) | 0x12;
GEL_TextOut("\tEMIFA Pins Configured for NAND.\n","Output",1,1,1);
GEL_TextOut("\t---------------------------------------------\n","Output",1,1,1);
}
I have some doubts for:
PINMUX7: My guess would be instead 0x10110010, which means two differences:
- Configures also EMA_WAIT[0] pin (PINMUX7 bits 31-28), which appears to be connected to the NAND device regarding the pinout description in the LCDK schematics.
- Do not configure CS4 (PINMUX7 bits 11-8), which seems completely unnecessary.
EMIFA_ACFG3: It just sets the bit 0, whereas the common .cfg files I have seen in some threads define a value of 0x3FFFFFFD to establish loose timing constraints among other settings, including also setting bit 0 related to the 16-bit buswidth. Is there any reason for that? I would go for 0x3FFFFFFD, would that be correct?
Thanks in advance,
David