/*
 * Copyright (c) 2021, The Linux Foundation. All rights reserved.
 *
 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

#ifndef __EDMA_REGS__
#define __EDMA_REGS__

#define EDMA_GENMASK(end, start)	(uint32_t)((((uint64_t)1 << ((end) - (start) + 1)) - 1) << (start))

/*
 * EDMA register offsets
 */
#define EDMA_REG_MAS_CTRL		0x0
#define EDMA_REG_PORT_CTRL		0x4
#define EDMA_REG_VLAN_CTRL		0x8
#define EDMA_REG_RXDESC2FILL_MAP_0	0x14
#define EDMA_REG_RXDESC2FILL_MAP_1	0x18
#define EDMA_REG_RXDESC2FILL_MAP_2	0x1c
#define EDMA_REG_TXQ_CTRL		0x20
#define EDMA_REG_TXQ_CTRL_2		0x24
#define EDMA_REG_TXQ_FC_0		0x28
#define EDMA_REG_TXQ_FC_1		0x30
#define EDMA_REG_TXQ_FC_2		0x34
#define EDMA_REG_TXQ_FC_3		0x38
#define EDMA_REG_RXQ_CTRL		0x3c
#define EDMA_REG_MISC_ERR_QID		0x40
#define EDMA_REG_RXQ_FC_THRE		0x44
#define EDMA_REG_DMAR_CTRL		0x48
#define EDMA_REG_AXIR_CTRL		0x4c
#define EDMA_REG_AXIW_CTRL		0x50
#define EDMA_REG_MIN_MSS		0x54
#define EDMA_REG_LOOPBACK_CTRL		0x58
#define EDMA_REG_MISC_INT_STAT		0x5c
#define EDMA_REG_MISC_INT_MASK		0x60
#define EDMA_REG_DBG_CTRL		0x64
#define EDMA_REG_DBG_DATA		0x68
#define EDMA_REG_TX_TIMEOUT_THRESH	0x6c
#define EDMA_REG_REQ0_FIFO_THRESH	0x80
#define EDMA_REG_WB_OS_THRESH		0x84
#define EDMA_REG_MISC_ERR_QID_REG2	0x88
#define EDMA_REG_TXDESC2CMPL_MAP_0	0x8c
#define EDMA_REG_TXDESC2CMPL_MAP_1	0x90
#define EDMA_REG_TXDESC2CMPL_MAP_2	0x94
#define EDMA_REG_TXDESC2CMPL_MAP_3	0x98
#define EDMA_REG_TXDESC2CMPL_MAP_4	0x9c
#define EDMA_REG_TXDESC2CMPL_MAP_5	0xa0

#define EDMA_REG_TXDESC_BA(n)		(0x1000 + (0x1000 * (n)))
#define EDMA_REG_TXDESC_PROD_IDX(n)	(0x1004 + (0x1000 * (n)))
#define EDMA_REG_TXDESC_CONS_IDX(n)	(0x1008 + (0x1000 * (n)))
#define EDMA_REG_TXDESC_RING_SIZE(n)	(0x100c + (0x1000 * (n)))
#define EDMA_REG_TXDESC_CTRL(n)		(0x1010 + (0x1000 * (n)))
#define EDMA_REG_TXDESC_BA2(n)		(0x1014 + (0x1000 * (n)))

#define EDMA_REG_RXFILL_BA(n)		(0x29000 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_PROD_IDX(n)	(0x29004 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_CONS_IDX(n)	(0x29008 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_RING_SIZE(n)	(0x2900c + (0x1000 * (n)))
#define EDMA_REG_RXFILL_BUFFER1_SIZE(n)	(0x29010 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_FC_THRE(n)	(0x29014 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_UGT_THRE(n)	(0x29018 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_RING_EN(n)	(0x2901c + (0x1000 * (n)))
#define EDMA_REG_RXFILL_DISABLE(n)	(0x29020 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_DISABLE_DONE(n)	(0x29024 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_INT_STAT(n)	(0x31000 + (0x1000 * (n)))
#define EDMA_REG_RXFILL_INT_MASK(n)	(0x31004 + (0x1000 * (n)))

#define EDMA_REG_RXDESC_BA(n)		(0x39000 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_PROD_IDX(n)	(0x39004 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_CONS_IDX(n)	(0x39008 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_RING_SIZE(n)	(0x3900c + (0x1000 * (n)))
#define EDMA_REG_RXDESC_FC_THRE(n)	(0x39010 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_UGT_THRE(n)	(0x39014 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_CTRL(n)		(0x39018 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_BPC(n)		(0x3901c + (0x1000 * (n)))
#define EDMA_REG_RXDESC_DISABLE(n)	(0x39020 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_DISABLE_DONE(n)	(0x39024 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_PREHEADER_BA(n)	(0x39028 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_INT_STAT(n)	(0x59000 + (0x1000 * (n)))
#define EDMA_REG_RXDESC_INT_MASK(n)	(0x59004 + (0x1000 * (n)))

#define EDMA_REG_RX_MOD_TIMER(n)	(0x59008 + (0x1000 * (n)))
#define EDMA_REG_RX_INT_CTRL(n)		(0x5900c + (0x1000 * (n)))

#define EDMA_REG_TXCMPL_BA(n)		(0x79000 + (0x1000 * (n)))
#define EDMA_REG_TXCMPL_PROD_IDX(n)	(0x79004 + (0x1000 * (n)))
#define EDMA_REG_TXCMPL_CONS_IDX(n)	(0x79008 + (0x1000 * (n)))
#define EDMA_REG_TXCMPL_RING_SIZE(n)	(0x7900c + (0x1000 * (n)))
#define EDMA_REG_TXCMPL_UGT_THRE(n)	(0x79010 + (0x1000 * (n)))
#define EDMA_REG_TXCMPL_CTRL(n)		(0x79014 + (0x1000 * (n)))
#define EDMA_REG_TXCMPL_BPC(n)		(0x79018 + (0x1000 * (n)))

#define EDMA_REG_TX_INT_STAT(n)		(0x99000 + (0x1000 * (n)))
#define EDMA_REG_TX_INT_MASK(n)		(0x99004 + (0x1000 * (n)))
#define EDMA_REG_TX_MOD_TIMER(n)	(0x99008 + (0x1000 * (n)))
#define EDMA_REG_TX_INT_CTRL(n)		(0x9900c + (0x1000 * (n)))

/*
 * QID to RID Table
 */
#define EDMA_QID2RID_TABLE_MEM(q)	(0xb9000 + (0x4 * (q)))

/*
 * EDMA QID2RID configuration
 *
 * TODO: Get port queue ids from dtsi
 */
#define EDMA_PORT_QUEUE_START		0
#define EDMA_PORT_QUEUE_END		3
#define EDMA_PORT_QUEUE_NUM		((EDMA_PORT_QUEUE_END) - (EDMA_PORT_QUEUE_START) + 1)
#define EDMA_PORT_QUEUE_PER_CORE	((EDMA_PORT_QUEUE_NUM)/(CONFIG_NR_CPUS))
#define EDMA_CPU_PORT_MC_QID_MIN	256
#define EDMA_CPU_PORT_MC_QID_MAX	271
#define EDMA_QID2RID_NUM_PER_REG	4
#define EDMA_RSS_HASH_MAX		256
#define EDMA_PORT_PROFILE_ID		0

#define EDMA_RX_RING_ID_QUEUE0_SHIFT	0
#define EDMA_RX_RING_ID_QUEUE0_MASK	EDMA_GENMASK(7, 0)
#define EDMA_RX_RING_ID_QUEUE0_GET(x)	(((x) & EDMA_RX_RING_ID_QUEUE0_MASK) >> EDMA_RX_RING_ID_QUEUE0_SHIFT)
#define EDMA_RX_RING_ID_QUEUE0_SET(x)	(((x) << EDMA_RX_RING_ID_QUEUE0_SHIFT) & EDMA_RX_RING_ID_QUEUE0_MASK)

#define EDMA_RX_RING_ID_QUEUE1_SHIFT	8
#define EDMA_RX_RING_ID_QUEUE1_MASK	EDMA_GENMASK(15, 8)
#define EDMA_RX_RING_ID_QUEUE1_GET(x)	(((x) & EDMA_RX_RING_ID_QUEUE1_MASK) >> EDMA_RX_RING_ID_QUEUE1_SHIFT)
#define EDMA_RX_RING_ID_QUEUE1_SET(x)	(((x) << EDMA_RX_RING_ID_QUEUE1_SHIFT) & EDMA_RX_RING_ID_QUEUE1_MASK)

#define EDMA_RX_RING_ID_QUEUE2_SHIFT	16
#define EDMA_RX_RING_ID_QUEUE2_MASK	EDMA_GENMASK(23, 16)
#define EDMA_RX_RING_ID_QUEUE2_GET(x)	(((x) & EDMA_RX_RING_ID_QUEUE2_MASK) >> EDMA_RX_RING_ID_QUEUE2_SHIFT)
#define EDMA_RX_RING_ID_QUEUE2_SET(x)	(((x) << EDMA_RX_RING_ID_QUEUE2_SHIFT) & EDMA_RX_RING_ID_QUEUE2_MASK)

#define EDMA_RX_RING_ID_QUEUE3_SHIFT	24
#define EDMA_RX_RING_ID_QUEUE3_MASK	EDMA_GENMASK(31, 24)
#define EDMA_RX_RING_ID_QUEUE3_GET(x)	(((x) & EDMA_RX_RING_ID_QUEUE3_MASK) >> EDMA_RX_RING_ID_QUEUE3_SHIFT)
#define EDMA_RX_RING_ID_QUEUE3_SET(x)	(((x) << EDMA_RX_RING_ID_QUEUE3_SHIFT) & EDMA_RX_RING_ID_QUEUE3_MASK)

/*
 * PPE Hash seed and mask for configuring RPS hash map table
 */
#define PPE_HASH_SEED_DEFAULT		0xabbcdefa
#define PPE_HASH_MASK			0xfff
#define PPE_HASH_MIX_V4_SIP		0x13
#define PPE_HASH_MIX_V4_DIP		0xb
#define PPE_HASH_MIX_V4_PROTO		0x13
#define PPE_HASH_MIX_V4_DPORT		0xb
#define PPE_HASH_MIX_V4_SPORT		0x13

#define PPE_HASH_FIN_INNER_OUTER_0	0x205
#define PPE_HASH_FIN_INNER_OUTER_1	0x264
#define PPE_HASH_FIN_INNER_OUTER_2	0x227
#define PPE_HASH_FIN_INNER_OUTER_3	0x245
#define PPE_HASH_FIN_INNER_OUTER_4	0x201

#define PPE_HASH_SIPV6_MIX_0		0x13
#define PPE_HASH_SIPV6_MIX_1		0xb
#define PPE_HASH_SIPV6_MIX_2		0x13
#define PPE_HASH_SIPV6_MIX_3		0xb
#define PPE_HASH_DIPV6_MIX_0		0x13
#define PPE_HASH_DIPV6_MIX_1		0xb
#define PPE_HASH_DIPV6_MIX_2		0x13
#define PPE_HASH_DIPV6_MIX_3		0xb

/*
 * EDMA_REG_PORT_CTRL register
 */
#define EDMA_PORT_PAD_EN			0x1
#define EDMA_PORT_EDMA_EN			0x2

/*
 * EDMA_REG_TXQ_CTRL register
 */
#define EDMA_TXDESC_PF_THRE_MASK		0xf
#define EDMA_TXDESC_PF_THRE_SHIFT		0
#define EDMA_TXCMPL_WB_THRE_MASK		0xf
#define EDMA_TXCMPL_WB_THRE_SHIFT		4
#define EDMA_TXDESC_PKT_SRAM_THRE_MASK		0xff
#define EDMA_TXDESC_PKT_SRAM_THRE_SHIFT		8
#define EDMA_TXCMPL_WB_TIMER_MASK		0xffff
#define EDMA_TXCMPL_WB_TIMER_SHIFT		16

/*
 * EDMA_REG_RXQ_CTRL register
 */
#define EDMA_RXFILL_PF_THRE_MASK		0xf
#define EDMA_RXFILL_PF_THRE_SHIFT		0
#define EDMA_RXDESC_WB_THRE_MASK		0xf
#define EDMA_RXDESC_WB_THRE_SHIFT		4
#define EDMA_RXDESC_WB_TIMER_MASK		0xffff
#define EDMA_RXDESC_WB_TIMER_SHIFT		16

/*
 * EDMA_REG_RX_TX_FULL_QID register
 */
#define EDMA_RX_DESC_FULL_QID_MASK		0xff
#define EDMA_RX_DESC_FULL_QID_SHIFT		0
#define EDMA_TX_CMPL_BUF_FULL_QID_MASK		0xff
#define EDMA_TX_CMPL_BUF_FULL_QID_SHIFT		8
#define EDMA_TX_SRAM_FULL_QID_MASK		0x1f
#define EDMA_TX_SRAM_FULL_QID_SHIFT		16

/*
 * EDMA_REG_RXQ_FC_THRE reister
 */
#define EDMA_RXFILL_FIFO_XOFF_THRE_MASK		0x1f
#define EDMA_RXFILL_FIFO_XOFF_THRE_SHIFT	0
#define EDMA_DESC_FIFO_XOFF_THRE_MASK		0x3f
#define EDMA_DESC_FIFO_XOFF_THRE_SHIFT		16

/*
 * EDMA_REG_DMAR_CTRL register
 */
#define EDMA_DMAR_REQ_PRI_MASK			0x7
#define EDMA_DMAR_REQ_PRI_SHIFT			0
#define EDMA_DMAR_BURST_LEN_MASK		0x1
#define EDMA_DMAR_BURST_LEN_SHIFT		3
#define EDMA_DMAR_TXDATA_OUTSTANDING_NUM_MASK	0x1f
#define EDMA_DMAR_TXDATA_OUTSTANDING_NUM_SHIFT	4
#define EDMA_DMAR_TXDESC_OUTSTANDING_NUM_MASK	0x7
#define EDMA_DMAR_TXDESC_OUTSTANDING_NUM_SHIFT	9
#define EDMA_DMAR_RXFILL_OUTSTANDING_NUM_MASK	0x7
#define EDMA_DMAR_RXFILL_OUTSTANDING_NUM_SHIFT	12

#define EDMA_DMAR_REQ_PRI_SET(x)		(((x) & EDMA_DMAR_REQ_PRI_MASK) \
						<< EDMA_DMAR_REQ_PRI_SHIFT)
#define EDMA_DMAR_TXDATA_OUTSTANDING_NUM_SET(x)	(((x) & EDMA_DMAR_TXDATA_OUTSTANDING_NUM_MASK) \
						<< EDMA_DMAR_TXDATA_OUTSTANDING_NUM_SHIFT)
#define EDMA_DMAR_TXDESC_OUTSTANDING_NUM_SET(x)	(((x) & EDMA_DMAR_TXDESC_OUTSTANDING_NUM_MASK) \
						<< EDMA_DMAR_TXDESC_OUTSTANDING_NUM_SHIFT)
#define EDMA_DMAR_RXFILL_OUTSTANDING_NUM_SET(x)	(((x) & EDMA_DMAR_RXFILL_OUTSTANDING_NUM_MASK) \
						<< EDMA_DMAR_RXFILL_OUTSTANDING_NUM_SHIFT)
#define EDMA_DMAR_BURST_LEN_SET(x)		(((x) & EDMA_DMAR_BURST_LEN_MASK) \
						<< EDMA_DMAR_BURST_LEN_SHIFT)

#define EDMA_BURST_LEN_ENABLE		0

/*
 * EDMA RXDESC base address mask
 */
#define EDMA_RXDESC_BA_MASK			0xffffffff

/*
 * EDMA RXDESC pre-header base address mask
 */
#define EDMA_RXDESC_PREHEADER_BA_MASK		0xffffffff

/*
 * EDMA_REG_AXIW_CTRL_REG
 */
#define EDMA_AXIW_MAX_WR_SIZE_EN		0x400

/*
 * EDMA DISABLE
 */
#define EDMA_DISABLE				0

/*
 * EDMA_REG_TXDESC_PROD_IDX register
 */
#define EDMA_TXDESC_PROD_IDX_MASK		0xffff

/*
 * EDMA_REG_TXDESC_CONS_IDX register
 */
#define EDMA_TXDESC_CONS_IDX_MASK		0xffff

/*
 * EDMA_REG_TXDESC_RING_SIZE register
 */
#define EDMA_TXDESC_RING_SIZE_MASK		0xffff

/*
 * EDMA_REG_TXDESC_CTRL register
 */
#define EDMA_TXDESC_TX_ENABLE			0x1

#define EDMA_TXDESC_CTRL_TXEN_SHIFT		0
#define EDMA_TXDESC_CTRL_TXEN_MASK		EDMA_GENMASK(0, 0)
#define EDMA_TXDESC_CTRL_TXEN_GET(x)		(((x) & EDMA_TXDESC_CTRL_TXEN_MASK) >> EDMA_TXDESC_CTRL_TXEN_SHIFT)
#define EDMA_TXDESC_CTRL_TXEN_SET(x)		(((x) << EDMA_TXDESC_CTRL_TXEN_SHIFT) & EDMA_TXDESC_CTRL_TXEN_MASK)

#define EDMA_TXDESC_CTRL_FC_GRP_ID_SHIFT	1
#define EDMA_TXDESC_CTRL_FC_GRP_ID_MASK		EDMA_GENMASK(3, 1)
#define EDMA_TXDESC_CTRL_FC_GRP_ID_GET(x)	(((x) & EDMA_TXDESC_CTRL_FC_GRP_ID_MASK) >> EDMA_TXDESC_CTRL_FC_GRP_ID_SHIFT)
#define EDMA_TXDESC_CTRL_FC_GRP_ID_SET(x)	(((x) << EDMA_TXDESC_CTRL_FC_GRP_ID_SHIFT) & EDMA_TXDESC_CTRL_FC_GRP_ID_MASK)

#define EDMA_TXDESC_CTRL_ARB_GRP_ID_SHIFT	4
#define EDMA_TXDESC_CTRL_ARB_GRP_ID_MASK	EDMA_GENMASK(5, 4)
#define EDMA_TXDESC_CTRL_ARB_GRP_ID_GET(x)	(((x) & EDMA_TXDESC_CTRL_ARB_GRP_ID_MASK) >> EDMA_TXDESC_CTRL_ARB_GRP_ID_SHIFT)
#define EDMA_TXDESC_CTRL_ARB_GRP_ID_SET(x)	(((x) << EDMA_TXDESC_CTRL_ARB_GRP_ID_SHIFT) & EDMA_TXDESC_CTRL_ARB_GRP_ID_MASK)

/*
 * EDMA_REG_TXCMPL_PROD_IDX register
 */
#define EDMA_TXCMPL_PROD_IDX_MASK		0xffff

/*
 * EDMA_REG_TXCMPL_CONS_IDX register
 */
#define EDMA_TXCMPL_CONS_IDX_MASK		0xffff

/*
 * EDMA_REG_TXCMPL_RING_SIZE register
 */
#define EDMA_TXCMPL_RING_SIZE_MASK		0xffff

/*
 * EDMA_REG_TXCMPL_UGT_THRE register
 */
#define EDMA_TXCMPL_LOW_THRE_MASK		0xffff
#define EDMA_TXCMPL_LOW_THRE_SHIFT		0
#define EDMA_TXCMPL_FC_THRE_MASK		0x3f
#define EDMA_TXCMPL_FC_THRE_SHIFT		16

/*
 * EDMA_REG_TXCMPL_CTRL register
 */
#define EDMA_TXCMPL_RET_MODE_BUFF_ADDR		0x0
#define EDMA_TXCMPL_RET_MODE_OPAQUE		0x1

/*
 * EDMA_REG_TX_MOD_TIMER register
 */
#define EDMA_TX_MOD_TIMER_INIT_MASK		0xffff
#define EDMA_TX_MOD_TIMER_INIT_SHIFT		0

/*
 * EDMA_REG_TX_INT_CTRL register
 */
#define EDMA_TX_INT_MASK			0x3

/*
 * EDMA_REG_RXFILL_PROD_IDX register
 */
#define EDMA_RXFILL_PROD_IDX_MASK		0xffff

/*
 * EDMA_REG_RXFILL_CONS_IDX register
 */
#define EDMA_RXFILL_CONS_IDX_MASK		0xffff

/*
 * EDMA_REG_RXFILL_RING_SIZE register
 */
#define EDMA_RXFILL_RING_SIZE_MASK		0xffff

/*
 * EDMA_REG_RXFILL_FC_THRE register
 */
#define EDMA_RXFILL_FC_XON_THRE_MASK		0x7ff
#define EDMA_RXFILL_FC_XON_THRE_SHIFT		12
#define EDMA_RXFILL_FC_XOFF_THRE_MASK		0x7ff
#define EDMA_RXFILL_FC_XOFF_THRE_SHIFT		0

/*
 * EDMA_REG_RXFILL_UGT_THRE register
 */
#define EDMA_RXFILL_LOW_THRE_MASK		0xffff
#define EDMA_RXFILL_LOW_THRE_SHIFT		0

/*
 * EDMA_REG_RXFILL_RING_EN register
 */
#define EDMA_RXFILL_RING_EN			0x1

/*
 * EDMA_REG_RXFILL_INT_MASK register
 */
#define EDMA_RXFILL_INT_MASK			0x1

/*
 * EDMA_REG_RXDESC_PROD_IDX register
 */
#define EDMA_RXDESC_PROD_IDX_MASK		0xffff

/*
 * EDMA_REG_RXDESC_CONS_IDX register
 */
#define EDMA_RXDESC_CONS_IDX_MASK		0xffff

/*
 * EDMA_REG_RXDESC_RING_SIZE register
 */
#define EDMA_RXDESC_RING_SIZE_MASK		0xffff
#define EDMA_RXDESC_PL_OFFSET_MASK		0x1ff
#define EDMA_RXDESC_PL_OFFSET_SHIFT		16
#define EDMA_RXDESC_PL_DEFAULT_VALUE		0

/*
 * EDMA_REG_RXDESC_FC_THRE register
 */
#define EDMA_RXDESC_FC_XON_THRE_MASK		0x7ff
#define EDMA_RXDESC_FC_XON_THRE_SHIFT		12
#define EDMA_RXDESC_FC_XOFF_THRE_MASK		0x7ff
#define EDMA_RXDESC_FC_XOFF_THRE_SHIFT		0

/*
 * EDMA_REG_RXDESC_UGT_THRE register
 */
#define EDMA_RXDESC_LOW_THRE_MASK		0xffff
#define EDMA_RXDESC_LOW_THRE_SHIFT		0

/*
 * EDMA_REG_RXDESC_CTRL register
 */
#define EDMA_RXDESC_STAG_REMOVE_EN		0x8
#define EDMA_RXDESC_CTAG_REMOVE_EN		0x4
#define EDMA_RXDESC_QDISC_EN			0x2
#define EDMA_RXDESC_RX_EN			0x1

/*
 * EDMA_REG_TX_INT_MASK register
 */
#define EDMA_TX_INT_MASK_PKT_INT		0x1
#define EDMA_TX_INT_MASK_UGT_INT		0x2

/*
 * EDMA_REG_RXDESC_INT_STAT register
 */
#define EDMA_RXDESC_INT_STAT_PKT_INT		0x1
#define EDMA_RXDESC_INT_STAT_UGT_INT		0x2

/*
 * EDMA_REG_RXDESC_INT_MASK register
 */
#define EDMA_RXDESC_INT_MASK_PKT_INT		0x1
#define EDMA_RXDESC_INT_MASK_TIMER_INT_DIS	0x2

#define EDMA_MASK_INT_DISABLE			0x0
#define EDMA_MASK_INT_CLEAR			0x0

/*
 * EDMA_REG_RX_MOD_TIMER register
 */
#define EDMA_RX_MOD_TIMER_INIT_MASK		0xffff
#define EDMA_RX_MOD_TIMER_INIT_SHIFT		0

/*
 * EDMA QID2RID register sizes
 */
#define EDMA_QID2RID_DEPTH			0x40
#define EDMA_QID2RID_QUEUES_PER_ENTRY		8

/*
 * TXDESC shift values
 */
#define EDMA_TXDESC_MORE_SHIFT			31
#define EDMA_TXDESC_TSO_EN_SHIFT		30
#define EDMA_TXDESC_PREHEADER_SHIFT		29
#define EDMA_TXDESC_POOL_ID_SHIFT		24
#define EDMA_TXDESC_POOL_ID_MASK		0x1f
#define EDMA_TXDESC_DATA_OFFSET_SHIFT		16
#define EDMA_TXDESC_DATA_OFFSET_MASK		0xff
#define EDMA_TXDESC_DATA_LENGTH_SHIFT		0
#define EDMA_TXDESC_DATA_LENGTH_MASK		0x1ffff

#define EDMA_RING_DMA_MASK			0xffffffff

/*
 * RXDESC shift values
 */
#define EDMA_RXDESC_RX_RXFILL_CNT_MASK		0x000f
#define EDMA_RXDESC_RX_RXFILL_CNT_SHIFT		16

#define EDMA_RXDESC_PKT_SIZE_MASK		0x3fff
#define EDMA_RXDESC_PKT_SIZE_SHIFT		0

#define EDMA_RXDESC_RXD_VALID_MASK		0x1
#define EDMA_RXDESC_RXD_VALID_SHIFT		31

#define EDMA_RXDESC_RING_INT_STATUS_MASK	0x3

#define EDMA_RING_DISABLE			0
#define EDMA_TXCMPL_RING_INT_STATUS_MASK	0x3
#define EDMA_TXCMPL_RETMODE_OPAQUE		0x0
#define EDMA_RXFILL_RING_INT_STATUS_MASK	0x1

/*
 * TODO tune the timer and threshold values
 */
#define EDMA_RXFILL_FIFO_XOFF_THRE		0x3
#define EDMA_RXFILL_PF_THRE			0x3
#define EDMA_RXDESC_WB_THRE			0x0
#define EDMA_RXDESC_WB_TIMER			0x2

#define EDMA_RXDESC_XON_THRE			50
#define EDMA_RXDESC_XOFF_THRE			30
#define EDMA_RXDESC_LOW_THRE			0
#define EDMA_RX_MOD_TIMER_INIT			1000
#define EDMA_RX_NE_INT_EN			0x2

#define EDMA_TXDESC_PF_THRE			0x3
#define EDMA_TXCMPL_WB_THRE			0X0
#define EDMA_TXDESC_PKT_SRAM_THRE		0x20
#define EDMA_TXCMPL_WB_TIMER			0x2

#define EDMA_TX_MOD_TIMER			150

#define EDMA_TX_INITIAL_PROD_IDX		0x0
#define EDMA_TX_NE_INT_EN			0x2

/*
 * EDMA misc error mask
 */
#define EDMA_MISC_AXI_RD_ERR_MASK		0x1
#define EDMA_MISC_AXI_WR_ERR_MASK		0x2
#define EDMA_MISC_RX_DESC_FIFO_FULL_MASK	0x4
#define EDMA_MISC_RX_ERR_BUF_SIZE_MASK		0x8
#define EDMA_MISC_TX_SRAM_FULL_MASK		0x10
#define EDMA_MISC_TX_CMPL_BUF_FULL_MASK		0x20

#define EDMA_MISC_DATA_LEN_ERR_MASK		0x40
#define EDMA_MISC_TX_TIMEOUT_MASK		0x80

/*
 * EDMA txdesc2cmpl map
 */
#define EDMA_TXDESC2CMPL_MAP_TXDESC_MASK	0x1F

/*
 * EDMA rxdesc2fill map
 */
#define EDMA_RXDESC2FILL_MAP_RXDESC_MASK	0x7

#endif	/* __EDMA_REGS__ */
