SmartReflex: fix sparse issues
authorPaul Walmsley <paul@pwsan.com>
Fri, 18 Jul 2008 02:52:41 +0000 (20:52 -0600)
committerTony Lindgren <tony@atomide.com>
Tue, 5 Aug 2008 11:49:42 +0000 (14:49 +0300)
Fix sparse issues with smartreflex.c.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/smartreflex.c
arch/arm/mach-omap2/smartreflex.h

index 0f3a659..f460831 100644 (file)
@@ -60,9 +60,11 @@ struct sr_custom_clk {
        struct omap_sr  *sr;
 };
 
+#define SR_REGADDR(offs)     (__force void __iomem *)(sr->srbase_addr + offset)
+
 static inline void sr_write_reg(struct omap_sr *sr, int offset, u32 value)
 {
-       __raw_writel(value, sr->srbase_addr + offset);
+       __raw_writel(value, SR_REGADDR(offset));
 }
 
 static inline void sr_modify_reg(struct omap_sr *sr, int offset, u32 mask,
@@ -70,16 +72,16 @@ static inline void sr_modify_reg(struct omap_sr *sr, int offset, u32 mask,
 {
        u32 reg_val;
 
-       reg_val = __raw_readl(sr->srbase_addr + offset);
+       reg_val = __raw_readl(SR_REGADDR(offset));
        reg_val &= ~mask;
        reg_val |= value;
 
-       __raw_writel(reg_val, sr->srbase_addr + offset);
+       __raw_writel(reg_val, SR_REGADDR(offset));
 }
 
 static inline u32 sr_read_reg(struct omap_sr *sr, int offset)
 {
-       return __raw_readl(sr->srbase_addr + offset);
+       return __raw_readl(SR_REGADDR(offset));
 }
 
 /* Custom clock handling functions */
index 9b9904d..be6e6b9 100644 (file)
@@ -248,6 +248,9 @@ extern u32 current_vdd2_opp;
 #ifdef CONFIG_OMAP_SMARTREFLEX
 void enable_smartreflex(int srid);
 void disable_smartreflex(int srid);
+int sr_voltagescale_vcbypass(u32 target_opp, u8 vsel);
+void sr_start_vddautocomap(int srid, u32 target_opp_no);
+int sr_stop_vddautocomap(int srid);
 #else
 static inline void enable_smartreflex(int srid) {}
 static inline void disable_smartreflex(int srid) {}