• J
    spi: fsl-espi: Fix an error that can cause fsl espi task blocked · 7a0a1759
    Jane Wan 提交于
    Incorrect condition is used in spin_event_timeout().  When the TX is
    done, the SPIE_NF bit in ESPI_SPIE register is set to 1 to indicate the
    Tx FIFO is not full.  If the bit is 0, it indicates the Tx FIFO is full.
    
    Due to this error, if the Tx FIFO is full at the beginning, but becomes
    not full after handling the Rx FIFO (the SPIE_NF bit is set), the
    spin_event_timeout() returns with timeout occurred.  It causes the
    interrupt handler not to send completion notification to the thread that
    called wait_for_complete() waiting for the notification.
    Signed-off-by: NJane Wan <Jane.Wan@gainspeed.com>
    Signed-off-by: NMark Brown <broonie@kernel.org>
    7a0a1759
spi-fsl-espi.c 20.6 KB