summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/include/rtems/rtems/region.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/rtems/include/rtems/rtems/region.h')
-rw-r--r--cpukit/rtems/include/rtems/rtems/region.h51
1 files changed, 45 insertions, 6 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/region.h b/cpukit/rtems/include/rtems/rtems/region.h
index 74d66ea334..7f071bfcb5 100644
--- a/cpukit/rtems/include/rtems/rtems/region.h
+++ b/cpukit/rtems/include/rtems/rtems/region.h
@@ -66,14 +66,53 @@ extern "C" {
*/
typedef struct {
+ /**
+ * This field is the object management portion of a Region instance.
+ */
Objects_Control Object;
- Thread_queue_Control Wait_queue; /* waiting threads */
- void *starting_address; /* physical start addr */
- uint32_t length; /* physical length(bytes) */
- uint32_t page_size; /* in bytes */
- uint32_t maximum_segment_size; /* in bytes */
+
+ /**
+ * This is the set of threads blocked waiting on memory.
+ */
+ Thread_queue_Control Wait_queue;
+
+ /**
+ * This is the physical starting address of the Region area.
+ */
+ void *starting_address;
+
+ /**
+ * This is the physical length (in bytes) of the Region memory.
+ */
+ uint32_t length;
+
+ /**
+ * This is the physical page size (in bytes) of each allocated segment.
+ */
+ uint32_t page_size;
+
+ /**
+ * This is the maximum segment size (in bytes) that can ever be allocated
+ * from this Region. It is calculated at creation time.
+ */
+ uint32_t maximum_segment_size;
+
+ /**
+ * This is the Classic API attribute provided to the create directive.
+ * It is translated into behavioral attributes on the SuperCore Heap
+ * instance.
+ */
rtems_attribute attribute_set;
- uint32_t number_of_used_blocks; /* blocks allocated */
+
+ /**
+ * This is the number of blocks currently allocated from this Region.
+ */
+ uint32_t number_of_used_blocks;
+
+ /**
+ * This is the Heap instance which implements the core functionality
+ * of a Region instance.
+ */
Heap_Control Memory;
} Region_Control;