return ret;
 }
 
-static int q6afe_port_set_param(struct q6afe_port *port, void *data,
-                               int param_id, int module_id, int psize)
+static int q6afe_set_param(struct q6afe *afe, struct q6afe_port *port,
+                          void *data, int param_id, int module_id, int psize,
+                          int token)
 {
        struct afe_svc_cmd_set_param *param;
        struct afe_port_param_data_v2 *pdata;
-       struct q6afe *afe = port->afe;
        struct apr_pkt *pkt;
-       u16 port_id = port->id;
        int ret, pkt_size;
        void *p, *pl;
 
        pkt->hdr.pkt_size = pkt_size;
        pkt->hdr.src_port = 0;
        pkt->hdr.dest_port = 0;
-       pkt->hdr.token = port->token;
+       pkt->hdr.token = token;
        pkt->hdr.opcode = AFE_SVC_CMD_SET_PARAM;
 
        param->payload_size = sizeof(*pdata) + psize;
 
        ret = afe_apr_send_pkt(afe, pkt, port, AFE_SVC_CMD_SET_PARAM);
        if (ret)
-               dev_err(afe->dev, "AFE enable for port 0x%x failed %d\n",
-                      port_id, ret);
+               dev_err(afe->dev, "AFE set params failed %d\n", ret);
 
        kfree(pkt);
        return ret;
 }
 
+static int q6afe_port_set_param(struct q6afe_port *port, void *data,
+                               int param_id, int module_id, int psize)
+{
+       return q6afe_set_param(port->afe, port, data, param_id, module_id,
+                              psize, port->token);
+}
+
 static int q6afe_port_set_param_v2(struct q6afe_port *port, void *data,
                                   int param_id, int module_id, int psize)
 {
        return ret;
 }
 
-static int q6afe_set_lpass_clock(struct q6afe_port *port,
+static int q6afe_port_set_lpass_clock(struct q6afe_port *port,
                                 struct afe_clk_cfg *cfg)
 {
        return q6afe_port_set_param_v2(port, cfg,
                ccfg.clk_src = clk_src;
                ccfg.clk_root = clk_root;
                ccfg.clk_set_mode = Q6AFE_LPASS_MODE_CLK1_VALID;
-               ret = q6afe_set_lpass_clock(port, &ccfg);
+               ret = q6afe_port_set_lpass_clock(port, &ccfg);
                break;
 
        case LPAIF_OSR_CLK:
                ccfg.clk_src = clk_src;
                ccfg.clk_root = clk_root;
                ccfg.clk_set_mode = Q6AFE_LPASS_MODE_CLK2_VALID;
-               ret = q6afe_set_lpass_clock(port, &ccfg);
+               ret = q6afe_port_set_lpass_clock(port, &ccfg);
                break;
        case Q6AFE_LPASS_CLK_ID_PRI_MI2S_IBIT ... Q6AFE_LPASS_CLK_ID_QUI_MI2S_OSR:
        case Q6AFE_LPASS_CLK_ID_MCLK_1 ... Q6AFE_LPASS_CLK_ID_INT_MCLK_1: