Commit 7af26f88 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] cec: update log_addr[] before finishing configuration

The loop that sets the unused logical addresses to INVALID should be
done before 'configured' is set to true. This ensures that cec_log_addrs
is consistent before it will be used.
Signed-off-by: default avatarHans Verkuil <hansverk@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent a24f56d4
...@@ -1250,6 +1250,8 @@ static int cec_config_thread_func(void *arg) ...@@ -1250,6 +1250,8 @@ static int cec_config_thread_func(void *arg)
for (i = 1; i < las->num_log_addrs; i++) for (i = 1; i < las->num_log_addrs; i++)
las->log_addr[i] = CEC_LOG_ADDR_INVALID; las->log_addr[i] = CEC_LOG_ADDR_INVALID;
} }
for (i = las->num_log_addrs; i < CEC_MAX_LOG_ADDRS; i++)
las->log_addr[i] = CEC_LOG_ADDR_INVALID;
adap->is_configured = true; adap->is_configured = true;
adap->is_configuring = false; adap->is_configuring = false;
cec_post_state_event(adap); cec_post_state_event(adap);
...@@ -1268,8 +1270,6 @@ static int cec_config_thread_func(void *arg) ...@@ -1268,8 +1270,6 @@ static int cec_config_thread_func(void *arg)
cec_report_features(adap, i); cec_report_features(adap, i);
cec_report_phys_addr(adap, i); cec_report_phys_addr(adap, i);
} }
for (i = las->num_log_addrs; i < CEC_MAX_LOG_ADDRS; i++)
las->log_addr[i] = CEC_LOG_ADDR_INVALID;
mutex_lock(&adap->lock); mutex_lock(&adap->lock);
adap->kthread_config = NULL; adap->kthread_config = NULL;
mutex_unlock(&adap->lock); mutex_unlock(&adap->lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment