• Hans Verkuil's avatar
    media: cec: correctly pass on reply results · f9d0ecbf
    Hans Verkuil authored
    The results of non-blocking transmits were not correctly communicated
    to userspace.
    
    Specifically:
    
    1) if a non-blocking transmit was canceled, then rx_status wasn't set to 0
       as it should.
    2) if the non-blocking transmit succeeded, but the corresponding reply
       never arrived (aborted or timed out), then tx_status wasn't set to 0
       as it should, and rx_status was hardcoded to ABORTED instead of the
       actual reason, such as TIMEOUT. In addition, adap->ops->received() was
       never called, so drivers that want to do message processing themselves
       would not be informed of the failed reply.
    Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
    f9d0ecbf
cec-adap.c 65.6 KB