This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
StarterWare_1_10_04_01\drivers\emifa.c line 1008:
As the default value of EMIFA CEnCFG timing field all are 1, so the or operation can't update conf into the register. Please update in future revision.
void EMIFAWaitTimingConfig(unsigned int baseAddr,unsigned int CSNum,
unsigned int conf)
{
switch(CSNum)
{
case EMIFA_CHIP_SELECT_2:
HWREG(baseAddr + EMIFA_CE2CFG) |= conf;
break;
case EMIFA_CHIP_SELECT_3:
HWREG(baseAddr + EMIFA_CE3CFG) |= conf;
break;
case EMIFA_CHIP_SELECT_4:
HWREG(baseAddr + EMIFA_CE4CFG) |= conf;
break;
case EMIFA_CHIP_SELECT_5:
HWREG(baseAddr + EMIFA_CE5CFG) |= conf;
break;
default:
break;
}
}
Tony,
Thanks for bringing this to our attention. I acknowledge that given that all fields of EMIF_CE2CFG are at 1 the function could lead to an incorrect setting but my recommendation would be to write all zeros to the CEnCFG register and then apply the setting as given in the starterware code. Users should not assume that the fields will be all 1`s in the code especially if ROM code/GEL file or previously run code could have changed that setting during the boot up or initialization process.
Unfortunately Starterware source code for C6748 is no longer under active development so there will be no new updates to this software. We will document this on the existing Starterware wikis so that customer who want to use the software are aware of the software anomaly.
Regards,
Rahul