123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- #ifndef __APRV2_VM_H__
- #define __APRV2_VM_H__
- #define APRV2_VM_MAX_DNS_SIZE (31)
-
- #define APRV2_VM_PKT_SERVICE_ID_MASK (0x00FF)
-
- struct aprv2_vm_packet_t {
- uint32_t header;
- uint16_t src_addr;
- uint16_t src_port;
- uint16_t dst_addr;
- uint16_t dst_port;
- uint32_t token;
- uint32_t opcode;
- };
- #define APRV2_VM_CMDID_REGISTER (0x00000001)
- struct aprv2_vm_cmd_register_t {
- uint32_t name_size;
-
- char name[APRV2_VM_MAX_DNS_SIZE];
-
- uint16_t addr;
-
- };
- struct aprv2_vm_cmd_register_rsp_t {
- int32_t status;
-
- uint32_t handle;
-
- uint16_t addr;
-
- };
- #define APRV2_VM_CMDID_DEREGISTER (0x00000002)
- struct aprv2_vm_cmd_deregister_t {
- uint32_t handle;
-
- };
- struct aprv2_vm_cmd_deregister_rsp_t {
- int32_t status;
-
- };
- #define APRV2_VM_CMDID_ASYNC_SEND (0x00000003)
- struct aprv2_vm_cmd_async_send_t {
- uint32_t handle;
-
- struct aprv2_vm_packet_t pkt_header;
-
-
- };
- struct aprv2_vm_cmd_async_send_rsp_t {
- int32_t status;
-
- };
- #define APRV2_VM_EVT_RX_PKT_AVAILABLE (0x00000004)
- struct aprv2_vm_evt_rx_pkt_available_t {
- struct aprv2_vm_packet_t pkt_header;
-
-
- };
- struct aprv2_vm_ack_rx_pkt_available_t {
- int32_t status;
- };
- #endif
|