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)
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[] = {