//-----片选配置--------------------------------------------------------- //功能:片选使能,并初始化寄存器cs对应的寄存器 //参数:tpSpi,被操作的spi控制结构的地址 // data_len,传送的数据长度 //返回:无 //---------------------------------------------------------------------- void __spi_cs_activate(volatile tagSpiReg * tpSpi,u32 data_len) { unsigned int com = 0; com &= ~(ESPI_COM_CS(0x3) | ESPI_COM_TRANLEN(0xFFFF)); com |= ESPI_COM_CS(spi_cs); com |= ESPI_COM_TRANLEN(data_len - 1); tpSpi->com = com; }
void spi_cs_activate(struct spi_slave *slave) { struct fsl_spi_slave *fsl = to_fsl_spi_slave(slave); ccsr_espi_t *espi = (void *)(CONFIG_SYS_MPC85xx_ESPI_ADDR); unsigned int com = 0; size_t data_len = fsl->data_len; com &= ~(ESPI_COM_CS(0x3) | ESPI_COM_TRANLEN(0xFFFF)); com |= ESPI_COM_CS(slave->cs); com |= ESPI_COM_TRANLEN(data_len - 1); out_be32(&espi->com, com); }