Hello,
I have found some problems in the TI Mcal for TDA2xx/TDA2Ex with Spi Driver (at least MCSPI).
I have the following Packages:
mcal_01_09_00_30
1.
For the MOSI/MISO Signals the two Ports spi[x]_d0 und spi[x]_d1 are available. According to the HW Datasheet, you can use both for MOSI/MISO as you choose.
In the function Spi_mcspiConfigJob() (Spi_Mcspi.c L206) spi[x]_d1 will be set to Rx anyway. But on my Customer HW spi[x]_d1 should be the Tx Signal.
For me it looks like there is no way to configure it, so this usecase is not supported in the Driver. I had to patch Spi_Mcspi.c to make it work.
2.
In BSWMD/Copy_Spi.arxml the UPPER-MULTIPLICITY for SpiChannel is „1“. Means you can only set up one Spi Channel in Cfg5.
So I changed UPPER-MULTIPLICITY to 15.
After that the Problem occurs, that the MAX value for SpiDriver\SpiMaxChannel is also “1”. This should also be changed.
3.
SpiConf_SpiChannel_xxx and SpiConf_SpiSequence_xxx are not generated from the Spi Module.
4.
If Spi_DataType is defined as uint8 (as needed from Slave) the the DET SPI_E_PARAM_POINTER (Spi.c L702 Spi_SetupEB()) comes up.
In the comment above it’s written „[…]required by AUTOSAR SPI spec“.
I don’t know, if this is right, but it wouldn’t be compatible with Spi Slaves, were datatype != 32 bit is needed. (As in my case with CanTrcv TJA1145)
Thanks
Kishore