mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-27 23:21:01 +00:00
keystone2: keystone_nav: don't use hard addresses in netcp_pktdma
Use definitions in netcp_pktdma instead direct addresses. The definitions can be set specifically for SoC, so there is no reason to check SoC type while initialization. Acked-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@ti.com>
This commit is contained in:
parent
afa479cf66
commit
ed948e2959
3 changed files with 27 additions and 29 deletions
|
@ -10,11 +10,6 @@
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/arch/keystone_nav.h>
|
#include <asm/arch/keystone_nav.h>
|
||||||
|
|
||||||
static int soc_type =
|
|
||||||
#ifdef CONFIG_SOC_K2HK
|
|
||||||
k2hk;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct qm_config qm_memmap = {
|
struct qm_config qm_memmap = {
|
||||||
.stat_cfg = KS2_QM_QUEUE_STATUS_BASE,
|
.stat_cfg = KS2_QM_QUEUE_STATUS_BASE,
|
||||||
.queue = (void *)KS2_QM_MANAGER_QUEUES_BASE,
|
.queue = (void *)KS2_QM_MANAGER_QUEUES_BASE,
|
||||||
|
@ -158,22 +153,21 @@ void queue_close(u32 qnum)
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* DMA API
|
* DMA API
|
||||||
*/
|
*/
|
||||||
|
struct pktdma_cfg netcp_pktdma = {
|
||||||
struct pktdma_cfg k2hk_netcp_pktdma = {
|
.global = (void *)KS2_NETCP_PDMA_CTRL_BASE,
|
||||||
.global = (struct global_ctl_regs *)0x02004000,
|
.tx_ch = (void *)KS2_NETCP_PDMA_TX_BASE,
|
||||||
.tx_ch = (struct tx_chan_regs *)0x02004400,
|
.tx_ch_num = KS2_NETCP_PDMA_TX_CH_NUM,
|
||||||
.tx_ch_num = 9,
|
.rx_ch = (void *)KS2_NETCP_PDMA_RX_BASE,
|
||||||
.rx_ch = (struct rx_chan_regs *)0x02004800,
|
.rx_ch_num = KS2_NETCP_PDMA_RX_CH_NUM,
|
||||||
.rx_ch_num = 26,
|
.tx_sched = (u32 *)KS2_NETCP_PDMA_SCHED_BASE,
|
||||||
.tx_sched = (u32 *)0x02004c00,
|
.rx_flows = (void *)KS2_NETCP_PDMA_RX_FLOW_BASE,
|
||||||
.rx_flows = (struct rx_flow_regs *)0x02005000,
|
.rx_flow_num = KS2_NETCP_PDMA_RX_FLOW_NUM,
|
||||||
.rx_flow_num = 32,
|
.rx_free_q = KS2_NETCP_PDMA_RX_FREE_QUEUE,
|
||||||
.rx_free_q = 4001,
|
.rx_rcv_q = KS2_NETCP_PDMA_RX_RCV_QUEUE,
|
||||||
.rx_rcv_q = 4002,
|
.tx_snd_q = KS2_NETCP_PDMA_TX_SND_QUEUE,
|
||||||
.tx_snd_q = 648,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct pktdma_cfg *netcp;
|
struct pktdma_cfg *netcp;
|
||||||
|
@ -300,12 +294,7 @@ static int _netcp_init(struct pktdma_cfg *netcp_cfg,
|
||||||
|
|
||||||
int netcp_init(struct rx_buff_desc *rx_buffers)
|
int netcp_init(struct rx_buff_desc *rx_buffers)
|
||||||
{
|
{
|
||||||
switch (soc_type) {
|
return _netcp_init(&netcp_pktdma, rx_buffers);
|
||||||
case k2hk:
|
|
||||||
_netcp_init(&k2hk_netcp_pktdma, rx_buffers);
|
|
||||||
return QM_OK;
|
|
||||||
}
|
|
||||||
return QM_ERR;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int netcp_close(void)
|
int netcp_close(void)
|
||||||
|
|
|
@ -84,4 +84,17 @@
|
||||||
/* Number of DSP cores */
|
/* Number of DSP cores */
|
||||||
#define KS2_NUM_DSPS 8
|
#define KS2_NUM_DSPS 8
|
||||||
|
|
||||||
|
/* NETCP pktdma */
|
||||||
|
#define KS2_NETCP_PDMA_CTRL_BASE 0x02004000
|
||||||
|
#define KS2_NETCP_PDMA_TX_BASE 0x02004400
|
||||||
|
#define KS2_NETCP_PDMA_TX_CH_NUM 9
|
||||||
|
#define KS2_NETCP_PDMA_RX_BASE 0x02004800
|
||||||
|
#define KS2_NETCP_PDMA_RX_CH_NUM 26
|
||||||
|
#define KS2_NETCP_PDMA_SCHED_BASE 0x02004c00
|
||||||
|
#define KS2_NETCP_PDMA_RX_FLOW_BASE 0x02005000
|
||||||
|
#define KS2_NETCP_PDMA_RX_FLOW_NUM 32
|
||||||
|
#define KS2_NETCP_PDMA_RX_FREE_QUEUE 4001
|
||||||
|
#define KS2_NETCP_PDMA_RX_RCV_QUEUE 4002
|
||||||
|
#define KS2_NETCP_PDMA_TX_SND_QUEUE 648
|
||||||
|
|
||||||
#endif /* __ASM_ARCH_HARDWARE_H */
|
#endif /* __ASM_ARCH_HARDWARE_H */
|
||||||
|
|
|
@ -13,10 +13,6 @@
|
||||||
#include <asm/arch/hardware.h>
|
#include <asm/arch/hardware.h>
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
|
|
||||||
enum soc_type_t {
|
|
||||||
k2hk
|
|
||||||
};
|
|
||||||
|
|
||||||
#define QM_OK 0
|
#define QM_OK 0
|
||||||
#define QM_ERR -1
|
#define QM_ERR -1
|
||||||
#define QM_DESC_TYPE_HOST 0
|
#define QM_DESC_TYPE_HOST 0
|
||||||
|
|
Loading…
Reference in a new issue