msm: ipc: Add HTC changes to msm_ipc_router_lookup_server_name
HTC uses msm_ipc_port_addr instead of msm_ipc_server_info.
Change-Id: Ide0d72f1988f920ea1371f749013d6cc433fd7d4
diff --git a/arch/arm/mach-msm/ipc_router.c b/arch/arm/mach-msm/ipc_router.c
index 2c91371..97d1f5d 100644
--- a/arch/arm/mach-msm/ipc_router.c
+++ b/arch/arm/mach-msm/ipc_router.c
@@ -2226,7 +2226,11 @@
}
int msm_ipc_router_lookup_server_name(struct msm_ipc_port_name *srv_name,
+#ifdef CONFIG_MACH_HTC
+ struct msm_ipc_port_addr *srv_info,
+#else
struct msm_ipc_server_info *srv_info,
+#endif
int num_entries_in_array,
uint32_t lookup_mask)
{
@@ -2247,7 +2251,11 @@
mutex_lock(&server_list_lock);
if (!lookup_mask)
lookup_mask = 0xFFFFFFFF;
+#ifdef CONFIG_MACH_HTC
+ for (key = 0; key < SRV_HASH_SIZE; key++)
+#else
key = (srv_name->service & (SRV_HASH_SIZE - 1));
+#endif
list_for_each_entry(server, &server_list[key], list) {
if ((server->name.service != srv_name->service) ||
((server->name.instance & lookup_mask) !=
@@ -2261,8 +2269,10 @@
server_port->server_addr.node_id;
srv_info[i].port_id =
server_port->server_addr.port_id;
+#ifndef CONFIG_MACH_HTC
srv_info[i].service = server->name.service;
srv_info[i].instance = server->name.instance;
+#endif
}
i++;
}