diff options
author | Jernej Skrabec <jernej.skrabec@gmail.com> | 2023-09-09 16:44:32 +0200 |
---|---|---|
committer | Robert Foss <rfoss@kernel.org> | 2023-09-18 11:59:09 +0200 |
commit | 484281d5436cace1be87584120d74c24d0dba833 (patch) | |
tree | d71efb5087952a824467f89b1a4f17024ba6b8f1 /drivers | |
parent | 37454bcbb68601c326b58ac45f508067047d791f (diff) | |
download | linux-stable-484281d5436cace1be87584120d74c24d0dba833.tar.gz linux-stable-484281d5436cace1be87584120d74c24d0dba833.tar.bz2 linux-stable-484281d5436cace1be87584120d74c24d0dba833.zip |
drm/bridge: dw-hdmi-cec: Add arbitration lost event
Add handling of arbitration lost event.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Reviewed-by: Robert Foss <rfoss@kernel.org>
Signed-off-by: Robert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230909144432.34972-1-jernej.skrabec@gmail.com
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/bridge/synopsys/dw-hdmi-cec.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-cec.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-cec.c index be21c11de1f2..673661160e54 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-cec.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-cec.c @@ -145,6 +145,10 @@ static irqreturn_t dw_hdmi_cec_hardirq(int irq, void *data) cec->tx_status = CEC_TX_STATUS_NACK; cec->tx_done = true; ret = IRQ_WAKE_THREAD; + } else if (stat & CEC_STAT_ARBLOST) { + cec->tx_status = CEC_TX_STATUS_ARB_LOST; + cec->tx_done = true; + ret = IRQ_WAKE_THREAD; } if (stat & CEC_STAT_EOM) { @@ -209,7 +213,7 @@ static int dw_hdmi_cec_enable(struct cec_adapter *adap, bool enable) cec->ops->enable(cec->hdmi); irqs = CEC_STAT_ERROR_INIT | CEC_STAT_NACK | CEC_STAT_EOM | - CEC_STAT_DONE; + CEC_STAT_ARBLOST | CEC_STAT_DONE; dw_hdmi_write(cec, irqs, HDMI_CEC_POLARITY); dw_hdmi_write(cec, ~irqs, HDMI_CEC_MASK); dw_hdmi_write(cec, ~irqs, HDMI_IH_MUTE_CEC_STAT0); |