]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-omap2/sdrc.h
Add mcbsp_clks used by other clocks to the clock list.
[linux-2.6-omap-h63xx.git] / arch / arm / mach-omap2 / sdrc.h
index e105997e46b7ee575540008995b51f41a0377c08..dfc86f1146e0b7f9f0d063325c11236a75426858 100644 (file)
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
+#undef DEBUG
 
 #include <linux/kernel.h>
-#include <asm/arch/io.h>
+#include <asm/arch/sdrc.h>
 
+extern unsigned long omap2_sdrc_base;
+extern unsigned long omap2_sms_base;
 
-#define OMAP_SDRC_REGADDR(reg) (void __iomem *)IO_ADDRESS(OMAP2_SDRC_BASE + reg)
-
-/* SDRC register offsets - read/write with sdrc_{read,write}_reg() */
-
-#define SDRC_SYSCONFIG         0x010
-#define SDRC_DLLA_CTRL         0x060
-#define SDRC_DLLA_STATUS       0x064
-#define SDRC_DLLB_CTRL         0x068
-#define SDRC_DLLB_STATUS       0x06C
-#define SDRC_POWER             0x070
-#define SDRC_MR_0              0x084
+#define OMAP_SDRC_REGADDR(reg) (void __iomem *)IO_ADDRESS(omap2_sdrc_base + reg)
+#define OMAP_SMS_REGADDR(reg)  (void __iomem *)IO_ADDRESS(omap2_sms_base + reg)
 
 
 /* SDRC global register get/set */
@@ -46,4 +40,21 @@ static u32 __attribute__((unused)) sdrc_read_reg(u16 reg)
        return __raw_readl(OMAP_SDRC_REGADDR(reg));
 }
 
+/* SMS global register get/set */
+
+static void __attribute__((unused)) sms_write_reg(u32 val, u16 reg)
+{
+       pr_debug("sms_write_reg: writing 0x%0x to 0x%0x\n", val,
+                (u32)OMAP_SMS_REGADDR(reg));
+
+       __raw_writel(val, OMAP_SMS_REGADDR(reg));
+}
+
+static u32 __attribute__((unused)) sms_read_reg(u16 reg)
+{
+       return __raw_readl(OMAP_SMS_REGADDR(reg));
+}
+
+
+
 #endif