dbdma_cmd
#define DBDMA_ALIGN(x) (((unsigned long)(x) + sizeof(struct dbdma_cmd) - 1) \
& -sizeof(struct dbdma_cmd))
struct dbdma_cmd * dma_table_cpu;
struct dbdma_cmd *table;
table = (struct dbdma_cmd *) priv->dma_table_cpu;
memset(table, 0, sizeof(struct dbdma_cmd));
(MAX_DCMDS + 2) * sizeof(struct dbdma_cmd),
fs->dma_cmd = (struct dbdma_cmd *) DBDMA_ALIGN(fs->dbdma_cmd_space);
memset(fs->dma_cmd, 0, 2 * sizeof(struct dbdma_cmd));
struct dbdma_cmd *dma_cmd;
char dbdma_cmd_space[5 * sizeof(struct dbdma_cmd)];
static inline void init_dma(struct dbdma_cmd *cp, int cmd,
struct dbdma_cmd *cp = fs->dma_cmd;
struct dbdma_cmd *cp;
struct dbdma_cmd *cmd = db->cmd;
memset(cmd, 0, 4 * sizeof(struct dbdma_cmd));
struct dbdma_cmd cmd[4] ____cacheline_aligned;
bp->tx_cmds = (volatile struct dbdma_cmd *) DBDMA_ALIGN(bp + 1);
+ (N_RX_RING + N_TX_RING + 4) * sizeof(struct dbdma_cmd) \
volatile struct dbdma_cmd *cp;
static void dump_dbdma(volatile struct dbdma_cmd *cp,int count)
dbdma_setcmd(volatile struct dbdma_cmd *cp,
bmac_construct_xmt(struct sk_buff *skb, volatile struct dbdma_cmd *cp)
bmac_construct_rxbuff(struct sk_buff *skb, volatile struct dbdma_cmd *cp)
memset((char *)bp->tx_cmds, 0, (N_TX_RING+1) * sizeof(struct dbdma_cmd));
(N_RX_RING + 1) * sizeof(struct dbdma_cmd));
volatile struct dbdma_cmd *tx_cmds; /* xmit dma command list */
volatile struct dbdma_cmd *rx_cmds; /* recv dma command list */
volatile struct dbdma_cmd *cp;
volatile struct dbdma_cmd *cp;
mp->tx_cmds = (volatile struct dbdma_cmd *) DBDMA_ALIGN(mp + 1);
(NCMDS_TX*N_TX_RING + N_RX_RING + 2) * sizeof(struct dbdma_cmd));
volatile struct dbdma_cmd *cp;
memset((char *)mp->rx_cmds, 0, N_RX_RING * sizeof(struct dbdma_cmd));
volatile struct dbdma_cmd *tx_cmds; /* xmit dma command list */
volatile struct dbdma_cmd *rx_cmds; /* recv dma command list */
volatile struct dbdma_cmd *cp, *np;
volatile struct dbdma_cmd *cp;
+ (N_RX_RING + NCMDS_TX * N_TX_RING + 3) * sizeof(struct dbdma_cmd))
volatile struct dbdma_cmd *cp;
volatile struct dbdma_cmd *cp, *np;
entry, yp->rx_ring[entry].dbdma_cmd, yp->rx_ring[entry].addr,
data_size = (le32_to_cpu(desc->dbdma_cmd) -
yp->rx_ring[entry].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->rx_ring[entry - 1].dbdma_cmd =
yp->rx_ring[RX_RING_SIZE - 1].dbdma_cmd =
i, yp->tx_ring[i].dbdma_cmd, yp->tx_ring[i].addr,
i, yp->rx_ring[i].dbdma_cmd, yp->rx_ring[i].addr,
yp->rx_ring[i].dbdma_cmd = cpu_to_le32(CMD_STOP);
__le32 dbdma_cmd;
yp->rx_ring[i].dbdma_cmd =
yp->rx_ring[i-1].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->tx_ring[i].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->tx_ring[--i].dbdma_cmd = cpu_to_le32(CMD_STOP | BRANCH_ALWAYS);
yp->tx_ring[j].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->tx_ring[j].dbdma_cmd =
yp->tx_ring[j].dbdma_cmd =
yp->tx_ring[++j].dbdma_cmd |= cpu_to_le32(BRANCH_ALWAYS | INTR_ALWAYS);
yp->tx_ring[0].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->tx_ring[TX_RING_SIZE-1].dbdma_cmd =
yp->tx_ring[entry+1].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->tx_ring[entry].dbdma_cmd =
yp->tx_ring[next_entry<<1].dbdma_cmd = cpu_to_le32(CMD_STOP);
yp->tx_ring[entry<<1].dbdma_cmd =
struct dbdma_cmd *dcmds;
dma_cmd_space = kmalloc_objs(struct dbdma_cmd,
state->dma_cmds = (struct dbdma_cmd *)DBDMA_ALIGN(dma_cmd_space);
* sizeof(struct dbdma_cmd));
struct dbdma_cmd *dma_cmds; /* space for dbdma commands, aligned */
struct dbdma_cmd *dcmds;
struct dbdma_cmd *dma_cmds; /* space for dbdma commands, aligned */
ms->dma_cmd_size = (mesh_host->sg_tablesize + 2) * sizeof(struct dbdma_cmd);
ms->dma_cmds = (struct dbdma_cmd *) DBDMA_ALIGN(dma_cmd_space);
r->size = (numcmds + 3) * sizeof(struct dbdma_cmd);
struct dbdma_cmd *cmds;
struct dbdma_cmd *command;
memset(command, 0, (nperiods + 2) * sizeof(struct dbdma_cmd));
(nperiods + 1) * sizeof(struct dbdma_cmd);
volatile struct dbdma_cmd __iomem *cp;
volatile struct dbdma_cmd __iomem *cp;
volatile struct dbdma_cmd __iomem *cp = &rec->cmd.cmds[rec->cur_period];
volatile struct dbdma_cmd __iomem *cp)
sizeof(struct dbdma_cmd));
+ sizeof(struct dbdma_cmd)*((rec->cur_period+1)%rec->nperiods));
volatile struct dbdma_cmd __iomem *cp;
unsigned int rsize = sizeof(struct dbdma_cmd) * (size + 1);
unsigned int rsize = sizeof(struct dbdma_cmd) * (rec->size + 1);
struct dbdma_cmd __iomem *cmds;