Hi,
My customer is using TMS320DM642 and TMS320DM643.
Problem they are reporting to us is that they are receiving the wrong value while reading back the chip Config percfg-register with the command CHIP_getConfig(..)
here is the code snippet:
void preinitSystem(void)
{
CHIP_Config chipConfig;
CHIP_Config chipConfigTest;
chipConfig.percfg = CHIP_PERCFG_RMK (
CHIP_PERCFG_VP2EN_ENABLE,
CHIP_PERCFG_VP1EN_ENABLE,
CHIP_PERCFG_VP0EN_DISABLE,
CHIP_PERCFG_I2C0EN_ENABLE,
CHIP_PERCFG_MCBSP1EN_DISABLE,
CHIP_PERCFG_MCBSP0EN_ENABLE,
CHIP_PERCFG_MCASP0EN_ENABLE );
// Enable and disable multiplexed DSP peripherals
CHIP_config ( &chipConfig );
// Wait at least 128 CPU cycles
PF_STD_OS::sleepBlockedTicks(200); // Delay function with (6 x X) CPU cycles
CHIP_getConfig( &chipConfigTest );
if( chipConfigTest.percfg != chipConfig.percfg )
SYS_abort("Error in config PERCFG register");
/* Open the GPIO handle */
hGpio = GPIO_open(GPIO_DEV0, GPIO_OPEN_RESET);
}
For CHIP_getConfig they are receiving 0x69 instead of 0x6b and the program will be aborted. This problem occurs only sporadically.
- CSL 2.31.00.16. does not support DM643. But I think that using the DM642 chip definition in the CSL for DM643 should be ok. DM643 should
be able to function using the CHIP_DM642 designation but customer has to make sure not to use and to enable peripherals that are not made
available on DM643.
(The DM643 does not have any PCI port and has only two video ports and only one McBSP. The core, memory and rest of peripherals
should be the same as the DM642). The DM642 and DM643 are not considered pin for pin compatible.
- There is a following statement in the data sheet of DM643:
For proper DM643 device operation, the McBSP1EN bit must be set to zero. At the device reset this bit is one.
Looking at the customer code above McBSP1EN bit is disabled.
However, enabling for the McBSP0 didn't work sometimes - why? The problem is when they ignore that the McBSP didn't work, afterwards in the program the initialization of the SPI also didn't work!!! Therefore my question what can be the reason for it? Could it be related to CSL or did we overseen something?
Thanks and Best regards,
Majda