aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/mei/interrupt.c
diff options
context:
space:
mode:
authorTomas Winkler <tomas.winkler@intel.com>2012-11-11 10:38:04 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-15 18:34:19 -0500
commitaeba4a06f28fad11b1e61d150bd3cde3008b80c8 (patch)
treef30ec9285fb6ac3c6d3b52f9f3bf5ad81bec42c0 /drivers/misc/mei/interrupt.c
parentff8b2f4e424a489222d3c7d55fb2d04c9639ef98 (diff)
mei: use the same bus msg for connect and disconnect request
structs hbm_client_connect_request and hbm_client_disconnect_request have the same layout so we can drop the later Add kdoc for the request and response structure so it is clear they can be used for both purposes Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/mei/interrupt.c')
-rw-r--r--drivers/misc/mei/interrupt.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/misc/mei/interrupt.c b/drivers/misc/mei/interrupt.c
index 34e20cc54607..f8821015f3f6 100644
--- a/drivers/misc/mei/interrupt.c
+++ b/drivers/misc/mei/interrupt.c
@@ -174,10 +174,10 @@ static int _mei_irq_thread_close(struct mei_device *dev, s32 *slots,
174 struct mei_cl_cb *cmpl_list) 174 struct mei_cl_cb *cmpl_list)
175{ 175{
176 if ((*slots * sizeof(u32)) < (sizeof(struct mei_msg_hdr) + 176 if ((*slots * sizeof(u32)) < (sizeof(struct mei_msg_hdr) +
177 sizeof(struct hbm_client_disconnect_request))) 177 sizeof(struct hbm_client_connect_request)))
178 return -EBADMSG; 178 return -EBADMSG;
179 179
180 *slots -= mei_data2slots(sizeof(struct hbm_client_disconnect_request)); 180 *slots -= mei_data2slots(sizeof(struct hbm_client_connect_request));
181 181
182 if (mei_disconnect(dev, cl)) { 182 if (mei_disconnect(dev, cl)) {
183 cl->status = 0; 183 cl->status = 0;
@@ -414,10 +414,10 @@ static void mei_client_flow_control_response(struct mei_device *dev,
414 * returns !=0, same; 0,not. 414 * returns !=0, same; 0,not.
415 */ 415 */
416static int same_disconn_addr(struct mei_cl *cl, 416static int same_disconn_addr(struct mei_cl *cl,
417 struct hbm_client_disconnect_request *disconn) 417 struct hbm_client_connect_request *req)
418{ 418{
419 return (cl->host_client_id == disconn->host_addr && 419 return (cl->host_client_id == req->host_addr &&
420 cl->me_client_id == disconn->me_addr); 420 cl->me_client_id == req->me_addr);
421} 421}
422 422
423/** 423/**
@@ -427,7 +427,7 @@ static int same_disconn_addr(struct mei_cl *cl,
427 * @disconnect_req: disconnect request bus message. 427 * @disconnect_req: disconnect request bus message.
428 */ 428 */
429static void mei_client_disconnect_request(struct mei_device *dev, 429static void mei_client_disconnect_request(struct mei_device *dev,
430 struct hbm_client_disconnect_request *disconnect_req) 430 struct hbm_client_connect_request *disconnect_req)
431{ 431{
432 struct mei_msg_hdr *mei_hdr; 432 struct mei_msg_hdr *mei_hdr;
433 struct hbm_client_connect_response *disconnect_res; 433 struct hbm_client_connect_response *disconnect_res;
@@ -484,10 +484,10 @@ static void mei_irq_thread_read_bus_message(struct mei_device *dev,
484 struct hbm_host_version_response *version_res; 484 struct hbm_host_version_response *version_res;
485 struct hbm_client_connect_response *connect_res; 485 struct hbm_client_connect_response *connect_res;
486 struct hbm_client_connect_response *disconnect_res; 486 struct hbm_client_connect_response *disconnect_res;
487 struct hbm_client_connect_request *disconnect_req;
487 struct hbm_flow_control *flow_control; 488 struct hbm_flow_control *flow_control;
488 struct hbm_props_response *props_res; 489 struct hbm_props_response *props_res;
489 struct hbm_host_enum_response *enum_res; 490 struct hbm_host_enum_response *enum_res;
490 struct hbm_client_disconnect_request *disconnect_req;
491 struct hbm_host_stop_request *host_stop_req; 491 struct hbm_host_stop_request *host_stop_req;
492 int res; 492 int res;
493 493
@@ -653,8 +653,7 @@ static void mei_irq_thread_read_bus_message(struct mei_device *dev,
653 653
654 case CLIENT_DISCONNECT_REQ_CMD: 654 case CLIENT_DISCONNECT_REQ_CMD:
655 /* search for client */ 655 /* search for client */
656 disconnect_req = 656 disconnect_req = (struct hbm_client_connect_request *)mei_msg;
657 (struct hbm_client_disconnect_request *) mei_msg;
658 mei_client_disconnect_request(dev, disconnect_req); 657 mei_client_disconnect_request(dev, disconnect_req);
659 break; 658 break;
660 659