The CEC specification requires that the Vendor ID (if any) is reported after
a logical address was claimed.

This was never done, so add support for this.

Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
---
diff --git a/drivers/media/cec/cec-adap.c b/drivers/media/cec/cec-adap.c
index 31d1f4ab915e..ee4decc1cd64 100644
--- a/drivers/media/cec/cec-adap.c
+++ b/drivers/media/cec/cec-adap.c
@@ -1405,6 +1405,13 @@ static int cec_config_thread_func(void *arg)
                        las->log_addr[i],
                        cec_phys_addr_exp(adap->phys_addr));
                cec_transmit_msg_fh(adap, &msg, NULL, false);
+
+               /* Report Vendor ID */
+               if (adap->log_addrs.vendor_id != CEC_VENDOR_ID_NONE) {
+                       cec_msg_device_vendor_id(&msg,
+                                                adap->log_addrs.vendor_id);
+                       cec_transmit_msg_fh(adap, &msg, NULL, false);
+               }
        }
        adap->kthread_config = NULL;
        complete(&adap->config_completion);

Reply via email to