RTEMS Logo

RTEMS 4.7.2 On-Line Library


Dual-Ported Memory Manager PORT_CREATE - Create a port

PREV UP NEXT Bookshelf RTEMS C User's Guide

15.4.1: PORT_CREATE - Create a port

CALLING SEQUENCE:

rtems_status_code rtems_port_create(
  rtems_name  name,
  void       *internal_start,
  void       *external_start,
  uint32_t    length,
  rtems_id   *id
);

DIRECTIVE STATUS CODES:

RTEMS_SUCCESSFUL - port created successfully
RTEMS_INVALID_NAME - invalid task name
RTEMS_INVALID_ADDRESS - address not on four byte boundary
RTEMS_INVALID_ADDRESS - id is NULL
RTEMS_TOO_MANY - too many DP memory areas created

DESCRIPTION:

This directive creates a port which resides on the local node for the specified DPMA. The assigned port id is returned in id. This port id is used as an argument to other dual-ported memory manager directives to convert addresses within this DPMA.

For control and maintenance of the port, RTEMS allocates and initializes an DPCB from the DPCB free pool. Thus memory from the dual-ported memory area is not used to store the DPCB.

NOTES:

The internal_address and external_address parameters must be on a four byte boundary.

This directive will not cause the calling task to be preempted.


PREV UP NEXT Bookshelf RTEMS C User's Guide

Copyright © 1988-2004 OAR Corporation