diff options
Diffstat (limited to 'drivers/net/ethernet/cadence/macb.h')
-rw-r--r-- | drivers/net/ethernet/cadence/macb.h | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/drivers/net/ethernet/cadence/macb.h b/drivers/net/ethernet/cadence/macb.h index 6cfff0b04d05..c003e9824025 100644 --- a/drivers/net/ethernet/cadence/macb.h +++ b/drivers/net/ethernet/cadence/macb.h @@ -422,19 +422,27 @@ << GEM_##name##_OFFSET)) \ | GEM_BF(name, value)) +#ifdef CONFIG_AVR32 +#define cdneth_readl __raw_readl +#define cdneth_writel __raw_writel +#else +#define cdneth_readl readl_relaxed +#define cdneth_writel writel_relaxed +#endif + /* Register access macros */ #define macb_readl(port,reg) \ - readl_relaxed((port)->regs + MACB_##reg) + cdneth_readl((port)->regs + MACB_##reg) #define macb_writel(port,reg,value) \ - writel_relaxed((value), (port)->regs + MACB_##reg) + cdneth_writel((value), (port)->regs + MACB_##reg) #define gem_readl(port, reg) \ - readl_relaxed((port)->regs + GEM_##reg) + cdneth_readl((port)->regs + GEM_##reg) #define gem_writel(port, reg, value) \ - writel_relaxed((value), (port)->regs + GEM_##reg) + cdneth_writel((value), (port)->regs + GEM_##reg) #define queue_readl(queue, reg) \ - readl_relaxed((queue)->bp->regs + (queue)->reg) + cdneth_readl((queue)->bp->regs + (queue)->reg) #define queue_writel(queue, reg, value) \ - writel_relaxed((value), (queue)->bp->regs + (queue)->reg) + cdneth_writel((value), (queue)->bp->regs + (queue)->reg) /* Conditional GEM/MACB macros. These perform the operation to the correct * register dependent on whether the device is a GEM or a MACB. For registers |