⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uit_type.h

📁 eCos/RedBoot for勤研ARM AnywhereII(4510) 含全部源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
        TWF_CLR    = 0x01,  /* clear specification */
};
    /* ref_flg */
        typedef struct t_rflg {
                VP        exinf;      /* extended information */
                BOOL_ID   wtsk;       /* indicates whether or not there is a
                                         waiting task */
                UINT      flgptn;     /* eventflag bit pattern */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RFLG;

/* --- for mailbox functions ----------------------- */

   /* cre_mbx */
        typedef struct t_cmbx {
                VP    exinf;    /* extended information */
                ATR   mbxatr;   /* mailbox attributes */
            /* Following is implementation-dependent function */
            /*  INT   bufcnt; NOT SUPPORTED ring buffer size IS FIXED */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_CMBX;

//    mbxatr:
enum {
        TA_TFIFO   = 0x00,  /* waiting tasks are handled by FIFO */
        TA_TPRI    = 0x01,  /* waiting tasks are handled by priority */
        TA_MFIFO   = 0x00,  /* messages are handled by FIFO */
        TA_MPRI    = 0x02,  /* messages are handled by priority */
};

    /* ref_mbx */
        typedef struct t_rmbx {
                VP        exinf;    /* extended information */
                BOOL_ID   wtsk;     /* indicates whether or not there is a
                                       waiting task */
                T_MSG*    pk_msg;   /* message to be sent next */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RMBX;

/* --- for messagebuffer functions ----------------------- */

#if 0 // NOT SUPPORTED
    /* cre_mbf */
        typedef struct t_cmbf {
                VP    exinf;    /* extended information */
                ATR   mbfatr;   /* messagebuffer attributes */
                INT   bufsz;    /* messagebuffer size */
                INT   maxmsz;   /* maximum size of messages */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_CMBF;

//    mbfatr:
//    mbfid:
enum {
        TMBF_OS  = (-4),   /* messagebuffer used for OS error log */
        TMBF_DB  = (-3),   /* messagebuffer used for debugging */
};
    /* ref_mbf */
        typedef struct t_rmbf {
                VP        exinf;     /* extended information */
                BOOL_ID   wtsk;      /* indicates whether or not there is a
                                        task waiting to receive a message */
                BOOL_ID   stsk;      /* indicates whether or not there is a
                                        task waiting to send a message */
                INT       msgsz;     /* size of message to be sent next */
                INT       frbufsz;   /* size of free buffer */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RMBF;

#endif
/* --- for port or rendezvous functions ----------------------- */

#if 0 // NOT SUPPORTED

    /* cre_por */
        typedef struct t_cpor {
                VP    exinf;     /* extended information */
                ATR   poratr;    /* port attributes */
                INT   maxcmsz;   /* maximum call message size */
                INT   maxrmsz;   /* maximum reply message size */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_CPOR;

//    poratr:
enum {
        TA_NULL  = 0,  /* specifies no particular attributes */
         /* TA_NULL should be used in place of zeroes to turn off all
            attribute features. */
};
    /* ref_por */
        typedef struct t_rpor {
                VP        exinf;   /* extended information */
                BOOL_ID   wtsk;    /* indicates whether or not there is a task
                                      waiting to call a rendezvous */
                BOOL_ID   atsk;    /* indicates whether or not there is a task
                                      waiting to accept a rendezvous */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RPOR;
#endif

/* --- for interrupt management functions ----------------------- */

#if 0 // NOT SUPPORTED
    /* def_int */
        typedef struct t_dint {
                ATR   intatr;   /* interrupt handler attributes */
                FP    inthdr;   /* interrupt handler address */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_DINT;
#endif

/* --- for memorypool management functions ----------------------- */

    /* cre_mpl */
        typedef struct t_cmpl {
                VP    exinf;    /* extended information */
                ATR   mplatr;   /* memorypool attributes */
                INT   mplsz;    /* memorypool size */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_CMPL;

//    mplatr:
//    mplid:
enum {
        TMPL_OS  = (-4)   /* memorypool used by OS */
};
    /* ref_mpl */
        typedef struct t_rmpl {
                VP        exinf;    /* extended information */
                BOOL_ID   wtsk;     /* indicates whether or not there are
                                       waiting tasks */
                INT       frsz;     /* total size of free memory */
                INT       maxsz;    /* size of largest contiguous memory */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RMPL;

    /* cre_mpf */
        typedef struct t_cmpf {
                VP    exinf;     /* extended information */
                ATR   mpfatr;    /* memorypool attributes */
                INT   mpfcnt;    /* block count for entire memorypool */
                INT   blfsz;     /* fixed-size memory block size */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_CMPF;

//    mpfatr:
    /* ref_mpf */
        typedef struct t_rmpf {
                VP        exinf;    /* extended information */
                BOOL_ID   wtsk;     /* indicates whether or not there are
                                       waiting tasks */
                INT       frbcnt;   /* free block count */
            /* additional information may be included depending on the
               implementation */
                INT       numbcnt;  /* total number of blocks */
                INT       bsize;    /* block size */

        } T_RMPF;

/* --- for time management functions ----------------------- */

#if 0 // native definition is at head of this file
    /* example for 32-bit CPUs */
        typedef struct t_systime {
                H    utime;   /* upper 16 bits */
                UW   ltime;   /* lower 32 bits */
        } SYSTIME, CYCTIME, ALMTIME;

    /* example for 16-bit CPUs */
        typedef struct t_systime {
                H    utime;   /* upper 16 bits */
                UH   mtime;   /* middle 16 bits */
                UH   ltime;   /* lower 16 bits */
        } SYSTIME, CYCTIME, ALMTIME;
#endif
         /* Member configuration depends on the bit width of the processor and
            on the implementation.  A total of 48 bits is recommended. */

    /* def_cyc */
        typedef struct t_dcyc {
                VP        exinf;    /* extended information */
                ATR       cycatr;   /* cyclic handler attributes */
                FP        cychdr;   /* cyclic handler address */
                UINT      cycact;   /* cyclic handler activation */
                CYCTIME   cyctim;   /* cyclic startup period */
        } T_DCYC;

//    cycact:
enum {
        TCY_OFF   = 0x00,  /* do not invoke cyclic handler */
        TCY_ON    = 0x01,  /* invoke cyclic handler */
        TCY_INT   = 0x02,  /* initialize cycle count */
        /* Following changed from TCY_INT to TCY_INI to match
           description in the body of the standard.  I assume TCY_INT
           is a hypercorrection/typo; keep both */
        TCY_INI   = 0x02,  /* initialize cycle count */
};
    /* ref_cyc */
        typedef struct t_rcyc {
                VP        exinf;    /* extended information */
                CYCTIME   lfttim;   /* time left before next handler startup */
                UINT      cycact;   /* cyclic handler activation */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RCYC;

    /* def_alm */
        typedef struct t_dalm {
                VP        exinf;    /* extended information */
                ATR       almatr;   /* alarm handler attributes */
                FP        almhdr;   /* alarm handler address */
                UINT      tmmode;   /* start time specification mode */
                ALMTIME   almtim;   /* handler startup time */
        } T_DALM;

//    tmmode:
enum {
        TTM_ABS   = 0x00,  /* specified as an absolute time */
        TTM_REL   = 0x01,  /* specified as a relative time */
};
    /* ref_alm */
        typedef struct t_ralm {
                VP        exinf;    /* extended information */
                ALMTIME   lfttim;   /* time left before next handler startup */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RALM;

/* --- for system management functions ----------------------- */

    /* get_ver */
        typedef struct t_ver {
                UH   maker;     /* vendor */
                UH   id;        /* format number */
                UH   spver;     /* specification version */
                UH   prver;     /* product version */
                UH   prno[4];   /* product control information */
                UH   cpu;       /* CPU information */
                UH   var;       /* variation descriptor */
        } T_VER;

    /* ref_sys */
        typedef struct t_rsys {
                INT   sysstat;   /* system state */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_RSYS;

//    sysstat:
enum {
        TSS_TSK   = 0,  /* normal state in which dispatching is enabled during
                          task portion execution */
        TSS_DDSP  = 1,   /* state after dis_dsp has been executed during task
                          portion execution (dispatch disabled) */
        TSS_LOC   = 3,   /* state after loc_cpu has been executed during task
                          portion execution (interrupt and dispatch disabled)
                          */
        TSS_INDP  = 4,   /* state during execution of task-independent portions
                          (interrupt and timer handlers) */
};
    /* ref_cfg */
        typedef struct t_rcfg {
            /* details concerning members are implementation dependent */
        } T_RCFG;

#if 0 // NOT SUPPORTED
    /* def_svc */
        typedef struct t_dsvc {
                ATR   svcatr;   /* extended SVC handler attributes */
                FP    svchdr;   /* extended SVC handler address */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_DSVC;

    /* def_exc */
        typedef struct t_dexc {
                ATR   excatr;   /* exception handler attributes */
                FP    exchdr;   /* exception handler address */
                        // ...
            /* additional information may be included depending on the
               implementation */
                        // ...
        } T_DEXC;
#endif

/* --- for network management functions ----------------------- */

#if 0 // NOT SUPPORTED
//    NODE srcnode, dstnode, node:
enum {
        TND_SELF  = 0,     /* specifies the local node */
        TND_OTHR  = (-1)   /* specifies default remote node */
};
#endif
/* ------------------------------------------------------ */



#endif // CYGPKG_UITRON

#endif // CYGONCE_COMPAT_UITRON_UIT_TYPE_H
// EOF uit_type.h

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -