Lines Matching refs:tchan

221 	struct udma_tchan *tchan;
292 if (!uc->tchan)
294 return udma_read(uc->tchan->reg_rt, reg);
299 if (!uc->tchan)
301 udma_write(uc->tchan->reg_rt, reg, val);
307 if (!uc->tchan)
309 udma_update_bits(uc->tchan->reg_rt, reg, mask, val);
505 if (uc->tchan)
560 ring = uc->tchan->t_ring;
600 ring = uc->tchan->tc_ring;
637 if (uc->tchan) {
638 ring1 = uc->tchan->t_ring;
639 ring2 = uc->tchan->tc_ring;
663 if (uc->tchan) {
1234 UDMA_RESERVE_RESOURCE(tchan);
1241 if (uc->tchan) {
1242 dev_dbg(ud->dev, "chan%d: already have tchan%d allocated\n",
1243 uc->id, uc->tchan->id);
1247 uc->tchan = __udma_reserve_tchan(ud, uc->config.channel_tpl, -1);
1249 return PTR_ERR_OR_ZERO(uc->tchan);
1272 if ((uc->tchan && uc->rchan) && uc->tchan->id == uc->rchan->id) {
1274 uc->id, uc->tchan->id);
1278 if (uc->tchan) {
1279 dev_err(ud->dev, "chan%d: already have tchan%d allocated\n",
1280 uc->id, uc->tchan->id);
1303 uc->tchan = &ud->tchans[chan_id];
1345 if (uc->tchan) {
1346 dev_dbg(ud->dev, "chan%d: put tchan%d\n", uc->id,
1347 uc->tchan->id);
1348 clear_bit(uc->tchan->id, ud->tchan_map);
1349 uc->tchan = NULL;
1367 if (!uc->tchan)
1370 k3_ringacc_ring_free(uc->tchan->t_ring);
1371 k3_ringacc_ring_free(uc->tchan->tc_ring);
1372 uc->tchan->t_ring = NULL;
1373 uc->tchan->tc_ring = NULL;
1388 ret = k3_ringacc_request_rings_pair(ud->ringacc, uc->tchan->id, -1,
1389 &uc->tchan->t_ring,
1390 &uc->tchan->tc_ring);
1401 ret = k3_ringacc_ring_cfg(uc->tchan->t_ring, &ring_cfg);
1402 ret |= k3_ringacc_ring_cfg(uc->tchan->tc_ring, &ring_cfg);
1410 k3_ringacc_ring_free(uc->tchan->tc_ring);
1411 uc->tchan->tc_ring = NULL;
1412 k3_ringacc_ring_free(uc->tchan->t_ring);
1413 uc->tchan->t_ring = NULL;
1528 struct udma_tchan *tchan = uc->tchan;
1533 int tc_ring = k3_ringacc_get_ring_id(tchan->tc_ring);
1539 req_tx.index = tchan->id;
1547 dev_err(ud->dev, "tchan%d cfg failed %d\n", tchan->id, ret);
1571 struct udma_tchan *tchan = uc->tchan;
1572 int tc_ring = k3_ringacc_get_ring_id(tchan->tc_ring);
1588 req_tx.index = tchan->id;
1597 dev_err(ud->dev, "tchan%d cfg failed %d\n", tchan->id, ret);
1746 uc->config.src_thread = ud->psil_base + uc->tchan->id;
1750 irq_ring = uc->tchan->tc_ring;
1751 irq_udma_idx = uc->tchan->id;
1764 uc->config.src_thread = ud->psil_base + uc->tchan->id;
1768 irq_ring = uc->tchan->tc_ring;
1769 irq_udma_idx = uc->tchan->id;
1963 ring_id = k3_ringacc_get_ring_id(uc->tchan->tc_ring);
2170 ring_id = k3_ringacc_get_ring_id(uc->tchan->tc_ring);
2481 ring_id = k3_ringacc_get_ring_id(uc->tchan->tc_ring);
3185 static const char * const range_names[] = { "ti,sci-rm-range-tchan",
3261 /* tchan ranges */
3271 dev_dbg(dev, "ti-sci-res: tchan: %d:%d\n",
3338 dev_info(dev, "Channels: %d (tchan: %u, rchan: %u, gp-rflow: %u)\n",
3456 seq_printf(s, "chan%d pair [0x%04x -> 0x%04x], ", uc->tchan->id,
3464 seq_printf(s, "tchan%d [0x%04x -> 0x%04x], ", uc->tchan->id,
3638 struct udma_tchan *tchan = &ud->tchans[i];
3640 tchan->id = i;
3641 tchan->reg_rt = ud->mmrs[MMR_TCHANRT] + i * 0x1000;
3663 uc->tchan = NULL;