diff options
author | Axel Lin <axel.lin@gmail.com> | 2012-09-19 21:32:53 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-09-26 17:04:09 -0400 |
commit | e0f21e6d52cc245e7d4f7e02ca4b7b6571660ec2 (patch) | |
tree | fd4744e4d93c0530730c0ed07c3782483ee16c36 | |
parent | 0a18b05043acc01d1d6a4bac459e62c79628881c (diff) |
memory: tegra{20,30}-mc: Fix reading incorrect register in mc_readl()
The code reading the register does not match the code writing to the register,
fix it.
Also fix the coding style in mc_writel() for better readability.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/memory/tegra20-mc.c | 10 | ||||
-rw-r--r-- | drivers/memory/tegra30-mc.c | 22 |
2 files changed, 10 insertions, 22 deletions
diff --git a/drivers/memory/tegra20-mc.c b/drivers/memory/tegra20-mc.c index 3ed49c1c2b9..e6764bb41cb 100644 --- a/drivers/memory/tegra20-mc.c +++ b/drivers/memory/tegra20-mc.c | |||
@@ -57,7 +57,7 @@ static inline u32 mc_readl(struct tegra20_mc *mc, u32 offs) | |||
57 | 57 | ||
58 | if (offs < 0x24) | 58 | if (offs < 0x24) |
59 | val = readl(mc->regs[0] + offs); | 59 | val = readl(mc->regs[0] + offs); |
60 | if (offs < 0x400) | 60 | else if (offs < 0x400) |
61 | val = readl(mc->regs[1] + offs - 0x3c); | 61 | val = readl(mc->regs[1] + offs - 0x3c); |
62 | 62 | ||
63 | return val; | 63 | return val; |
@@ -65,14 +65,10 @@ static inline u32 mc_readl(struct tegra20_mc *mc, u32 offs) | |||
65 | 65 | ||
66 | static inline void mc_writel(struct tegra20_mc *mc, u32 val, u32 offs) | 66 | static inline void mc_writel(struct tegra20_mc *mc, u32 val, u32 offs) |
67 | { | 67 | { |
68 | if (offs < 0x24) { | 68 | if (offs < 0x24) |
69 | writel(val, mc->regs[0] + offs); | 69 | writel(val, mc->regs[0] + offs); |
70 | return; | 70 | else if (offs < 0x400) |
71 | } | ||
72 | if (offs < 0x400) { | ||
73 | writel(val, mc->regs[1] + offs - 0x3c); | 71 | writel(val, mc->regs[1] + offs - 0x3c); |
74 | return; | ||
75 | } | ||
76 | } | 72 | } |
77 | 73 | ||
78 | static const char * const tegra20_mc_client[] = { | 74 | static const char * const tegra20_mc_client[] = { |
diff --git a/drivers/memory/tegra30-mc.c b/drivers/memory/tegra30-mc.c index e56ff04eb5c..802b9ea431f 100644 --- a/drivers/memory/tegra30-mc.c +++ b/drivers/memory/tegra30-mc.c | |||
@@ -95,11 +95,11 @@ static inline u32 mc_readl(struct tegra30_mc *mc, u32 offs) | |||
95 | 95 | ||
96 | if (offs < 0x10) | 96 | if (offs < 0x10) |
97 | val = readl(mc->regs[0] + offs); | 97 | val = readl(mc->regs[0] + offs); |
98 | if (offs < 0x1f0) | 98 | else if (offs < 0x1f0) |
99 | val = readl(mc->regs[1] + offs - 0x3c); | 99 | val = readl(mc->regs[1] + offs - 0x3c); |
100 | if (offs < 0x228) | 100 | else if (offs < 0x228) |
101 | val = readl(mc->regs[2] + offs - 0x200); | 101 | val = readl(mc->regs[2] + offs - 0x200); |
102 | if (offs < 0x400) | 102 | else if (offs < 0x400) |
103 | val = readl(mc->regs[3] + offs - 0x284); | 103 | val = readl(mc->regs[3] + offs - 0x284); |
104 | 104 | ||
105 | return val; | 105 | return val; |
@@ -107,22 +107,14 @@ static inline u32 mc_readl(struct tegra30_mc *mc, u32 offs) | |||
107 | 107 | ||
108 | static inline void mc_writel(struct tegra30_mc *mc, u32 val, u32 offs) | 108 | static inline void mc_writel(struct tegra30_mc *mc, u32 val, u32 offs) |
109 | { | 109 | { |
110 | if (offs < 0x10) { | 110 | if (offs < 0x10) |
111 | writel(val, mc->regs[0] + offs); | 111 | writel(val, mc->regs[0] + offs); |
112 | return; | 112 | else if (offs < 0x1f0) |
113 | } | ||
114 | if (offs < 0x1f0) { | ||
115 | writel(val, mc->regs[1] + offs - 0x3c); | 113 | writel(val, mc->regs[1] + offs - 0x3c); |
116 | return; | 114 | else if (offs < 0x228) |
117 | } | ||
118 | if (offs < 0x228) { | ||
119 | writel(val, mc->regs[2] + offs - 0x200); | 115 | writel(val, mc->regs[2] + offs - 0x200); |
120 | return; | 116 | else if (offs < 0x400) |
121 | } | ||
122 | if (offs < 0x400) { | ||
123 | writel(val, mc->regs[3] + offs - 0x284); | 117 | writel(val, mc->regs[3] + offs - 0x284); |
124 | return; | ||
125 | } | ||
126 | } | 118 | } |
127 | 119 | ||
128 | static const char * const tegra30_mc_client[] = { | 120 | static const char * const tegra30_mc_client[] = { |