Home | History | Annotate | Download | only in domx
      1 /*
      2  * OMX offloading remote processor driver
      3  */
      4 
      5 #ifndef RPMSG_OMX_DEFS_H
      6 #define RPMSG_OMX_DEFS_H
      7 
      8 #include <linux/rpmsg_omx.h>
      9 
     10 //AD - from SDO
     11 /*
     12  *  ======== OMX_Packet ========
     13  *
     14  *  OMX_Packet.desc: the package descriptor field. Note that the
     15  *  format is different for out-bound and in-bound messages.
     16  *
     17  *  out-bound message descriptor
     18  *
     19  *  Bits    Description
     20  *  --------------------------------------------------------------------
     21  *  [15:12] reserved
     22  *  [11:8]  omx message type
     23  *  [7:0]   omx client protocol version
     24  *
     25  *
     26  *  in-bound message descriptor
     27  *
     28  *  Bits    Description
     29  *  --------------------------------------------------------------------
     30  *  [15:12] reserved
     31  *  [11:8]  omx server status code
     32  *  [7:0]   omx server protocol version
     33  */
     34 /* message type values */
     35 #define OMX_DESC_MSG        0x1       // exec sync command
     36 #define OMX_DESC_SYM_ADD    0x3       // symbol add message
     37 #define OMX_DESC_SYM_IDX    0x4       // query symbox index
     38 #define OMX_DESC_CMD        0x5       // exec non-blocking command.
     39 #define OMX_DESC_TYPE_MASK  0x0F00    // field mask
     40 #define OMX_DESC_TYPE_SHIFT 8         // field shift width
     41 
     42 /* omx server status codes must be 0 - 15, it has to fit in a 4-bit field */
     43 #define OMXSERVER_STATUS_SUCCESS          ((uint16_t)0) // success
     44 #define OMXSERVER_STATUS_INVALID_FXN      ((uint16_t)1) // invalid fxn index
     45 #define OMXSERVER_STATUS_SYMBOL_NOT_FOUND ((uint16_t)2) // symbol not found
     46 #define OMXSERVER_STATUS_INVALID_MSG_TYPE ((uint16_t)3) // invalid msg type
     47 #define OMXSERVER_STATUS_MSG_FXN_ERR      ((uint16_t)4) // msg function error
     48 #define OMXSERVER_STATUS_ERROR            ((uint16_t)5) // general failure
     49 #define OMXSERVER_STATUS_UNPROCESSED      ((uint16_t)6) // unprocessed message
     50 
     51 #define OMX_POOLID_JOBID_DEFAULT (0x00008000)
     52 #define OMX_INVALIDFXNIDX ((uint32_t)(0xFFFFFFFF))
     53 
     54 #endif /* RPMSG_OMX_DEFS_H */
     55