diff options
Diffstat (limited to 'drivers/clk/msm/virtclk-front.c')
| -rw-r--r-- | drivers/clk/msm/virtclk-front.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/drivers/clk/msm/virtclk-front.c b/drivers/clk/msm/virtclk-front.c index 4018c4922574..ad89dda6514f 100644 --- a/drivers/clk/msm/virtclk-front.c +++ b/drivers/clk/msm/virtclk-front.c @@ -62,7 +62,7 @@ static int virtclk_front_get_id(struct clk *clk) if (v->id) return ret; - msg.header.cmd = CLK_MSG_GETID; + msg.header.cmd = CLK_MSG_GETID | v->flag; msg.header.len = sizeof(msg); strlcpy(msg.name, clk->dbg_name, sizeof(msg.name)); @@ -77,7 +77,7 @@ static int virtclk_front_get_id(struct clk *clk) } ret = habmm_socket_recv(handle, &rsp, &rsp_size, - UINT_MAX, 0); + UINT_MAX, HABMM_SOCKET_RECV_FLAGS_UNINTERRUPTIBLE); if (ret) { pr_err("%s: habmm socket receive failed (%d)\n", clk->dbg_name, ret); @@ -119,7 +119,7 @@ static int virtclk_front_prepare(struct clk *clk) return ret; msg.clk_id = v->id; - msg.cmd = CLK_MSG_ENABLE; + msg.cmd = CLK_MSG_ENABLE | v->flag; msg.len = sizeof(struct clk_msg_header); rt_mutex_lock(&virtclk_front_ctx.lock); @@ -132,7 +132,8 @@ static int virtclk_front_prepare(struct clk *clk) goto err_out; } - ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, 0); + ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, + HABMM_SOCKET_RECV_FLAGS_UNINTERRUPTIBLE); if (ret) { pr_err("%s: habmm socket receive failed (%d)\n", clk->dbg_name, ret); @@ -172,7 +173,7 @@ static void virtclk_front_unprepare(struct clk *clk) return; msg.clk_id = v->id; - msg.cmd = CLK_MSG_DISABLE; + msg.cmd = CLK_MSG_DISABLE | v->flag; msg.len = sizeof(struct clk_msg_header); rt_mutex_lock(&virtclk_front_ctx.lock); @@ -185,7 +186,8 @@ static void virtclk_front_unprepare(struct clk *clk) goto err_out; } - ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, 0); + ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, + HABMM_SOCKET_RECV_FLAGS_UNINTERRUPTIBLE); if (ret) { pr_err("%s: habmm socket receive failed (%d)\n", clk->dbg_name, ret); @@ -222,7 +224,7 @@ static int virtclk_front_reset(struct clk *clk, enum clk_reset_action action) return ret; msg.header.clk_id = v->id; - msg.header.cmd = CLK_MSG_RESET; + msg.header.cmd = CLK_MSG_RESET | v->flag; msg.header.len = sizeof(struct clk_msg_header); msg.reset = action; @@ -236,7 +238,8 @@ static int virtclk_front_reset(struct clk *clk, enum clk_reset_action action) goto err_out; } - ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, 0); + ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, + HABMM_SOCKET_RECV_FLAGS_UNINTERRUPTIBLE); if (ret) { pr_err("%s: habmm socket receive failed (%d)\n", clk->dbg_name, ret); @@ -276,7 +279,7 @@ static int virtclk_front_set_rate(struct clk *clk, unsigned long rate) return ret; msg.header.clk_id = v->id; - msg.header.cmd = CLK_MSG_SETFREQ; + msg.header.cmd = CLK_MSG_SETFREQ | v->flag; msg.header.len = sizeof(msg); msg.freq = (u32)rate; @@ -290,7 +293,8 @@ static int virtclk_front_set_rate(struct clk *clk, unsigned long rate) goto err_out; } - ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, 0); + ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, + HABMM_SOCKET_RECV_FLAGS_UNINTERRUPTIBLE); if (ret) { pr_err("%s: habmm socket receive failed (%d)\n", clk->dbg_name, ret); @@ -348,7 +352,7 @@ static unsigned long virtclk_front_get_rate(struct clk *clk) return 0; msg.clk_id = v->id; - msg.cmd = CLK_MSG_GETFREQ; + msg.cmd = CLK_MSG_GETFREQ | v->flag; msg.len = sizeof(msg); rt_mutex_lock(&virtclk_front_ctx.lock); @@ -362,7 +366,8 @@ static unsigned long virtclk_front_get_rate(struct clk *clk) goto err_out; } - ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, 0); + ret = habmm_socket_recv(handle, &rsp, &rsp_size, UINT_MAX, + HABMM_SOCKET_RECV_FLAGS_UNINTERRUPTIBLE); if (ret) { ret = 0; pr_err("%s: habmm socket receive failed (%d)\n", clk->dbg_name, |
