Cellular Systems Software Tools (CSST)
CSST is suite of tools used for board diagnostics, image download, image formatting and signing. It is a common tool to perform various functions on the TI development platform.
The CSST architecture consists of two main components, a host application and a target application. The host application runs on a Windows XP platform is available in two flavours: a command line interface (CLI) and a graphical user interface (GUI). CSST target component executes on one target-platform (e.g. OMAP34XX SDP, I-sample, etc.). The communication between the host and the target binary is through a CSST message protocol.
The CSST host consists of three main blocks:
- The front-end application, which is a part of GUI/CLI.
- The communication layer (Dispatcher and Link layer).
- Modules: the variable entities that are loaded or unloaded dynamically by the framework.
The front-end application, dispatcher and the link-layer constitute the CSST host framework. These entities are responsible for various initializations. The CSST framework is initialized by the front-end application, this is in turn responsible for initializing the CSST environment. Framework is the engine that drives the CSST environment and the CSST UI controls. Each module consists of its own UI component and DLL. Any number of modules could be plugged in to the CSST framework.
The CSST Target architecture consists of framework and service blocks. The framework is platform independent on the other hand the service blocks vary across different platforms. The test suite and the platform specific code (e.g. Drivers, Interrupt routines, etc.) constitute the service blocks.
CSST Message Protocol
The CSST host and target communicate through a CSST message protocol. These messages are transmitted over UART or USB. There are three different kinds of CSST messges.
- Request Messages: It is initiated by the host and carry a specific command for the target to perform. E.g. Test Request, Driver Download Request.
- Response Messages: Upon receiving the request message, the target performs a specific task and sends the response to the Host. E.g. Test Result, Target information response.
- Indication Messages: The target can use these messages to send unsolicited messages to the host. E.g. Progress indication.
The diagnostics solution allows the user to perform tests on a platform.
- Download/Flashing: Download supports devices like NAND, NOR, RAM and MDOC. Based on the device selected at run time, the image will be flashed into that device.
- Upload: The data can be uploaded from a given address
- Erase: The data can be erased from the address specified.
- Verify: Data at the given address can be compared to a selected image file.
- Driver download: A device dependent flash driver is downloaded to target prior to memory operations.