Public Functions This routine is called by any CSC in order to report an error or event that should be included in DPU housekeeping.  If this routine is called from interrupt context a static global variable, ccmISRError, is set so that the error can be enqueued later (see ccmCtrlTask()).  This is done since the error/event queue is semaphore-protected and a semaphore cannot be taken in an ISR.  The error queue semaphore has priority inversion set to reduce conflicts between multiple callers should a priority inversion situation arise. This routine also replaces frequently occuring errors with a special repeat error code.  The repeat error code is a special error code that follows a normally reported error code to indicate that the normally reported error code previously reported has occurred more than once in the last high rate reporting period