Commit 77c461fa authored by Viresh Kumar's avatar Viresh Kumar Committed by Greg Kroah-Hartman

greybus: connection: compare hd_cport_id for matching SVC protocol

SVC protocol isn't per interface, but per entire entire endo. And so svc
cport id must be matched against hd_cport_id, not per-interface cport
id.

Fixes: 82edfac17e5f ("connection: don't send connected/disconnected events for SVC connection")
Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent 52fa3832
......@@ -344,7 +344,8 @@ int gb_connection_init(struct gb_connection *connection)
* Inform Interface about Active CPorts. We don't need to do this
* operation for control cport.
*/
if (cport_id != GB_CONTROL_CPORT_ID && cport_id != GB_SVC_CPORT_ID) {
if (cport_id != GB_CONTROL_CPORT_ID &&
connection->hd_cport_id != GB_SVC_CPORT_ID) {
struct gb_control *control = connection->bundle->intf->control;
ret = gb_control_connected_operation(control, cport_id);
......@@ -396,7 +397,8 @@ void gb_connection_exit(struct gb_connection *connection)
* Inform Interface about In-active CPorts. We don't need to do this
* operation for control cport.
*/
if (cport_id != GB_CONTROL_CPORT_ID && cport_id != GB_SVC_CPORT_ID) {
if (cport_id != GB_CONTROL_CPORT_ID &&
connection->hd_cport_id != GB_SVC_CPORT_ID) {
struct gb_control *control = connection->bundle->intf->control;
int ret;
......
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