A SERVICE OF

logo

40 Chapter 2
Configuration management
ccmd
ccmd
ccmd builds a configuration information database on the teststation. The
board names and revisions, the device names and revisions, and the
start-up information generated by POST are all read and stored in
memory for use by other diagnostic tools.
ccmd is typically run automatically from /etc/inittab on the teststation.
Entering init on the teststation starts ccmd. init monitors ccmd and
respawns it if it ever stops. Once started, ccmd becomes a daemon and
allocates a block of teststation memory used for a database for all nodes,
boards, and devices.
ccmd broadcasts a command to all JTAG ports to report in. Each node
responds with its IP address, error status, complex identification, and
the node identification number. ccmd continues until no new responses
are detected.
Once ccmd has all valid node numbers and IP addresses, it scans each
ring of each node looking for JTAG device IDs. The JTAG IDs contain
device and revision information stored in the teststation database. The
JTAG ID is cross checked in the /spp/data/part_ids file to retrieve a
complete device description of the part. The file for the part is also in
/spp/data.
After ccmd loads all parts and their descriptions into the database, it
reads all board information. Board and device information is cross
checked in the file /spp/data/DB_RING_FILE. Complex and node
configuration files for est_config is written to the /spp/data/ directory.
Once all information is in place, ccmd monitors the node for changes in
node configuration or error status. After a 10 second pause, ccmd once
again broadcasts to determine which nodes are powered up or have an
error condition. If a node response is not received after six broadcasts,
then the node is removed from the database of existing nodes.
If no nodes are responding, ccmd clears all node data and continues
broadcasting, waiting for a node to respond. If a node powers up, the
nodes database is rebuilt.