Lines Matching full:txn
341 struct qmi_txn txn; in qcom_slim_qmi_send_select_inst_req() local
344 rc = qmi_txn_init(ctrl->qmi.handle, &txn, in qcom_slim_qmi_send_select_inst_req()
347 dev_err(ctrl->dev, "QMI TXN init fail: %d\n", rc); in qcom_slim_qmi_send_select_inst_req()
351 rc = qmi_send_request(ctrl->qmi.handle, NULL, &txn, in qcom_slim_qmi_send_select_inst_req()
357 qmi_txn_cancel(&txn); in qcom_slim_qmi_send_select_inst_req()
361 rc = qmi_txn_wait(&txn, SLIMBUS_QMI_RESP_TOUT); in qcom_slim_qmi_send_select_inst_req()
363 dev_err(ctrl->dev, "QMI TXN wait fail: %d\n", rc); in qcom_slim_qmi_send_select_inst_req()
378 struct qmi_txn *txn, const void *data) in qcom_slim_qmi_power_resp_cb() argument
387 complete(&txn->completion); in qcom_slim_qmi_power_resp_cb()
394 struct qmi_txn txn; in qcom_slim_qmi_send_power_request() local
397 rc = qmi_txn_init(ctrl->qmi.handle, &txn, in qcom_slim_qmi_send_power_request()
400 rc = qmi_send_request(ctrl->qmi.handle, NULL, &txn, in qcom_slim_qmi_send_power_request()
406 qmi_txn_cancel(&txn); in qcom_slim_qmi_send_power_request()
410 rc = qmi_txn_wait(&txn, SLIMBUS_QMI_RESP_TOUT); in qcom_slim_qmi_send_power_request()
412 dev_err(ctrl->dev, "QMI TXN wait fail: %d\n", rc); in qcom_slim_qmi_send_power_request()
771 struct slim_msg_txn *txn) in qcom_slim_ngd_xfer_msg() argument
781 u8 la = txn->la; in qcom_slim_ngd_xfer_msg()
784 if (txn->mt == SLIM_MSG_MT_CORE && in qcom_slim_ngd_xfer_msg()
785 (txn->mc >= SLIM_MSG_MC_BEGIN_RECONFIGURATION && in qcom_slim_ngd_xfer_msg()
786 txn->mc <= SLIM_MSG_MC_RECONFIGURE_NOW)) in qcom_slim_ngd_xfer_msg()
789 if (txn->dt == SLIM_MSG_DEST_ENUMADDR) in qcom_slim_ngd_xfer_msg()
792 if (txn->msg->num_bytes > SLIM_MSGQ_BUF_LEN || in qcom_slim_ngd_xfer_msg()
793 txn->rl > SLIM_MSGQ_BUF_LEN) { in qcom_slim_ngd_xfer_msg()
798 pbuf = qcom_slim_ngd_tx_msg_get(ctrl, txn->rl, &tx_sent); in qcom_slim_ngd_xfer_msg()
804 if (txn->mt == SLIM_MSG_MT_CORE && in qcom_slim_ngd_xfer_msg()
805 (txn->mc == SLIM_MSG_MC_CONNECT_SOURCE || in qcom_slim_ngd_xfer_msg()
806 txn->mc == SLIM_MSG_MC_CONNECT_SINK || in qcom_slim_ngd_xfer_msg()
807 txn->mc == SLIM_MSG_MC_DISCONNECT_PORT)) { in qcom_slim_ngd_xfer_msg()
808 txn->mt = SLIM_MSG_MT_DEST_REFERRED_USER; in qcom_slim_ngd_xfer_msg()
809 switch (txn->mc) { in qcom_slim_ngd_xfer_msg()
811 txn->mc = SLIM_USR_MC_CONNECT_SRC; in qcom_slim_ngd_xfer_msg()
814 txn->mc = SLIM_USR_MC_CONNECT_SINK; in qcom_slim_ngd_xfer_msg()
817 txn->mc = SLIM_USR_MC_DISCONNECT_PORT; in qcom_slim_ngd_xfer_msg()
825 wbuf[i++] = txn->la; in qcom_slim_ngd_xfer_msg()
827 wbuf[i++] = txn->msg->wbuf[0]; in qcom_slim_ngd_xfer_msg()
828 if (txn->mc != SLIM_USR_MC_DISCONNECT_PORT) in qcom_slim_ngd_xfer_msg()
829 wbuf[i++] = txn->msg->wbuf[1]; in qcom_slim_ngd_xfer_msg()
831 txn->comp = &done; in qcom_slim_ngd_xfer_msg()
832 ret = slim_alloc_txn_tid(sctrl, txn); in qcom_slim_ngd_xfer_msg()
838 wbuf[i++] = txn->tid; in qcom_slim_ngd_xfer_msg()
840 txn->msg->num_bytes = i; in qcom_slim_ngd_xfer_msg()
841 txn->msg->wbuf = wbuf; in qcom_slim_ngd_xfer_msg()
842 txn->msg->rbuf = rbuf; in qcom_slim_ngd_xfer_msg()
843 txn->rl = txn->msg->num_bytes + 4; in qcom_slim_ngd_xfer_msg()
847 txn->rl--; in qcom_slim_ngd_xfer_msg()
850 if (txn->dt == SLIM_MSG_DEST_LOGICALADDR) { in qcom_slim_ngd_xfer_msg()
851 *pbuf = SLIM_MSG_ASM_FIRST_WORD(txn->rl, txn->mt, txn->mc, 0, in qcom_slim_ngd_xfer_msg()
855 *pbuf = SLIM_MSG_ASM_FIRST_WORD(txn->rl, txn->mt, txn->mc, 1, in qcom_slim_ngd_xfer_msg()
860 if (slim_tid_txn(txn->mt, txn->mc)) in qcom_slim_ngd_xfer_msg()
861 *(puc++) = txn->tid; in qcom_slim_ngd_xfer_msg()
863 if (slim_ec_txn(txn->mt, txn->mc)) { in qcom_slim_ngd_xfer_msg()
864 *(puc++) = (txn->ec & 0xFF); in qcom_slim_ngd_xfer_msg()
865 *(puc++) = (txn->ec >> 8) & 0xFF; in qcom_slim_ngd_xfer_msg()
868 if (txn->msg && txn->msg->wbuf) in qcom_slim_ngd_xfer_msg()
869 memcpy(puc, txn->msg->wbuf, txn->msg->num_bytes); in qcom_slim_ngd_xfer_msg()
871 ret = qcom_slim_ngd_tx_msg_post(ctrl, pbuf, txn->rl); in qcom_slim_ngd_xfer_msg()
877 dev_err(sctrl->dev, "TX timed out:MC:0x%x,mt:0x%x", txn->mc, in qcom_slim_ngd_xfer_msg()
878 txn->mt); in qcom_slim_ngd_xfer_msg()
886 txn->mc, txn->mt); in qcom_slim_ngd_xfer_msg()
895 struct slim_msg_txn *txn) in qcom_slim_ngd_xfer_msg_sync() argument
902 txn->comp = &done; in qcom_slim_ngd_xfer_msg_sync()
904 ret = qcom_slim_ngd_xfer_msg(ctrl, txn); in qcom_slim_ngd_xfer_msg_sync()
910 dev_err(ctrl->dev, "TX timed out:MC:0x%x,mt:0x%x", txn->mc, in qcom_slim_ngd_xfer_msg_sync()
911 txn->mt); in qcom_slim_ngd_xfer_msg_sync()
924 struct slim_msg_txn txn = {0,}; in qcom_slim_ngd_enable_stream() local
927 txn.mt = SLIM_MSG_MT_DEST_REFERRED_USER; in qcom_slim_ngd_enable_stream()
928 txn.dt = SLIM_MSG_DEST_LOGICALADDR; in qcom_slim_ngd_enable_stream()
929 txn.la = SLIM_LA_MGR; in qcom_slim_ngd_enable_stream()
930 txn.ec = 0; in qcom_slim_ngd_enable_stream()
931 txn.msg = &msg; in qcom_slim_ngd_enable_stream()
932 txn.msg->num_bytes = 0; in qcom_slim_ngd_enable_stream()
933 txn.msg->wbuf = wbuf; in qcom_slim_ngd_enable_stream()
934 txn.msg->rbuf = rbuf; in qcom_slim_ngd_enable_stream()
939 if (txn.msg->num_bytes == 0) { in qcom_slim_ngd_enable_stream()
943 wbuf[txn.msg->num_bytes++] = sdev->laddr; in qcom_slim_ngd_enable_stream()
944 wbuf[txn.msg->num_bytes] = rt->bps >> 2 | in qcom_slim_ngd_enable_stream()
950 wbuf[txn.msg->num_bytes] |= BIT(5); in qcom_slim_ngd_enable_stream()
952 txn.msg->num_bytes++; in qcom_slim_ngd_enable_stream()
953 wbuf[txn.msg->num_bytes++] = exp << 4 | rt->prot; in qcom_slim_ngd_enable_stream()
956 wbuf[txn.msg->num_bytes++] = in qcom_slim_ngd_enable_stream()
960 wbuf[txn.msg->num_bytes++] = port->ch.prrate; in qcom_slim_ngd_enable_stream()
962 ret = slim_alloc_txn_tid(ctrl, &txn); in qcom_slim_ngd_enable_stream()
967 wbuf[txn.msg->num_bytes++] = txn.tid; in qcom_slim_ngd_enable_stream()
969 wbuf[txn.msg->num_bytes++] = port->ch.id; in qcom_slim_ngd_enable_stream()
972 txn.mc = SLIM_USR_MC_DEF_ACT_CHAN; in qcom_slim_ngd_enable_stream()
973 txn.rl = txn.msg->num_bytes + 4; in qcom_slim_ngd_enable_stream()
974 ret = qcom_slim_ngd_xfer_msg_sync(ctrl, &txn); in qcom_slim_ngd_enable_stream()
976 slim_free_txn_tid(ctrl, &txn); in qcom_slim_ngd_enable_stream()
977 dev_err(&sdev->dev, "TX timed out:MC:0x%x,mt:0x%x", txn.mc, in qcom_slim_ngd_enable_stream()
978 txn.mt); in qcom_slim_ngd_enable_stream()
982 txn.mc = SLIM_USR_MC_RECONFIG_NOW; in qcom_slim_ngd_enable_stream()
983 txn.msg->num_bytes = 2; in qcom_slim_ngd_enable_stream()
985 txn.rl = txn.msg->num_bytes + 4; in qcom_slim_ngd_enable_stream()
987 ret = slim_alloc_txn_tid(ctrl, &txn); in qcom_slim_ngd_enable_stream()
993 wbuf[0] = txn.tid; in qcom_slim_ngd_enable_stream()
994 ret = qcom_slim_ngd_xfer_msg_sync(ctrl, &txn); in qcom_slim_ngd_enable_stream()
996 slim_free_txn_tid(ctrl, &txn); in qcom_slim_ngd_enable_stream()
997 dev_err(&sdev->dev, "TX timed out:MC:0x%x,mt:0x%x", txn.mc, in qcom_slim_ngd_enable_stream()
998 txn.mt); in qcom_slim_ngd_enable_stream()
1009 struct slim_msg_txn txn; in qcom_slim_ngd_get_laddr() local
1014 txn.mt = SLIM_MSG_MT_DEST_REFERRED_USER; in qcom_slim_ngd_get_laddr()
1015 txn.dt = SLIM_MSG_DEST_LOGICALADDR; in qcom_slim_ngd_get_laddr()
1016 txn.la = SLIM_LA_MGR; in qcom_slim_ngd_get_laddr()
1017 txn.ec = 0; in qcom_slim_ngd_get_laddr()
1019 txn.mc = SLIM_USR_MC_ADDR_QUERY; in qcom_slim_ngd_get_laddr()
1020 txn.rl = 11; in qcom_slim_ngd_get_laddr()
1021 txn.msg = &msg; in qcom_slim_ngd_get_laddr()
1022 txn.msg->num_bytes = 7; in qcom_slim_ngd_get_laddr()
1023 txn.msg->wbuf = wbuf; in qcom_slim_ngd_get_laddr()
1024 txn.msg->rbuf = rbuf; in qcom_slim_ngd_get_laddr()
1026 ret = slim_alloc_txn_tid(ctrl, &txn); in qcom_slim_ngd_get_laddr()
1030 wbuf[0] = (u8)txn.tid; in qcom_slim_ngd_get_laddr()
1033 ret = qcom_slim_ngd_xfer_msg_sync(ctrl, &txn); in qcom_slim_ngd_get_laddr()
1035 slim_free_txn_tid(ctrl, &txn); in qcom_slim_ngd_get_laddr()
1158 struct slim_msg_txn txn; in qcom_slim_ngd_master_worker() local
1165 txn.dt = SLIM_MSG_DEST_LOGICALADDR; in qcom_slim_ngd_master_worker()
1166 txn.ec = 0; in qcom_slim_ngd_master_worker()
1167 txn.mc = SLIM_USR_MC_REPORT_SATELLITE; in qcom_slim_ngd_master_worker()
1168 txn.mt = SLIM_MSG_MT_SRC_REFERRED_USER; in qcom_slim_ngd_master_worker()
1169 txn.la = SLIM_LA_MGR; in qcom_slim_ngd_master_worker()
1174 txn.msg = &msg; in qcom_slim_ngd_master_worker()
1175 txn.msg->wbuf = wbuf; in qcom_slim_ngd_master_worker()
1176 txn.msg->num_bytes = 4; in qcom_slim_ngd_master_worker()
1177 txn.rl = 8; in qcom_slim_ngd_master_worker()
1182 ret = qcom_slim_ngd_xfer_msg(&ctrl->ctrl, &txn); in qcom_slim_ngd_master_worker()