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.

TMS320C5515/05/14/04 Chip Support Library (CSL) Suggestions and Comments

To the CSL developers,

I ran into some problems initializing the CSL for multiple components and noticed that the initialization for some components conflict with others, depending on the chip configuration you plan to use.  As a result, I have a few comments and suggestions for the CSL, especially on how the EBSR should be set within the various "<PER>_init" functions.

MMC/SD Card:  There are two MMC/SD card peripherals on the 5515.  The CSL currently assumes users wants both activated.  Having this configurable would be useful, allowing someone to only activate MMC0, for instance.

 UART:  Currently, the CSL assumes that the user will be operating the UART in PPMODE 5.  Since there are multiple PPMODEs that support UART (1, 4, and 5 are options), I would suggest that the UART_init function be changed to allow the user to specify which mode they are using.

SPI: The CSL also assumes users will be operating the SPI from PPMODE 5, even though there are multiple valid PPMODEs (1, 3, 5, and 6).  I have the same suggestion as above.

In General:  Other peripherals may have similar changes that could be made.  My suggestion is to keep the current initialization methods as default, but allow users a little more flexibility in configuring things without having to set aside or modify the CSL.

A tip that I think would be useful to include in the CSL documentation is that the "<PER>_init" functions often reset peripheral groups, which causes any configurations to be lost.  Correct me if I'm wrong, but it looks like a safe practice would be to perform all of the calls the various "<PER>_init" functions before calling any of the "<PER>_config" or "<PER>_setup" functions.

One more note I have is that I like the "UART_setup" function provided for the UART library.  It is a nice replacement for the "UART_config" function for those who want  a more straightforward way to configure their peripheral.  I think a similar function for other peripherals, such as the PLL, would be well received.

Are these changes that are being considered?

P.S. Thank you for your work on the CSL.