/linux/drivers/dma/ti/ |
H A D | k3-udma-glue.c | 115 bool tx_chn) in of_k3_udma_glue_parse_chn_common() argument 117 if (tx_chn && !(thread_id & K3_PSIL_DST_THREAD_ID_OFFSET)) in of_k3_udma_glue_parse_chn_common() 120 if (!tx_chn && (thread_id & K3_PSIL_DST_THREAD_ID_OFFSET)) in of_k3_udma_glue_parse_chn_common() 135 if (tx_chn) in of_k3_udma_glue_parse_chn_common() 145 bool tx_chn) in of_k3_udma_glue_parse_chn() argument 185 ret = of_k3_udma_glue_parse_chn_common(common, thread_id, tx_chn); in of_k3_udma_glue_parse_chn() 194 bool tx_chn, u32 thread_id) in of_k3_udma_glue_parse_chn_by_id() argument 205 ret = of_k3_udma_glue_parse_chn_common(common, thread_id, tx_chn); in of_k3_udma_glue_parse_chn_by_id() 209 static void k3_udma_glue_dump_tx_chn(struct k3_udma_glue_tx_channel *tx_chn) in k3_udma_glue_dump_tx_chn() argument 211 struct device *dev = tx_chn->common.dev; in k3_udma_glue_dump_tx_chn() [all …]
|
/linux/drivers/net/ethernet/ti/icssg/ |
H A D | icssg_common.c | 61 struct prueth_tx_chn *tx_chn = &emac->tx_chns[i]; in prueth_cleanup_tx_chns() local 63 if (tx_chn->desc_pool) in prueth_cleanup_tx_chns() 64 k3_cppi_desc_pool_destroy(tx_chn->desc_pool); in prueth_cleanup_tx_chns() 66 if (tx_chn->tx_chn) in prueth_cleanup_tx_chns() 67 k3_udma_glue_release_tx_chn(tx_chn->tx_chn); in prueth_cleanup_tx_chns() 72 memset(tx_chn, 0, sizeof(*tx_chn)); in prueth_cleanup_tx_chns() 82 struct prueth_tx_chn *tx_chn = &emac->tx_chns[i]; in prueth_ndev_del_tx_napi() local 84 if (tx_chn->irq) in prueth_ndev_del_tx_napi() 85 free_irq(tx_chn->irq, tx_chn); in prueth_ndev_del_tx_napi() 86 netif_napi_del(&tx_chn->napi_tx); in prueth_ndev_del_tx_napi() [all …]
|
H A D | icssg_ethtool.c | 216 struct prueth_tx_chn *tx_chn; in emac_get_coalesce() local 218 tx_chn = &emac->tx_chns[0]; in emac_get_coalesce() 221 coal->tx_coalesce_usecs = tx_chn->tx_pace_timeout_ns / 1000; in emac_get_coalesce() 230 struct prueth_tx_chn *tx_chn; in emac_get_per_queue_coalesce() local 235 tx_chn = &emac->tx_chns[queue]; in emac_get_per_queue_coalesce() 237 coal->tx_coalesce_usecs = tx_chn->tx_pace_timeout_ns / 1000; in emac_get_per_queue_coalesce() 249 struct prueth_tx_chn *tx_chn; in emac_set_coalesce() local 251 tx_chn = &emac->tx_chns[0]; in emac_set_coalesce() 268 tx_chn->tx_pace_timeout_ns = coal->tx_coalesce_usecs * 1000; in emac_set_coalesce() 278 struct prueth_tx_chn *tx_chn; in emac_set_per_queue_coalesce() local [all …]
|
H A D | icssg_prueth_sr1.c | 86 struct prueth_tx_chn *tx_chn; in emac_send_command_sr1() local 98 tx_chn = &emac->tx_chns[emac->tx_ch_num - 1]; in emac_send_command_sr1() 101 buf_dma = dma_map_single(tx_chn->dma_dev, data, pkt_len, DMA_TO_DEVICE); in emac_send_command_sr1() 102 if (dma_mapping_error(tx_chn->dma_dev, buf_dma)) { in emac_send_command_sr1() 108 first_desc = k3_cppi_desc_pool_alloc(tx_chn->desc_pool); in emac_send_command_sr1() 111 dma_unmap_single(tx_chn->dma_dev, buf_dma, pkt_len, DMA_TO_DEVICE); in emac_send_command_sr1() 128 desc_dma = k3_cppi_desc_pool_virt2dma(tx_chn->desc_pool, first_desc); in emac_send_command_sr1() 132 ret = k3_udma_glue_push_tx_chn(tx_chn->tx_chn, first_desc, desc_dma); in emac_send_command_sr1() 145 prueth_xmit_free(tx_chn, first_desc); in emac_send_command_sr1() 592 ret = k3_udma_glue_enable_tx_chn(emac->tx_chns[i].tx_chn); in emac_ndo_open() [all …]
|
H A D | icssg_prueth.h | 116 struct k3_udma_glue_tx_channel *tx_chn; member 403 void prueth_xmit_free(struct prueth_tx_chn *tx_chn,
|
H A D | icssg_prueth.c | 788 ret = k3_udma_glue_enable_tx_chn(emac->tx_chns[i].tx_chn); in emac_ndo_open() 865 k3_udma_glue_tdown_tx_chn(emac->tx_chns[i].tx_chn, false); in emac_ndo_stop()
|
/linux/drivers/net/ethernet/ti/ |
H A D | am65-cpsw-nuss.c | 412 struct am65_cpsw_tx_chn *tx_chn; in am65_cpsw_nuss_ndo_host_tx_timeout() local 417 tx_chn = &common->tx_chns[txqueue]; in am65_cpsw_nuss_ndo_host_tx_timeout() 425 k3_cppi_desc_pool_avail(tx_chn->desc_pool)); in am65_cpsw_nuss_ndo_host_tx_timeout() 662 struct am65_cpsw_tx_chn *tx_chn = &common->tx_chns[id]; in am65_cpsw_destroy_txq() local 664 napi_disable(&tx_chn->napi_tx); in am65_cpsw_destroy_txq() 665 hrtimer_cancel(&tx_chn->tx_hrtimer); in am65_cpsw_destroy_txq() 666 k3_udma_glue_reset_tx_chn(tx_chn->tx_chn, tx_chn, in am65_cpsw_destroy_txq() 668 k3_udma_glue_disable_tx_chn(tx_chn->tx_chn); in am65_cpsw_destroy_txq() 673 struct am65_cpsw_tx_chn *tx_chn = common->tx_chns; in am65_cpsw_destroy_txqs() local 683 k3_udma_glue_tdown_tx_chn(tx_chn[id].tx_chn, false); in am65_cpsw_destroy_txqs() [all …]
|
H A D | am65-cpsw-ethtool.c | 920 struct am65_cpsw_tx_chn *tx_chn; in am65_cpsw_get_per_queue_coalesce() local 925 tx_chn = &common->tx_chns[queue]; in am65_cpsw_get_per_queue_coalesce() 926 coal->tx_coalesce_usecs = tx_chn->tx_pace_timeout / 1000; in am65_cpsw_get_per_queue_coalesce() 946 struct am65_cpsw_tx_chn *tx_chn; in am65_cpsw_set_per_queue_coalesce() local 951 tx_chn = &common->tx_chns[queue]; in am65_cpsw_set_per_queue_coalesce() 955 tx_chn->tx_pace_timeout = coal->tx_coalesce_usecs * 1000; in am65_cpsw_set_per_queue_coalesce()
|
H A D | am65-cpsw-qos.c | 1205 struct am65_cpsw_tx_chn *tx_chn; in am65_cpsw_qos_ndo_tx_p0_set_maxrate() local 1247 tx_chn = &common->tx_chns[queue]; in am65_cpsw_qos_ndo_tx_p0_set_maxrate() 1248 tx_chn->rate_mbps = rate_mbps; in am65_cpsw_qos_ndo_tx_p0_set_maxrate() 1268 struct am65_cpsw_tx_chn *tx_chn = &common->tx_chns[tx_ch]; in am65_cpsw_qos_tx_p0_rate_init() local 1271 if (!tx_chn->rate_mbps) in am65_cpsw_qos_tx_p0_rate_init() 1274 ch_cir = am65_cpsw_qos_tx_rate_calc(tx_chn->rate_mbps, in am65_cpsw_qos_tx_p0_rate_init()
|
H A D | am65-cpsw-nuss.h | 83 struct k3_udma_glue_tx_channel *tx_chn; member
|
/linux/include/linux/dma/ |
H A D | k3-udma-glue.h | 34 void k3_udma_glue_release_tx_chn(struct k3_udma_glue_tx_channel *tx_chn); 35 int k3_udma_glue_push_tx_chn(struct k3_udma_glue_tx_channel *tx_chn, 38 int k3_udma_glue_pop_tx_chn(struct k3_udma_glue_tx_channel *tx_chn, 40 int k3_udma_glue_enable_tx_chn(struct k3_udma_glue_tx_channel *tx_chn); 41 void k3_udma_glue_disable_tx_chn(struct k3_udma_glue_tx_channel *tx_chn); 42 void k3_udma_glue_tdown_tx_chn(struct k3_udma_glue_tx_channel *tx_chn, 44 void k3_udma_glue_reset_tx_chn(struct k3_udma_glue_tx_channel *tx_chn, 46 u32 k3_udma_glue_tx_get_hdesc_size(struct k3_udma_glue_tx_channel *tx_chn); 47 u32 k3_udma_glue_tx_get_txcq_id(struct k3_udma_glue_tx_channel *tx_chn); 48 int k3_udma_glue_tx_get_irq(struct k3_udma_glue_tx_channel *tx_chn); [all …]
|