summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/score/mpci.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2019-12-12 07:11:54 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-12-13 08:35:17 +0100
commit24f8915a079446918abd4f7b2a8e1b8385930f85 (patch)
tree708417a866d436b619e471d834b56f95109eb66f /cpukit/include/rtems/score/mpci.h
parentrtems: Add and use rtems_object_get_local_node() (diff)
downloadrtems-24f8915a079446918abd4f7b2a8e1b8385930f85.tar.bz2
config: Add _MPCI_Configuration
Replace the user MPCI configuration table with a system provided _MPCI_Configuration. Update #3735.
Diffstat (limited to 'cpukit/include/rtems/score/mpci.h')
-rw-r--r--cpukit/include/rtems/score/mpci.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/cpukit/include/rtems/score/mpci.h b/cpukit/include/rtems/score/mpci.h
index e5bcdbaced..a72b1f0d5b 100644
--- a/cpukit/include/rtems/score/mpci.h
+++ b/cpukit/include/rtems/score/mpci.h
@@ -128,6 +128,40 @@ typedef struct {
MPCI_receive_entry receive_packet;
} MPCI_Control;
+/*
+ * The following records define the Multiprocessor Configuration
+ * Table. This table defines the multiprocessor system
+ * characteristics which must be known by RTEMS in a multiprocessor
+ * system.
+ */
+typedef struct {
+ /** This is the local node number. */
+ uint32_t node;
+ /** This is the maximum number of nodes in system. */
+ uint32_t maximum_nodes;
+ /** This is the maximum number of global objects. */
+ uint32_t maximum_global_objects;
+ /** This is the maximum number of proxies. */
+ uint32_t maximum_proxies;
+
+ /**
+ * The MPCI Receive server is assumed to have a stack of at least
+ * minimum stack size. This field specifies the amount of extra
+ * stack this task will be given in bytes.
+ */
+ uint32_t extra_mpci_receive_server_stack;
+
+ /** This is a pointer to User/BSP provided MPCI Table. */
+ MPCI_Control *User_mpci_table;
+} MPCI_Configuration;
+
+/**
+ * @brief The MPCI configuration.
+ *
+ * Provided by the application via <rtems/confdefs.h>.
+ */
+extern const MPCI_Configuration _MPCI_Configuration;
+
/** @} */
#ifdef __cplusplus