@ -639,7 +639,7 @@ static void qspi_op_write(struct fsl_qspi_priv *priv, u8 *txbuf, u32 len)
qspi_write32 ( priv - > flags , & regs - > mcr , mcr_reg ) ;
qspi_write32 ( priv - > flags , & regs - > mcr , mcr_reg ) ;
}
}
static void qspi_op_rdsr ( struct fsl_qspi_priv * priv , u32 * rxbuf )
static void qspi_op_rdsr ( struct fsl_qspi_priv * priv , void * rxbuf , u32 len )
{
{
struct fsl_qspi_regs * regs = priv - > regs ;
struct fsl_qspi_regs * regs = priv - > regs ;
u32 mcr_reg , reg , data ;
u32 mcr_reg , reg , data ;
@ -662,7 +662,7 @@ static void qspi_op_rdsr(struct fsl_qspi_priv *priv, u32 *rxbuf)
if ( reg & QSPI_RBSR_RDBFL_MASK ) {
if ( reg & QSPI_RBSR_RDBFL_MASK ) {
data = qspi_read32 ( priv - > flags , & regs - > rbdr [ 0 ] ) ;
data = qspi_read32 ( priv - > flags , & regs - > rbdr [ 0 ] ) ;
data = qspi_endian_xchg ( data ) ;
data = qspi_endian_xchg ( data ) ;
memcpy ( rxbuf , & data , 4 ) ;
memcpy ( rxbuf , & data , len ) ;
qspi_write32 ( priv - > flags , & regs - > mcr ,
qspi_write32 ( priv - > flags , & regs - > mcr ,
qspi_read32 ( priv - > flags , & regs - > mcr ) |
qspi_read32 ( priv - > flags , & regs - > mcr ) |
QSPI_MCR_CLR_RXF_MASK ) ;
QSPI_MCR_CLR_RXF_MASK ) ;
@ -751,7 +751,7 @@ int qspi_xfer(struct fsl_qspi_priv *priv, unsigned int bitlen,
} else if ( priv - > cur_seqid = = QSPI_CMD_RDID )
} else if ( priv - > cur_seqid = = QSPI_CMD_RDID )
qspi_op_rdid ( priv , din , bytes ) ;
qspi_op_rdid ( priv , din , bytes ) ;
else if ( priv - > cur_seqid = = QSPI_CMD_RDSR )
else if ( priv - > cur_seqid = = QSPI_CMD_RDSR )
qspi_op_rdsr ( priv , din ) ;
qspi_op_rdsr ( priv , din , bytes ) ;
# ifdef CONFIG_SPI_FLASH_BAR
# ifdef CONFIG_SPI_FLASH_BAR
else if ( ( priv - > cur_seqid = = QSPI_CMD_BRRD ) | |
else if ( ( priv - > cur_seqid = = QSPI_CMD_BRRD ) | |
( priv - > cur_seqid = = QSPI_CMD_RDEAR ) ) {
( priv - > cur_seqid = = QSPI_CMD_RDEAR ) ) {