aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/memory/tegra30-mc.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/drivers/memory/tegra30-mc.c b/drivers/memory/tegra30-mc.c
index c9821258117..ec9fc789480 100644
--- a/drivers/memory/tegra30-mc.c
+++ b/drivers/memory/tegra30-mc.c
@@ -91,18 +91,18 @@ struct tegra30_mc {
static inline u32 mc_readl(struct tegra30_mc *mc, u32 offs)
{
+ u32 val = 0;
+
if (offs < 0x10)
- return readl(mc->regs[0] + offs);
- BUG_ON(offs < 0x3c);
+ val = readl(mc->regs[0] + offs);
if (offs < 0x1f0)
- return readl(mc->regs[1] + offs - 0x3c);
- BUG_ON(offs < 0x200);
+ val = readl(mc->regs[1] + offs - 0x3c);
if (offs < 0x228)
- return readl(mc->regs[2] + offs - 0x200);
- BUG_ON(offs < 0x284);
+ val = readl(mc->regs[2] + offs - 0x200);
if (offs < 0x400)
- return readl(mc->regs[3] + offs - 0x284);
- BUG();
+ val = readl(mc->regs[3] + offs - 0x284);
+
+ return val;
}
static inline void mc_writel(struct tegra30_mc *mc, u32 val, u32 offs)
@@ -111,22 +111,18 @@ static inline void mc_writel(struct tegra30_mc *mc, u32 val, u32 offs)
writel(val, mc->regs[0] + offs);
return;
}
- BUG_ON(offs < 0x3c);
if (offs < 0x1f0) {
writel(val, mc->regs[1] + offs - 0x3c);
return;
}
- BUG_ON(offs < 0x200);
if (offs < 0x228) {
writel(val, mc->regs[2] + offs - 0x200);
return;
}
- BUG_ON(offs < 0x284);
if (offs < 0x400) {
writel(val, mc->regs[3] + offs - 0x284);
return;
}
- BUG();
}
static const char * const tegra30_mc_client[] = {