home *** CD-ROM | disk | FTP | other *** search
- /*
- * cqnmf.h
- *
- * iRMX-NET/iNA 960/iTP4 NMF CQ_COMM_RB Request Block Interface
- */
-
- #ifndef _cqnmf_
- #define _cqnmf_
-
- #ifndef _cqcommon_
- #include "cqcommon.h"
- #endif
-
- /*
- * NMF Opcodes
- */
-
- #define ATTACH_AGENT (unsigned char)0x0B
- #define DETACH_AGENT (unsigned char)0x0C
- #define READ_OBJECT (unsigned char)0x00
- #define READ_AND_CLEAR_OBJECT (unsigned char)0x01
- #define SET_OBJECT (unsigned char)0x02
- #define AWAIT_EVENT (unsigned char)0x0A
- #define READ_MEMORY (unsigned char)0x03
- #define SET_MEMORY (unsigned char)0x04
- #define DUMP (unsigned char)0x05
- #define ECHO (unsigned char)0x06
- #define SUPPLY_BUFFER (unsigned char)0x08
- #define TAKEBACK_BUFFER (unsigned char)0x09
-
- /*
- * NMF Response Codes
- */
-
- #define E_OK_OBJ_CMND (unsigned short)0x00
- #ifndef OK_RESPONSE
- #define OK_RESPONSE (unsigned short)0x01
- #endif
- #define E_NO_RESPONSE (unsigned short)0x02
- #define E_OK_BUFF_RELEASE (unsigned short)0x03
- #define E_PACKET_LENGTH (unsigned short)0x04
- #define E_OK_COMMAND (unsigned short)0x05
- #define E_OBJ_ID (unsigned short)0x06
- #define E_DATA_MATCH (unsigned short)0x06
- #define E_ACCESS_OP (unsigned short)0x07
- #define E_CONNECTION (unsigned short)0x08
- #define E_PARAMETER (unsigned short)0x09
- #define NOT_CONFIGURED (unsigned short)0x0A
- #define E_NMF_OPCODE (unsigned short)0x0C
- #define E_INSUFF_RESP_BUF (unsigned short)0x0E
- #define E_LAYER_NOT_SUPP (unsigned short)0x10
- #define E_OBJ_MIX (unsigned short)0x12
- #define E_REFERENCE (unsigned short)0x14
- #define E_MAX_CONN (unsigned short)0x16
- #define E_PROTOCOL_ERR (unsigned short)0x18
- #define E_INTERNAL_BUF (unsigned short)0x1A
- #define E_MODIFIER (unsigned short)0x80
- #define E_RESP_BUF (unsigned short)0x81
- #define E_TABLE_INDEX (unsigned short)0x82
- #define E_EMPTY_TBL_ENTRY (unsigned short)0x83
- #define E_NO_FREE_TBL_ENTRY (unsigned short)0x84
- #define E_NO_NMF (unsigned short)0xFFFE
-
- /*
- * NMF RB Structures.
- */
-
- #pragma noalign (attach_agent_rb)
- typedef struct attach_agent_rb {
- RB_COMMON header;
- unsigned short reference;
- unsigned int address_buf_ptr;
- }ATTACH_AGENT_RB;
-
- #pragma noalign (detach_agent_rb)
- typedef struct detach_agent_rb {
- RB_COMMON header;
- unsigned short reference;
- }DETACH_AGENT_RB;
-
- #pragma noalign (nmf_object_rb)
- typedef struct nmf_object_rb {
- RB_COMMON header;
- unsigned short reference;
- unsigned short filled_length;
- unsigned int resp_buf_ptr;
- unsigned short resp_buf_length;
- unsigned int cmd_buf_ptr;
- unsigned short cmd_buf_length;
- }NMF_OBJECT_RB;
-
- #pragma noalign (obj_cmd_info)
- typedef struct obj_cmd_info {
- unsigned short object;
- unsigned short modifier;
- unsigned short length;
- unsigned char value[1];
- }OBJ_CMD_INFO;
-
- #pragma noalign (command_buffer)
- typedef struct command_buffer {
- unsigned char num_obj;
- OBJ_CMD_INFO obj_info[1];
- }COMMAND_BUFFER;
-
- #pragma noalign (obj_resp_info)
- typedef struct obj_resp_info {
- unsigned short object;
- unsigned short modifier;
- unsigned char status;
- unsigned short length;
- unsigned char value[1];
- }OBJ_RESP_INFO;
-
- #pragma noalign (response_buffer)
- typedef struct response_buffer {
- unsigned char num_obj;
- OBJ_RESP_INFO obj_info[1];
- }RESPONSE_BUFFER;
-
- #pragma noalign (await_event_rb)
- typedef struct await_event_rb {
- RB_COMMON header;
- unsigned short reference;
- unsigned short filled_length;
- unsigned int event_buf_ptr;
- unsigned short event_buf_length;
- }AWAIT_EVENT_RB;
-
- #pragma noalign (await_event_buffer)
- typedef struct await_event_buffer {
- unsigned short event_len;
- unsigned short event_id;
- unsigned char event_time[17];
- unsigned short reset_time_ctr;
- }AWAIT_EVENT_BUFFER;
-
- #pragma noalign (read_or_set_mem_rb)
- typedef struct read_or_set_mem_rb {
- RB_COMMON header;
- unsigned short reference;
- unsigned short filled_length;
- unsigned int buffer_ptr;
- unsigned short num_bytes;
- unsigned int start_addr;
- }READ_OR_SET_MEM_RB;
-
- #pragma noalign (subnet_address)
- typedef struct subnet_address {
- unsigned char host_id[6];
- unsigned char nmf_lsap;
- }SUBNET_ADDRESS;
-
- #pragma noalign (dump_rb)
- typedef struct dump_rb {
- RB_COMMON header;
- unsigned int subnet_addr_ptr;
- unsigned short filled_length;
- unsigned int buffer_ptr;
- unsigned short buffer_length;
- unsigned int start_address;
- }DUMP_RB;
-
- #pragma noalign (echo_rb)
- typedef struct echo_rb {
- RB_COMMON header;
- unsigned int subnet_addr_ptr;
- unsigned short transmit_data_cnt;
- unsigned short received_data_cnt;
- }ECHO_RB;
-
- #pragma noalign (boot_module)
- typedef struct boot_module {
- unsigned char command;
- unsigned int load_addr;
- unsigned short length;
- unsigned int execution_addr;
- unsigned char memory_image[1];
- }BOOT_MODULE;
-
- #pragma noalign (supply_buf_rb)
- typedef struct supply_buf_rb {
- RB_COMMON header;
- unsigned short filled_length;
- unsigned int buffer_ptr;
- unsigned short buffer_length;
- }SUPPLY_BUF_RB;
-
- #pragma noalign (takeback_buf_rb)
- typedef struct takeback_buf_rb {
- RB_COMMON header;
- }TAKEBACK_BUF_RB;
-
- #pragma noalign (supply_buff)
- typedef struct supply_buff {
- unsigned char destination_addr[6];
- unsigned char source_addr[6];
- unsigned short length;
- unsigned char dest_lsap_sel;
- unsigned char src_lsap_sel;
- unsigned char control;
- unsigned char data[1];
- }SUPPLY_BUFF;
-
- #endif
-
-