Lines Matching +full:bd +full:- +full:address

1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (C) 2004-2013 Synopsys, Inc. (www.synopsys.com)
12 #include <linux/dma-mapping.h>
27 #define TXPL_MASK (1 << 31) /* Force polling of BD by EMAC */
34 #define ENFL_MASK (1 << 10) /* Enable Full-duplex */
38 #define OWN_MASK (1 << 31) /* 0-CPU or 1-EMAC owns buffer */
77 * struct arc_emac_bd - EMAC buffer descriptor (BD).
80 * @data: 32-bit byte addressable pointer to the packet data.
87 /* Number of Rx/Tx BD's */
95 * struct buffer_state - Stores Rx/Tx buffer state.
97 * @addr: Start address of DMA-mapped memory region.
98 * @len: Length of DMA-mapped memory region.
112 * struct arc_emac_priv - Storage of EMAC's private information.
116 * @regs: Base address of EMAC memory-mapped control registers.
118 * @rxbd: Pointer to Rx BD ring.
119 * @txbd: Pointer to Tx BD ring.
120 * @rxbd_dma: DMA handle for Rx BD ring.
121 * @txbd_dma: DMA handle for Tx BD ring.
124 * @txbd_curr: Index of Tx BD to use on the next "ndo_start_xmit".
125 * @txbd_dirty: Index of Tx BD to free on the next Tx interrupt.
126 * @last_rx_bd: Index of the last Rx BD we've got from EMAC.
166 * arc_reg_set - Sets EMAC register with provided value.
168 * @reg: Register offset from base address.
173 iowrite32(value, priv->regs + reg * sizeof(int)); in arc_reg_set()
177 * arc_reg_get - Gets value of specified EMAC register.
179 * @reg: Register offset from base address.
185 return ioread32(priv->regs + reg * sizeof(int)); in arc_reg_get()
189 * arc_reg_or - Applies mask to specified EMAC register - ("reg" | "mask").
191 * @reg: Register offset from base address.
205 * arc_reg_clr - Applies mask to specified EMAC register - ("reg" & ~"mask").
207 * @reg: Register offset from base address.