RTEMS CPU Kit with SuperCore  4.11.3
part.h
Go to the documentation of this file.
1 
23 /* COPYRIGHT (c) 1989-2008.
24  * On-Line Applications Research Corporation (OAR).
25  *
26  * The license and distribution terms for this file may be
27  * found in the file LICENSE in this distribution or at
28  * http://www.rtems.org/license/LICENSE.
29  */
30 
31 #ifndef _RTEMS_RTEMS_PART_H
32 #define _RTEMS_RTEMS_PART_H
33 
34 #include <rtems/rtems/attr.h>
35 #include <rtems/rtems/status.h>
36 #include <rtems/rtems/types.h>
37 
38 #ifdef __cplusplus
39 extern "C" {
40 #endif
41 
55 typedef struct {
61  intptr_t length;
63  uint32_t buffer_size;
71 
86  rtems_name name,
87  void *starting_address,
88  uint32_t length,
89  uint32_t buffer_size,
90  rtems_attribute attribute_set,
91  rtems_id *id
92 );
93 
113  rtems_name name,
114  uint32_t node,
115  rtems_id *id
116 );
117 
132  rtems_id id
133 );
134 
148  rtems_id id,
149  void **buffer
150 );
151 
160  rtems_id id,
161  void *buffer
162 );
163 
166 #ifdef __cplusplus
167 }
168 #endif
169 
170 #endif
171 /* end of include file */
uint32_t rtems_attribute
This defines the type used to contain Classic API attributes.
Definition: attr.h:44
Objects_Control Object
This field is the object management portion of a Partition instance.
Definition: part.h:57
The following defines the Object Control Block used to manage each object local to this node...
Definition: object.h:232
Objects_Id rtems_id
Used to manage and manipulate RTEMS object identifiers.
Definition: types.h:80
This is used to manage a chain.
Definition: chain.h:83
void * starting_address
This field is the physical starting address of the Partition.
Definition: part.h:59
rtems_status_code rtems_partition_create(rtems_name name, void *starting_address, uint32_t length, uint32_t buffer_size, rtems_attribute attribute_set, rtems_id *id)
RTEMS Partition Create.
Definition: partcreate.c:47
intptr_t length
This field is the size of the Partition in bytes.
Definition: part.h:61
rtems_status_code
Classic API Status.
Definition: status.h:46
uint32_t rtems_name
Classic API object name type.
Definition: types.h:74
rtems_attribute attribute_set
This field is the attribute set provided at create time.
Definition: part.h:65
The following defines the control block used to manage each partition.
Definition: part.h:55
rtems_status_code rtems_partition_ident(rtems_name name, uint32_t node, rtems_id *id)
RTEMS Partition Ident.
Definition: partident.c:28
Chain_Control Memory
This field is the chain used to manage unallocated buffers.
Definition: part.h:69
uint32_t buffer_size
This field is the size of each buffer in bytes.
Definition: part.h:63
uint32_t number_of_used_blocks
This field is the of allocated buffers.
Definition: part.h:67
rtems_status_code rtems_partition_return_buffer(rtems_id id, void *buffer)
rtems_partition_return_buffer
Definition: partreturnbuffer.c:40
rtems_status_code rtems_partition_delete(rtems_id id)
RTEMS Delete Partition.
Definition: partdelete.c:25
rtems_status_code rtems_partition_get_buffer(rtems_id id, void **buffer)
RTEMS Get Partition Buffer.
Definition: partgetbuffer.c:28