rtems_status_code rtems_port_create( rtems_name name, void *internal_start, void *external_start, uint32_t length, rtems_id *id );
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
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.
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.
Copyright © 1988-2007OAR Corporation