OpenAMP Library  latest
Loading...
Searching...
No Matches
rpmsg_internal.h File Reference
#include <stdint.h>
#include <openamp/rpmsg.h>

Go to the source code of this file.

Data Structures

struct  rpmsg_hdr
 Common header for all RPMsg messages. More...
struct  rpmsg_ns_msg
 Dynamic name service announcement message. More...

Macros

#define RPMSG_ASSERT(_exp, _msg)
#define RPMSG_BUF_HELD_SHIFT   16
#define RPMSG_BUF_HELD_MASK   (0xFFFFU << RPMSG_BUF_HELD_SHIFT)
#define RPMSG_LOCATE_HDR(p)
#define RPMSG_LOCATE_DATA(p)

Enumerations

enum  rpmsg_ns_flags { RPMSG_NS_CREATE = 0 , RPMSG_NS_DESTROY = 1 }
 dynamic name service announcement flags More...

Functions

int rpmsg_send_ns_message (struct rpmsg_endpoint *ept, unsigned long flags)
struct rpmsg_endpointrpmsg_get_endpoint (struct rpmsg_device *rvdev, const char *name, uint32_t addr, uint32_t dest_addr)
void rpmsg_register_endpoint (struct rpmsg_device *rdev, struct rpmsg_endpoint *ept, const char *name, uint32_t src, uint32_t dest, rpmsg_ept_cb cb, rpmsg_ns_unbind_cb ns_unbind_cb, void *priv)
static struct rpmsg_endpointrpmsg_get_ept_from_addr (struct rpmsg_device *rdev, uint32_t addr)
void rpmsg_ept_incref (struct rpmsg_endpoint *ept)
void rpmsg_ept_decref (struct rpmsg_endpoint *ept)

Variables

METAL_PACKED_BEGIN struct rpmsg_hdr METAL_PACKED_END

Macro Definition Documentation

◆ RPMSG_ASSERT

#define RPMSG_ASSERT ( _exp,
_msg )
Value:
metal_assert(_exp)

◆ RPMSG_BUF_HELD_MASK

#define RPMSG_BUF_HELD_MASK   (0xFFFFU << RPMSG_BUF_HELD_SHIFT)

◆ RPMSG_BUF_HELD_SHIFT

#define RPMSG_BUF_HELD_SHIFT   16

◆ RPMSG_LOCATE_DATA

#define RPMSG_LOCATE_DATA ( p)
Value:
((unsigned char *)(p) + sizeof(struct rpmsg_hdr))
Common header for all RPMsg messages.
Definition rpmsg_internal.h:55

◆ RPMSG_LOCATE_HDR

#define RPMSG_LOCATE_HDR ( p)
Value:
((struct rpmsg_hdr *)((unsigned char *)(p) - sizeof(struct rpmsg_hdr)))

Enumeration Type Documentation

◆ rpmsg_ns_flags

dynamic name service announcement flags

Enumerator
RPMSG_NS_CREATE 

A new remote service was just created.

RPMSG_NS_DESTROY 

A known remote service was just destroyed.

Function Documentation

◆ rpmsg_ept_decref()

void rpmsg_ept_decref ( struct rpmsg_endpoint * ept)

◆ rpmsg_ept_incref()

void rpmsg_ept_incref ( struct rpmsg_endpoint * ept)

◆ rpmsg_get_endpoint()

struct rpmsg_endpoint * rpmsg_get_endpoint ( struct rpmsg_device * rvdev,
const char * name,
uint32_t addr,
uint32_t dest_addr )

◆ rpmsg_get_ept_from_addr()

struct rpmsg_endpoint * rpmsg_get_ept_from_addr ( struct rpmsg_device * rdev,
uint32_t addr )
inlinestatic

◆ rpmsg_register_endpoint()

void rpmsg_register_endpoint ( struct rpmsg_device * rdev,
struct rpmsg_endpoint * ept,
const char * name,
uint32_t src,
uint32_t dest,
rpmsg_ept_cb cb,
rpmsg_ns_unbind_cb ns_unbind_cb,
void * priv )

◆ rpmsg_send_ns_message()

int rpmsg_send_ns_message ( struct rpmsg_endpoint * ept,
unsigned long flags )

Variable Documentation

◆ METAL_PACKED_END

METAL_PACKED_BEGIN struct rpmsg_ns_msg METAL_PACKED_END