?? csl_mcasp.h
字號(hào):
| MCASP_FMKS(GBLCTL,RCLKRST,RESET) \
| MCASP_FMKS(GBLCTL,RHCLKRST,RESET) \
);
}
/*----------------------------------------------------------------------------*/
IDEF void MCASP_resetXmt(MCASP_Handle hMcasp) {
/* reset State Machine = clear serial buffer = reset frame sync generator
reset Clock */
MCASP_RSETH(hMcasp,GBLCTL, MCASP_RGETH(hMcasp,XGBLCTL) &\
MCASP_FMKS(GBLCTL,XSRCLR,CLEAR) \
| MCASP_FMKS(GBLCTL,XSMRST,RESET) \
| MCASP_FMKS(GBLCTL,XFRST,RESET) \
| MCASP_FMKS(GBLCTL,XCLKRST,RESET) \
| MCASP_FMKS(GBLCTL,XHCLKRST,RESET)
);
}
/*----------------------------------------------------------------------------*/
#if (_MCASP_CHANNEL_CNT == 16)
IDEF void MCASP_config(MCASP_Handle hMcasp, MCASP_Config *config) {
Uint32 gie;
volatile Uint32 *base = (volatile Uint32 *)(hMcasp->baseAddr);
register int x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19;
register int x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36;
gie = IRQ_globalDisable();
/* the compiler generates more efficient code if the loads */
/* and stores are grouped together rather than intermixed */
x0 = config->global->pfunc;
x1 = config->global->pdir;
x2 = config->global->amute;
x3 = config->global->dlbctl;
x4 = config->global->ditctl;
x5 = config->receive->rmask;
x6 = config->receive->rfmt;
x7 = config->receive->afsrctl;
x8 = config->receive->aclkrctl;
x9 = config->receive->ahclkrctl;
x10 = config->receive->rtdm;
x11 = config->receive->rintctl;
x12 = config->receive->rclkchk;
x13 = config->transmit->xmask;
x14 = config->transmit->xfmt;
x15 = config->transmit->afsxctl;
x16 = config->transmit->aclkxctl;
x17 = config->transmit->ahclkxctl;
x18 = config->transmit->xtdm;
x19 = config->transmit->xintctl;
x20 = config->transmit->xclkchk;
x21 = config->srctl->srctl0;
x22 = config->srctl->srctl1;
x23 = config->srctl->srctl2;
x24 = config->srctl->srctl3;
x25 = config->srctl->srctl4;
x26 = config->srctl->srctl5;
x27 = config->srctl->srctl6;
x28 = config->srctl->srctl7;
x29 = config->srctl->srctl8;
x30 = config->srctl->srctl9;
x31 = config->srctl->srctl10;
x32 = config->srctl->srctl11;
x33 = config->srctl->srctl12;
x34 = config->srctl->srctl13;
x35 = config->srctl->srctl14;
x36 = config->srctl->srctl15;
base[_MCASP_RMASK_OFFSET] = x5;
base[_MCASP_RFMT_OFFSET] = x6;
base[_MCASP_AFSRCTL_OFFSET] = x7;
base[_MCASP_ACLKRCTL_OFFSET]= x8;
base[_MCASP_AHCLKRCTL_OFFSET]= x9;
base[_MCASP_RTDM_OFFSET] = x10;
base[_MCASP_RINTCTL_OFFSET] = x11;
base[_MCASP_RCLKCHK_OFFSET] = x12;
base[_MCASP_XMASK_OFFSET] = x13;
base[_MCASP_XFMT_OFFSET] = x14;
base[_MCASP_AFSXCTL_OFFSET] = x15;
base[_MCASP_ACLKXCTL_OFFSET]= x16;
base[_MCASP_AHCLKXCTL_OFFSET]= x17;
base[_MCASP_XTDM_OFFSET] = x18;
base[_MCASP_XINTCTL_OFFSET] = x19;
base[_MCASP_XCLKCHK_OFFSET] = x20;
base[_MCASP_SRCTL0_OFFSET] = x21;
base[_MCASP_SRCTL1_OFFSET] = x22;
base[_MCASP_SRCTL2_OFFSET] = x23;
base[_MCASP_SRCTL3_OFFSET] = x24;
base[_MCASP_SRCTL4_OFFSET] = x25;
base[_MCASP_SRCTL5_OFFSET] = x26;
base[_MCASP_SRCTL6_OFFSET] = x27;
base[_MCASP_SRCTL7_OFFSET] = x28;
base[_MCASP_SRCTL8_OFFSET] = x29;
base[_MCASP_SRCTL9_OFFSET] = x30;
base[_MCASP_SRCTL10_OFFSET] = x31;
base[_MCASP_SRCTL11_OFFSET] = x32;
base[_MCASP_SRCTL12_OFFSET] = x33;
base[_MCASP_SRCTL13_OFFSET] = x34;
base[_MCASP_SRCTL14_OFFSET] = x35;
base[_MCASP_SRCTL15_OFFSET] = x36;
base[_MCASP_AMUTE_OFFSET] = x2;
base[_MCASP_DLBCTL_OFFSET] = x3;
base[_MCASP_DITCTL_OFFSET] = x4;
base[_MCASP_PFUNC_OFFSET] = x0;
base[_MCASP_PDIR_OFFSET] = x1;
IRQ_globalRestore(gie);
}
#else
IDEF void MCASP_config(MCASP_Handle hMcasp, MCASP_Config *config) {
Uint32 gie;
volatile Uint32 *base = (volatile Uint32 *)(hMcasp->baseAddr);
register int x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19;
register int x20,x21,x22,x23,x24,x25,x26,x27,x28;
gie = IRQ_globalDisable();
/* the compiler generates more efficient code if the loads */
/* and stores are grouped together rather than intermixed */
x0 = config->global->pfunc;
x1 = config->global->pdir;
x2 = config->global->amute;
x3 = config->global->dlbctl;
x4 = config->global->ditctl;
x5 = config->receive->rmask;
x6 = config->receive->rfmt;
x7 = config->receive->afsrctl;
x8 = config->receive->aclkrctl;
x9 = config->receive->ahclkrctl;
x10 = config->receive->rtdm;
x11 = config->receive->rintctl;
x12 = config->receive->rclkchk;
x13 = config->transmit->xmask;
x14 = config->transmit->xfmt;
x15 = config->transmit->afsxctl;
x16 = config->transmit->aclkxctl;
x17 = config->transmit->ahclkxctl;
x18 = config->transmit->xtdm;
x19 = config->transmit->xintctl;
x20 = config->transmit->xclkchk;
x21 = config->srctl->srctl0;
x22 = config->srctl->srctl1;
x23 = config->srctl->srctl2;
x24 = config->srctl->srctl3;
x25 = config->srctl->srctl4;
x26 = config->srctl->srctl5;
x27 = config->srctl->srctl6;
x28 = config->srctl->srctl7;
base[_MCASP_RMASK_OFFSET] = x5;
base[_MCASP_RFMT_OFFSET] = x6;
base[_MCASP_AFSRCTL_OFFSET] = x7;
base[_MCASP_ACLKRCTL_OFFSET]= x8;
base[_MCASP_AHCLKRCTL_OFFSET]= x9;
base[_MCASP_RTDM_OFFSET] = x10;
base[_MCASP_RINTCTL_OFFSET] = x11;
base[_MCASP_RCLKCHK_OFFSET] = x12;
base[_MCASP_XMASK_OFFSET] = x13;
base[_MCASP_XFMT_OFFSET] = x14;
base[_MCASP_AFSXCTL_OFFSET] = x15;
base[_MCASP_ACLKXCTL_OFFSET]= x16;
base[_MCASP_AHCLKXCTL_OFFSET]= x17;
base[_MCASP_XTDM_OFFSET] = x18;
base[_MCASP_XINTCTL_OFFSET] = x19;
base[_MCASP_XCLKCHK_OFFSET] = x20;
base[_MCASP_SRCTL0_OFFSET] = x21;
base[_MCASP_SRCTL1_OFFSET] = x22;
base[_MCASP_SRCTL2_OFFSET] = x23;
base[_MCASP_SRCTL3_OFFSET] = x24;
base[_MCASP_SRCTL4_OFFSET] = x25;
base[_MCASP_SRCTL5_OFFSET] = x26;
base[_MCASP_SRCTL6_OFFSET] = x27;
base[_MCASP_SRCTL7_OFFSET] = x28;
base[_MCASP_AMUTE_OFFSET] = x2;
base[_MCASP_DLBCTL_OFFSET] = x3;
base[_MCASP_DITCTL_OFFSET] = x4;
base[_MCASP_PFUNC_OFFSET] = x0;
base[_MCASP_PDIR_OFFSET] = x1;
IRQ_globalRestore(gie);
}
#endif /* _MCASP_CHANNEL_CNT == 16 */
/*----------------------------------------------------------------------------*/
IDEF void MCASP_configGbl(MCASP_Handle hMcasp, MCASP_ConfigGbl *config) {
Uint32 gie;
volatile Uint32 *base = (volatile Uint32 *)(hMcasp->baseAddr);
register int x0,x1,x2,x3,x4;
gie = IRQ_globalDisable();
/* the compiler generates more efficient code if the loads */
/* and stores are grouped together rather than intermixed */
x0 = config->pfunc;
x1 = config->pdir;
x2 = config->amute;
x3 = config->dlbctl;
x4 = config->ditctl;
base[_MCASP_PFUNC_OFFSET] = x0;
base[_MCASP_AMUTE_OFFSET] = x2;
base[_MCASP_DLBCTL_OFFSET] = x3;
base[_MCASP_DITCTL_OFFSET] = x4;
base[_MCASP_PDIR_OFFSET] = x1;
IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
IDEF void MCASP_configRcv(MCASP_Handle hMcasp, MCASP_ConfigRcv *config) {
Uint32 gie;
volatile Uint32 *base = (volatile Uint32 *)(hMcasp->baseAddr);
register int x5,x6,x7,x8,x9,x10,x11,x12;
gie = IRQ_globalDisable();
/* the compiler generates more efficient code if the loads */
/* and stores are grouped together rather than intermixed */
x5 = config->rmask;
x6 = config->rfmt;
x7 = config->afsrctl;
x8 = config->aclkrctl;
x9 = config->ahclkrctl;
x10 = config->rtdm;
x11 = config->rintctl;
x12 = config->rclkchk;
base[_MCASP_RMASK_OFFSET] = x5;
base[_MCASP_RFMT_OFFSET] = x6;
base[_MCASP_AFSRCTL_OFFSET] = x7;
base[_MCASP_ACLKRCTL_OFFSET]= x8;
base[_MCASP_AHCLKRCTL_OFFSET]= x9;
base[_MCASP_RTDM_OFFSET] = x10;
base[_MCASP_RINTCTL_OFFSET] = x11;
base[_MCASP_RCLKCHK_OFFSET] = x12;
IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
IDEF void MCASP_configXmt(MCASP_Handle hMcasp, MCASP_ConfigXmt *config) {
Uint32 gie;
volatile Uint32 *base = (volatile Uint32 *)(hMcasp->baseAddr);
register int x13,x14,x15,x16,x17,x18,x19,x20;
gie = IRQ_globalDisable();
/* the compiler generates more efficient code if the loads */
/* and stores are grouped together rather than intermixed */
x13 = config->xmask;
x14 = config->xfmt;
x15 = config->afsxctl;
x16 = config->aclkxctl;
x17 = config->ahclkxctl;
x18 = config->xtdm;
x19 = config->xintctl;
x20 = config->xclkchk;
base[_MCASP_XMASK_OFFSET] = x13;
base[_MCASP_XFMT_OFFSET] = x14;
base[_MCASP_AFSXCTL_OFFSET] = x15;
base[_MCASP_ACLKXCTL_OFFSET]= x16;
base[_MCASP_AHCLKXCTL_OFFSET]= x17;
base[_MCASP_XTDM_OFFSET] = x18;
base[_MCASP_XINTCTL_OFFSET] = x19;
base[_MCASP_XCLKCHK_OFFSET] = x20;
IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
#if (_MCASP_CHANNEL_CNT == 16)
IDEF void MCASP_configSrctl(MCASP_Handle hMcasp, MCASP_ConfigSrctl *config) {
Uint32 gie;
volatile Uint32 *base = (volatile Uint32 *)(hMcasp->baseAddr);
register int x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36;
gie = IRQ_globalDisable();
/* the compiler generates more efficient code if the loads */
/* and stores are grouped together rather than intermixed */
x21 = config->srctl0;
x22 = config->srctl1;
x23 = config->srctl2;
x24 = config->srctl3;
x25 = config->srctl4;
x26 = config->srctl5;
x27 = config->srctl6;
x28 = config->srctl7;
x29 = config->srctl8;
x30 = config->srctl9;
x31 = config->srctl10;
x32 = config->srctl11;
x33 = config->srctl12;
x34 = config->srctl13;
x35 = config->srctl14;
x36 = config->srctl15;
base[_MCASP_SRCTL0_OFFSET] = x21;
base[_MCASP_SRCTL1_OFFSET] = x22;
base[_MCASP_SRCTL2_OFFSET] = x23;
base[_MCASP_SRCTL3_OFFSET] = x24;
base[_MCASP_SRCTL4_OFFSET] = x25;
base[_MCASP_SRCTL5_OFFSET] = x26;
base[_MCASP_SRCTL6_OFFSET] = x27;
base[_MCASP_SRCTL7_OFFSET] = x28;
base[_MCASP_SRCTL8_OFFSET] = x29;
base[_MCASP_SRCTL9_OFFSET] = x30;
base[_MCASP_SRCTL10_OFFSET] = x31;
base[_MCASP_SRCTL11_OFFSET] = x32;
base[_MCASP_SRCTL12_OFFSET] = x33;
base[_MCASP_SRCTL13_OFFSET] = x34;
base[_MCASP_SRCTL14_OFFSET] = x35;
base[_MCASP_SRCTL15_OFFSET] = x36;
IRQ_globalRestore(gie);
}
#else
IDEF void MCASP_configSrctl(MCASP_Handle hMcasp, MCASP_ConfigSrctl *config) {
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -