On Mon, Jan 26, 2015 at 8:54 PM, <sonic....@gmail.com> wrote: > > From: Sonic Zhang <sonic.zh...@analog.com> > > Board can define its own AXI burst length to improve DWMAC DMA performance. > > Signed-off-by: Sonic Zhang <sonic.zh...@analog.com> > --- > > drivers/net/designware.c | 2 ++ > drivers/net/designware.h | 5 +++++ > 2 files changed, 7 insertions(+) > > diff --git a/drivers/net/designware.c b/drivers/net/designware.c > index 9ded895..d8d6792 100644 > --- a/drivers/net/designware.c > +++ b/drivers/net/designware.c > @@ -256,6 +256,8 @@ static int dw_eth_init(struct eth_device *dev, bd_t *bis) > > writel(readl(&dma_p->opmode) | RXSTART | TXSTART, &dma_p->opmode); > This should probably include: +#if CONFIG_DW_AXI_BURST_LEN so that this register is only accessed if configured. > + writel((CONFIG_DW_AXI_BURST_LEN & 0x1FF >> 1), &dma_p->axibus); > + > /* Start up the PHY */ > if (phy_startup(priv->phydev)) { > printf("Could not initialize PHY %s\n", > diff --git a/drivers/net/designware.h b/drivers/net/designware.h > index ce51102..d8bd84d 100644 > --- a/drivers/net/designware.h > +++ b/drivers/net/designware.h > @@ -102,6 +102,11 @@ struct eth_dma_regs { > #define TXSECONDFRAME (1 << 2) > #define RXSTART (1 << 1) > > +/* Default AXI BUS Burst length */ > +#ifndef CONFIG_DW_AXI_BURST_LEN > +#define CONFIG_DW_AXI_BURST_LEN 0 > +#endif > + > /* Descriptior related definitions */ > #define MAC_MAX_FRAME_SZ (1600) > > -- > 1.7.9.5 >
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot