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