mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-17 07:28:51 +09:00
![Khoronzhuk, Ivan](/assets/img/avatar_default.png)
The keystone_nav driver is general driver intended to be used for working with queue manager and pktdma for different IPs like NETCP, AIF, FFTC, etc. So the it's API shouldn't be named like it works only with one of them, it should be general names. The names with prefix like netcp_* rather do for drivers/net/keystone_net.c driver. So it's good to generalize this driver to be used for different IP's and delete confusion with real NETCP driver. The current netcp_* functions of keystone navigator can be used for other settings of pktdma, not only for NETCP. The API of this driver is used by the keystone_net driver to work with NETCP, so net driver also should be corrected. For convenience collect pkdma configurations in drivers/dma/keystone_nav_cfg.c. Acked-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@ti.com>
28 lines
909 B
C
28 lines
909 B
C
/*
|
|
* Multicore Navigator driver for TI Keystone 2 devices.
|
|
*
|
|
* (C) Copyright 2012-2014
|
|
* Texas Instruments Incorporated, <www.ti.com>
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
#include <asm/ti-common/keystone_nav.h>
|
|
|
|
#ifdef CONFIG_KSNAV_PKTDMA_NETCP
|
|
/* NETCP Pktdma */
|
|
struct pktdma_cfg netcp_pktdma = {
|
|
.global = (void *)CONFIG_KSNAV_NETCP_PDMA_CTRL_BASE,
|
|
.tx_ch = (void *)CONFIG_KSNAV_NETCP_PDMA_TX_BASE,
|
|
.tx_ch_num = CONFIG_KSNAV_NETCP_PDMA_TX_CH_NUM,
|
|
.rx_ch = (void *)CONFIG_KSNAV_NETCP_PDMA_RX_BASE,
|
|
.rx_ch_num = CONFIG_KSNAV_NETCP_PDMA_RX_CH_NUM,
|
|
.tx_sched = (u32 *)CONFIG_KSNAV_NETCP_PDMA_SCHED_BASE,
|
|
.rx_flows = (void *)CONFIG_KSNAV_NETCP_PDMA_RX_FLOW_BASE,
|
|
.rx_flow_num = CONFIG_KSNAV_NETCP_PDMA_RX_FLOW_NUM,
|
|
.rx_free_q = CONFIG_KSNAV_NETCP_PDMA_RX_FREE_QUEUE,
|
|
.rx_rcv_q = CONFIG_KSNAV_NETCP_PDMA_RX_RCV_QUEUE,
|
|
.tx_snd_q = CONFIG_KSNAV_NETCP_PDMA_TX_SND_QUEUE,
|
|
};
|
|
#endif
|