summaryrefslogtreecommitdiffstats
path: root/c/src/exec/rtems/headers/part.h
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/exec/rtems/headers/part.h')
-rw-r--r--c/src/exec/rtems/headers/part.h290
1 files changed, 0 insertions, 290 deletions
diff --git a/c/src/exec/rtems/headers/part.h b/c/src/exec/rtems/headers/part.h
deleted file mode 100644
index e639029dc8..0000000000
--- a/c/src/exec/rtems/headers/part.h
+++ /dev/null
@@ -1,290 +0,0 @@
-/* partition.h
- *
- * This include file contains all the constants and structures associated
- * with the Partition Manager. This manager provides facilities to
- * dynamically allocate memory in fixed-sized units which are returned
- * as buffers.
- *
- * Directives provided are:
- *
- * + create a partition
- * + get an ID of a partition
- * + delete a partition
- * + get a buffer from a partition
- * + return a buffer to a partition
- *
- * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
- * On-Line Applications Research Corporation (OAR).
- * All rights assigned to U.S. Government, 1994.
- *
- * This material may be reproduced by or for the U.S. Government pursuant
- * to the copyright license under the clause at DFARS 252.227-7013. This
- * notice must appear in all copies of this file and its derivatives.
- *
- * $Id$
- */
-
-#ifndef __RTEMS_PARTITION_h
-#define __RTEMS_PARTITION_h
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <rtems/address.h>
-#include <rtems/attr.h>
-#include <rtems/object.h>
-
-/*
- * The following defines the control block used to manage each partition.
- */
-
-typedef struct {
- Objects_Control Object;
- void *starting_address; /* physical address */
- unsigned32 length; /* in bytes */
- unsigned32 buffer_size; /* in bytes */
- rtems_attribute attribute_set; /* attributes */
- unsigned32 number_of_used_blocks; /* or allocated buffers */
- Chain_Control Memory; /* buffer chain */
-} Partition_Control;
-
-/*
- * The following defines the information control block used to
- * manage this class of objects.
- */
-
-EXTERN Objects_Information _Partition_Information;
-
-/*
- * _Partition_Manager_initialization
- *
- * DESCRIPTION:
- *
- * This routine performs the initialization necessary for this manager.
- */
-
-void _Partition_Manager_initialization(
- unsigned32 maximum_partitions
-);
-
-/*
- * rtems_partition_create
- *
- * DESCRIPTION:
- *
- * This routine implements the rtems_partition_create directive. The
- * partition will have the name name. The memory area managed by
- * the partition is of length bytes and starts at starting_address.
- * The memory area will be divided into as many buffers of
- * buffer_size bytes as possible. The attribute_set determines if
- * the partition is global or local. It returns the id of the
- * created partition in ID.
- */
-
-rtems_status_code rtems_partition_create(
- Objects_Name name,
- void *starting_address,
- unsigned32 length,
- unsigned32 buffer_size,
- rtems_attribute attribute_set,
- Objects_Id *id
-);
-
-/*
- * rtems_partition_ident
- *
- * DESCRIPTION:
- *
- * This routine implements the rtems_partition_ident directive.
- * This directive returns the partition ID associated with name.
- * If more than one partition is named name, then the partition
- * to which the ID belongs is arbitrary. node indicates the
- * extent of the search for the ID of the partition named name.
- * The search can be limited to a particular node or allowed to
- * encompass all nodes.
- */
-
-rtems_status_code rtems_partition_ident(
- Objects_Name name,
- unsigned32 node,
- Objects_Id *id
-);
-
-/*
- * rtems_partition_delete
- *
- * DESCRIPTION:
- *
- * This routine implements the rtems_partition_delete directive. The
- * partition indicated by ID is deleted.
- */
-
-rtems_status_code rtems_partition_delete(
- Objects_Id id
-);
-
-/*
- * rtems_partition_get_buffer
- *
- * DESCRIPTION:
- *
- * This routine implements the rtems_partition_get_buffer directive. It
- * attempts to allocate a buffer from the partition associated with ID.
- * If a buffer is allocated, its address is returned in buffer.
- */
-
-rtems_status_code rtems_partition_get_buffer(
- Objects_Id id,
- void **buffer
-);
-
-/*
- * rtems_partition_return_buffer
- *
- * DESCRIPTION:
- *
- * This routine implements the rtems_partition_return_buffer directive. It
- * frees the buffer to the partition associated with ID. The buffer must
- * have been previously allocated from the same partition.
- */
-
-rtems_status_code rtems_partition_return_buffer(
- Objects_Id id,
- void *buffer
-);
-
-/*
- * _Partition_Allocate_buffer
- *
- * DESCRIPTION:
- *
- * This function attempts to allocate a buffer from the_partition.
- * If successful, it returns the address of the allocated buffer.
- * Otherwise, it returns NULL.
- */
-
-STATIC INLINE void *_Partition_Allocate_buffer (
- Partition_Control *the_partition
-);
-
-/*
- * _Partition_Free_buffer
- *
- * DESCRIPTION:
- *
- * This routine frees the_buffer to the_partition.
- */
-
-STATIC INLINE void _Partition_Free_buffer (
- Partition_Control *the_partition,
- Chain_Node *the_buffer
-);
-
-/*
- * _Partition_Is_buffer_on_boundary
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if the_buffer is on a valid buffer
- * boundary for the_partition, and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Partition_Is_buffer_on_boundary (
- void *the_buffer,
- Partition_Control *the_partition
-);
-
-/*
- * _Partition_Is_buffer_valid
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if the_buffer is a valid buffer from
- * the_partition, otherwise FALSE is returned.
- */
-
-STATIC INLINE boolean _Partition_Is_buffer_valid (
- Chain_Node *the_buffer,
- Partition_Control *the_partition
-);
-
-/*
- * _Partition_Is_buffer_size_aligned
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if the use of the specified buffer_size
- * will result in the allocation of buffers whose first byte is
- * properly aligned, and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Partition_Is_buffer_size_aligned (
- unsigned32 buffer_size
-);
-
-/*
- * _Partition_Allocate
- *
- * DESCRIPTION:
- *
- * This function allocates a partition control block from
- * the inactive chain of free partition control blocks.
- */
-
-STATIC INLINE Partition_Control *_Partition_Allocate ( void );
-
-/*
- * _Partition_Free
- *
- * DESCRIPTION:
- *
- * This routine frees a partition control block to the
- * inactive chain of free partition control blocks.
- */
-
-STATIC INLINE void _Partition_Free (
- Partition_Control *the_partition
-);
-
-/*
- * _Partition_Get
- *
- * DESCRIPTION:
- *
- * This function maps partition IDs to partition control blocks.
- * If ID corresponds to a local partition, then it returns
- * the_partition control pointer which maps to ID and location
- * is set to OBJECTS_LOCAL. If the partition ID is global and
- * resides on a remote node, then location is set to OBJECTS_REMOTE,
- * and the_partition is undefined. Otherwise, location is set
- * to OBJECTS_ERROR and the_partition is undefined.
- */
-
-STATIC INLINE Partition_Control *_Partition_Get (
- Objects_Id id,
- Objects_Locations *location
-);
-
-/*
- * _Partition_Is_null
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if the_partition is NULL
- * and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Partition_Is_null (
- Partition_Control *the_partition
-);
-
-#include <rtems/part.inl>
-#include <rtems/partmp.h>
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-/* end of include file */