index d31f287b52c6292d0baf3d493d399c0a615846be..6570996c3760c2b4a5e95dbd3df686ec7ecb594b 100644 (file)
/*
- * Copyright (c) 2013, Texas Instruments Incorporated
+ * Copyright (c) 2013-2015 Texas Instruments Incorporated - http://www.ti.com
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
#include <ti/ipc/MultiProc.h>
#include <_MultiProc.h>
+/* for Logging */
+#include <_lad.h>
+
/* =============================================================================
* APIs
/* Get the default configuration for the MultiProc module. */
Void MultiProc_getConfig (MultiProc_Config * cfg)
{
+ int i;
+ UInt16 baseId;
assert (cfg != NULL);
/* Setup MultiProc config */
memcpy (cfg, &_MultiProc_cfg, sizeof(MultiProc_Config));
+
+ LOG1("MultiProc_getConfig() - %d procs\n", _MultiProc_cfg.numProcessors);
+ LOG1("# processors in cluster: %d\n", _MultiProc_cfg.numProcsInCluster);
+ baseId = _MultiProc_cfg.baseIdOfCluster;
+ LOG1("cluster baseId: %d\n", baseId);
+
+ for (i = 0; i < _MultiProc_cfg.numProcsInCluster; i++) {
+ LOG2("\tProcId %d - \"%s\"\n", baseId + i, _MultiProc_cfg.nameList[i]);
+ }
+}
+
+/*
+ * ======== MultiProc_rprocSetId ========
+ */
+Int MultiProc_rprocSetId(UInt16 procId, UInt rprocId)
+{
+ UInt16 clusterId;
+
+
+ if (procId >= _MultiProc_cfg.numProcessors) {
+ return (MultiProc_E_INVALIDARG);
+ }
+
+ if (rprocId >= _MultiProc_cfg.numProcsInCluster) {
+ return (MultiProc_E_INVALIDARG);
+ }
+
+ clusterId = procId - _MultiProc_cfg.baseIdOfCluster;
+ _MultiProc_cfg.rprocList[clusterId] = rprocId;
+ LOG2("MultiProc_rprocSetId: clusterId=%d, rprocId=%d\n", clusterId,
+ _MultiProc_cfg.rprocList[clusterId]);
+
+ return (MultiProc_S_SUCCESS);
}